17 inline namespace _V1 {
19 namespace detail::half_impl {
25 #define __SYCL_MAKE_VECTOR_ALIAS(ALIAS, TYPE, N) \
26 using ALIAS##N = sycl::vec<TYPE, N>;
28 #define __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(ALIAS, TYPE, N, MESSAGE) \
29 using ALIAS##N __SYCL2020_DEPRECATED(MESSAGE) = sycl::vec<TYPE, N>;
31 #define __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES(N) \
32 __SYCL_MAKE_VECTOR_ALIAS(char, char, N) \
33 __SYCL_MAKE_VECTOR_ALIAS(short, short, N) \
34 __SYCL_MAKE_VECTOR_ALIAS(int, int, N) \
35 __SYCL_MAKE_VECTOR_ALIAS(long, long, N) \
36 __SYCL_MAKE_VECTOR_ALIAS(float, float, N) \
37 __SYCL_MAKE_VECTOR_ALIAS(double, double, N) \
38 __SYCL_MAKE_VECTOR_ALIAS(half, half, N)
41 #define __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES(N) \
42 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_char, sycl::cl_char, N, "") \
43 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_uchar, sycl::cl_uchar, N, "") \
44 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_short, sycl::cl_short, N, "") \
45 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_ushort, sycl::cl_ushort, N, "") \
46 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_int, sycl::cl_int, N, "") \
47 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_uint, sycl::cl_uint, N, "") \
48 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_long, sycl::cl_long, N, "") \
49 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_ulong, sycl::cl_ulong, N, "") \
50 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_float, sycl::cl_float, N, "") \
51 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_double, sycl::cl_double, N, "") \
52 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(cl_half, sycl::cl_half, N, "")
54 #define __SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES(N) \
55 __SYCL_MAKE_VECTOR_ALIAS(schar, signed char, N) \
56 __SYCL_MAKE_VECTOR_ALIAS(uchar, unsigned char, N) \
57 __SYCL_MAKE_VECTOR_ALIAS(ushort, unsigned short, N) \
58 __SYCL_MAKE_VECTOR_ALIAS(uint, unsigned int, N) \
59 __SYCL_MAKE_VECTOR_ALIAS(ulong, unsigned long, N) \
60 __SYCL_MAKE_VECTOR_ALIAS(longlong, long long, N) \
61 __SYCL_MAKE_VECTOR_ALIAS(ulonglong, unsigned long long, N)
63 #define __SYCL_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH(N) \
64 __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES(N) \
65 __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES(N) \
66 __SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES(N)
74 #define __SYCL_2020_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH(N) \
75 __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES(N) \
76 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(schar, std::int8_t, N, "") \
77 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(longlong, std::int64_t, N, "") \
78 __SYCL_2020_MAKE_DEPRECATED_VECTOR_ALIAS(ulonglong, std::uint64_t, N, "") \
79 __SYCL_MAKE_VECTOR_ALIAS(char, std::int8_t, N) \
80 __SYCL_MAKE_VECTOR_ALIAS(uchar, std::uint8_t, N) \
81 __SYCL_MAKE_VECTOR_ALIAS(short, std::int16_t, N) \
82 __SYCL_MAKE_VECTOR_ALIAS(ushort, std::uint16_t, N) \
83 __SYCL_MAKE_VECTOR_ALIAS(int, std::int32_t, N) \
84 __SYCL_MAKE_VECTOR_ALIAS(uint, std::uint32_t, N) \
85 __SYCL_MAKE_VECTOR_ALIAS(long, std::int64_t, N) \
86 __SYCL_MAKE_VECTOR_ALIAS(ulong, std::uint64_t, N) \
87 __SYCL_MAKE_VECTOR_ALIAS(float, float, N) \
88 __SYCL_MAKE_VECTOR_ALIAS(double, double, N) \
89 __SYCL_MAKE_VECTOR_ALIAS(half, half, N)
92 inline namespace _V1 {
144 #if SYCL_LANGUAGE_VERSION >= 202001
160 #undef __SYCL_MAKE_VECTOR_ALIAS
161 #undef __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES
162 #undef __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES
163 #undef __SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES
164 #undef __SYCL_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH
165 #undef __SYCL_2020_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH
#define __SYCL_2020_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH(N)
#define __SYCL_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH(N)
conditional< sizeof(long)==8, long, long long >::type int64_t
signed char __SYCL2020_DEPRECATED
sycl::detail::half_impl::half half