Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
typeAliasVec.hpp
Go to the documentation of this file.
1// -------------------------------------------------------//
2//
3// SHAMROCK code for hydrodynamics
4// Copyright (c) 2021-2026 Timothée David--Cléris <tim.shamrock@proton.me>
5// SPDX-License-Identifier: CeCILL Free Software License Agreement v2.1
6// Shamrock is licensed under the CeCILL 2.1 License, see LICENSE for more information
7//
8// -------------------------------------------------------//
9
10#pragma once
11
19#include "typeAliasBase.hpp"
20#include "typeAliasFp16.hpp"
21
22#define TYPEDEFS_TYPES(...) \
23 using i64_##__VA_ARGS__ = sycl::vec<i64, __VA_ARGS__>; \
24 using i32_##__VA_ARGS__ = sycl::vec<i32, __VA_ARGS__>; \
25 using i16_##__VA_ARGS__ = sycl::vec<i16, __VA_ARGS__>; \
26 using i8_##__VA_ARGS__ = sycl::vec<i8, __VA_ARGS__>; \
27 using u64_##__VA_ARGS__ = sycl::vec<u64, __VA_ARGS__>; \
28 using u32_##__VA_ARGS__ = sycl::vec<u32, __VA_ARGS__>; \
29 using u16_##__VA_ARGS__ = sycl::vec<u16, __VA_ARGS__>; \
30 using u8_##__VA_ARGS__ = sycl::vec<u8, __VA_ARGS__>; \
31 using f16_##__VA_ARGS__ = sycl::vec<f16, __VA_ARGS__>; \
32 using f32_##__VA_ARGS__ = sycl::vec<f32, __VA_ARGS__>; \
33 using f64_##__VA_ARGS__ = sycl::vec<f64, __VA_ARGS__>;
34
35TYPEDEFS_TYPES(2)
36TYPEDEFS_TYPES(3)
37TYPEDEFS_TYPES(4)
38TYPEDEFS_TYPES(8)
39TYPEDEFS_TYPES(16)
40
41#undef TYPEDEFS_TYPES