Alignment type tags and related APIs for use with ESIMD memory access operations.
More...
Alignment type tags and related APIs for use with ESIMD memory access operations.
The basic restrictions for memory location specified as parameters for memory access APIs supporting alignment control are as follows:
- If alignment control parameter is
element_aligned_tag
, then the location must be aligned by alignof(T)
, where T
is element type.
- If it is
vector_aligned_tag
, the location must be aligned by alignof(VT)
, where VT
is the raw vector type of the accessed simd_obj_impl
derivative class object.
- If it is
overaligned_tag<N>
, the location must be aligned by N
.
Program not meeting alignment requirements results in undefined behavior.
◆ element_aligned
◆ is_simd_flag_type_v
template<typename T >
constexpr bool sycl::_V1::ext::intel::esimd::is_simd_flag_type_v = is_simd_flag_type<T>::value |
|
inlinestaticconstexpr |
Checks if given type is a simd load/store flag.
- Template Parameters
-
Definition at line 95 of file simd_obj_impl.hpp.
◆ overaligned
template<unsigned N>
constexpr overaligned_tag<N> sycl::_V1::ext::intel::esimd::overaligned = {} |
|
inlineconstexpr |
◆ vector_aligned