comparison src/impl/x86/avx512f.c @ 35:99e4539f922f

Backed out changeset e49e70f7012f
author Paper <paper@tflc.us>
date Fri, 25 Apr 2025 17:40:51 -0400
parents bf6ad516f1e6
children
comparison
equal deleted inserted replaced
34:8b5e0974fd41 35:99e4539f922f
223 #define VEC_AVX512F_DEFINE_OPERATIONS_SIGN(sign, bits, size) \ 223 #define VEC_AVX512F_DEFINE_OPERATIONS_SIGN(sign, bits, size) \
224 union v##sign##int##bits##x##size##_impl_data { \ 224 union v##sign##int##bits##x##size##_impl_data { \
225 v##sign##int##bits##x##size vec; \ 225 v##sign##int##bits##x##size vec; \
226 __m512i avx512f; \ 226 __m512i avx512f; \
227 }; \ 227 }; \
228 \
229 VEC_STATIC_ASSERT(VEC_ALIGNOF(__m512i) <= VEC_ALIGNOF(v##sign##int##bits##x##size), "vec: v" #sign "int" #bits "x" #size " alignment needs to be expanded to fit intrinsic type size"); \
230 VEC_STATIC_ASSERT(sizeof(__m512i) <= sizeof(v##sign##int##bits##x##size), "vec: v" #sign "int" #bits "x" #size " needs to be expanded to fit intrinsic type size"); \
231 \ 228 \
232 static v##sign##int##bits##x##size v##sign##int##bits##x##size##_avx512f_load_aligned(const vec_##sign##int##bits in[size]) \ 229 static v##sign##int##bits##x##size v##sign##int##bits##x##size##_avx512f_load_aligned(const vec_##sign##int##bits in[size]) \
233 { \ 230 { \
234 union v##sign##int##bits##x##size##_impl_data vec; \ 231 union v##sign##int##bits##x##size##_impl_data vec; \
235 vec.avx512f = _mm512_load_si512((const __m512i *)in); \ 232 vec.avx512f = _mm512_load_si512((const __m512i *)in); \