12#error "Never use <avx512bmmintrin.h> directly; include <immintrin.h> instead."
15#ifndef _AVX512BMMINTRIN_H
16#define _AVX512BMMINTRIN_H
19#define __DEFAULT_FN_ATTRS \
20 __attribute__((__always_inline__, __nodebug__, __target__("avx512bmm"), \
21 __min_vector_width__(512)))
23#if defined(__cplusplus) && (__cplusplus >= 201103L)
24#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
26#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
62 return (__m512i)__builtin_ia32_bmacor16x16x16_v32hi(
63 (__v32hi)__A, (__v32hi)__B, (__v32hi)__C);
99 return (__m512i)__builtin_ia32_bmacxor16x16x16_v32hi(
100 (__v32hi)__A, (__v32hi)__B, (__v32hi)__C);
119 return (__m512i)__builtin_elementwise_bitreverse((__v64qi)__A);
143 return (__m512i)__builtin_ia32_selectb_512(
166 return (__m512i)__builtin_ia32_selectb_512((
__mmask64)__U,
171#undef __DEFAULT_FN_ATTRS
172#undef __DEFAULT_FN_ATTRS_CONSTEXPR
static __inline __m512i __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_bmacxor16x16x16(__m512i __A, __m512i __B, __m512i __C)
Multiplies two 16x16 bit matrices using XOR reduction and XORs the product into a third 16x16 bit mat...
static __inline __m512i __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_bmacor16x16x16(__m512i __A, __m512i __B, __m512i __C)
Multiplies two 16x16 bit matrices using OR reduction and ORs the product into a third 16x16 bit matri...
#define __DEFAULT_FN_ATTRS_CONSTEXPR
static __inline __m512i __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_bitrev_epi8(__m512i __A)
Reverses the bits within each byte of the source vector.
static __inline __m512i __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_mask_bitrev_epi8(__mmask64 __U, __m512i __A, __m512i __B)
Reverses the bits within each byte of the source vector, using a writemask to conditionally select el...
static __inline __m512i __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_maskz_bitrev_epi8(__mmask64 __U, __m512i __A)
Reverses the bits within each byte of the source vector, zeroing elements based on the writemask.
unsigned long long __mmask64
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_setzero_si512(void)