11 "Never use <avx10_2_512niintrin.h> directly; include <immintrin.h> instead."
16#ifndef __AVX10_2_512NIINTRIN_H
17#define __AVX10_2_512NIINTRIN_H
19#define __DEFAULT_FN_ATTRS \
20 __attribute__((__always_inline__, __nodebug__, __target__("avx10.2-512"), \
21 __min_vector_width__(512)))
27 return (__m512)__builtin_ia32_vdpphps512((__v16sf)__W, (__v32hf)__A,
35 return (__m512)__builtin_ia32_selectps_512(
36 (
__mmask16)__U, (__v16sf)_mm512_dpph_ps(__W, __A, __B), (__v16sf)__W);
43 return (__m512)__builtin_ia32_selectps_512(
44 (
__mmask16)__U, (__v16sf)_mm512_dpph_ps(__W, __A, __B),
49#define _mm512_mpsadbw_epu8(A, B, imm) \
50 ((__m512i)__builtin_ia32_mpsadbw512((__v64qi)(__m512i)(A), \
51 (__v64qi)(__m512i)(B), (int)(imm)))
53#define _mm512_mask_mpsadbw_epu8(W, U, A, B, imm) \
54 ((__m512i)__builtin_ia32_selectw_512( \
55 (__mmask32)(U), (__v32hi)_mm512_mpsadbw_epu8((A), (B), (imm)), \
56 (__v32hi)(__m512i)(W)))
58#define _mm512_maskz_mpsadbw_epu8(U, A, B, imm) \
59 ((__m512i)__builtin_ia32_selectw_512( \
60 (__mmask32)(U), (__v32hi)_mm512_mpsadbw_epu8((A), (B), (imm)), \
61 (__v32hi)_mm512_setzero_si512()))
67 return (__m512i)__builtin_ia32_vpdpbssd512((__v16si)__W, (__v16si)__A,
72_mm512_mask_dpbssd_epi32(__m512i __W,
__mmask16 __U, __m512i __A, __m512i __B) {
73 return (__m512i)__builtin_ia32_selectd_512(
74 __U, (__v16si)_mm512_dpbssd_epi32(__W, __A, __B), (__v16si)__W);
78 __mmask16 __U, __m512i __W, __m512i __A, __m512i __B) {
79 return (__m512i)__builtin_ia32_selectd_512(
80 __U, (__v16si)_mm512_dpbssd_epi32(__W, __A, __B),
87 return (__m512i)__builtin_ia32_vpdpbssds512((__v16si)__W, (__v16si)__A,
92 __m512i __W,
__mmask16 __U, __m512i __A, __m512i __B) {
93 return (__m512i)__builtin_ia32_selectd_512(
94 __U, (__v16si)_mm512_dpbssds_epi32(__W, __A, __B), (__v16si)__W);
98 __mmask16 __U, __m512i __W, __m512i __A, __m512i __B) {
99 return (__m512i)__builtin_ia32_selectd_512(
100 __U, (__v16si)_mm512_dpbssds_epi32(__W, __A, __B),
107 return (__m512i)__builtin_ia32_vpdpbsud512((__v16si)__W, (__v16si)__A,
112_mm512_mask_dpbsud_epi32(__m512i __W,
__mmask16 __U, __m512i __A, __m512i __B) {
113 return (__m512i)__builtin_ia32_selectd_512(
114 __U, (__v16si)_mm512_dpbsud_epi32(__W, __A, __B), (__v16si)__W);
118 __mmask16 __U, __m512i __W, __m512i __A, __m512i __B) {
119 return (__m512i)__builtin_ia32_selectd_512(
120 __U, (__v16si)_mm512_dpbsud_epi32(__W, __A, __B),
127 return (__m512i)__builtin_ia32_vpdpbsuds512((__v16si)__W, (__v16si)__A,
132 __m512i __W,
__mmask16 __U, __m512i __A, __m512i __B) {
133 return (__m512i)__builtin_ia32_selectd_512(
134 __U, (__v16si)_mm512_dpbsuds_epi32(__W, __A, __B), (__v16si)__W);
138 __mmask16 __U, __m512i __W, __m512i __A, __m512i __B) {
139 return (__m512i)__builtin_ia32_selectd_512(
140 __U, (__v16si)_mm512_dpbsuds_epi32(__W, __A, __B),
147 return (__m512i)__builtin_ia32_vpdpbuud512((__v16si)__W, (__v16si)__A,
152_mm512_mask_dpbuud_epi32(__m512i __W,
__mmask16 __U, __m512i __A, __m512i __B) {
153 return (__m512i)__builtin_ia32_selectd_512(
154 __U, (__v16si)_mm512_dpbuud_epi32(__W, __A, __B), (__v16si)__W);
158 __mmask16 __U, __m512i __W, __m512i __A, __m512i __B) {
159 return (__m512i)__builtin_ia32_selectd_512(
160 __U, (__v16si)_mm512_dpbuud_epi32(__W, __A, __B),
167 return (__m512i)__builtin_ia32_vpdpbuuds512((__v16si)__W, (__v16si)__A,
172 __m512i __W,
__mmask16 __U, __m512i __A, __m512i __B) {
173 return (__m512i)__builtin_ia32_selectd_512(
174 __U, (__v16si)_mm512_dpbuuds_epi32(__W, __A, __B), (__v16si)__W);
178 __mmask16 __U, __m512i __W, __m512i __A, __m512i __B) {
179 return (__m512i)__builtin_ia32_selectd_512(
180 __U, (__v16si)_mm512_dpbuuds_epi32(__W, __A, __B),
188 return (__m512i)__builtin_ia32_vpdpwsud512((__v16si)__A, (__v16si)__B,
193_mm512_mask_dpwsud_epi32(__m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
194 return (__m512i)__builtin_ia32_selectd_512(
195 (
__mmask16)__U, (__v16si)_mm512_dpwsud_epi32(__A, __B, __C),
200 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
201 return (__m512i)__builtin_ia32_selectd_512(
202 (
__mmask16)__U, (__v16si)_mm512_dpwsud_epi32(__A, __B, __C),
209 return (__m512i)__builtin_ia32_vpdpwsuds512((__v16si)__A, (__v16si)__B,
214 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
215 return (__m512i)__builtin_ia32_selectd_512(
216 (
__mmask16)__U, (__v16si)_mm512_dpwsuds_epi32(__A, __B, __C),
221 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
222 return (__m512i)__builtin_ia32_selectd_512(
223 (
__mmask16)__U, (__v16si)_mm512_dpwsuds_epi32(__A, __B, __C),
230 return (__m512i)__builtin_ia32_vpdpwusd512((__v16si)__A, (__v16si)__B,
235_mm512_mask_dpwusd_epi32(__m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
236 return (__m512i)__builtin_ia32_selectd_512(
237 (
__mmask16)__U, (__v16si)_mm512_dpwusd_epi32(__A, __B, __C),
242 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
243 return (__m512i)__builtin_ia32_selectd_512(
244 (
__mmask16)__U, (__v16si)_mm512_dpwusd_epi32(__A, __B, __C),
251 return (__m512i)__builtin_ia32_vpdpwusds512((__v16si)__A, (__v16si)__B,
256 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
257 return (__m512i)__builtin_ia32_selectd_512(
258 (
__mmask16)__U, (__v16si)_mm512_dpwusds_epi32(__A, __B, __C),
263 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
264 return (__m512i)__builtin_ia32_selectd_512(
265 (
__mmask16)__U, (__v16si)_mm512_dpwusds_epi32(__A, __B, __C),
272 return (__m512i)__builtin_ia32_vpdpwuud512((__v16si)__A, (__v16si)__B,
277_mm512_mask_dpwuud_epi32(__m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
278 return (__m512i)__builtin_ia32_selectd_512(
279 (
__mmask16)__U, (__v16si)_mm512_dpwuud_epi32(__A, __B, __C),
284 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
285 return (__m512i)__builtin_ia32_selectd_512(
286 (
__mmask16)__U, (__v16si)_mm512_dpwuud_epi32(__A, __B, __C),
293 return (__m512i)__builtin_ia32_vpdpwuuds512((__v16si)__A, (__v16si)__B,
298 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
299 return (__m512i)__builtin_ia32_selectd_512(
300 (
__mmask16)__U, (__v16si)_mm512_dpwuuds_epi32(__A, __B, __C),
305 __m512i __A,
__mmask16 __U, __m512i __B, __m512i __C) {
306 return (__m512i)__builtin_ia32_selectd_512(
307 (
__mmask16)__U, (__v16si)_mm512_dpwuuds_epi32(__A, __B, __C),
311#undef __DEFAULT_FN_ATTRS
#define __DEFAULT_FN_ATTRS
static __inline __m512 __DEFAULT_FN_ATTRS512 _mm512_setzero_ps(void)
static __inline __m512i __DEFAULT_FN_ATTRS512 _mm512_setzero_si512(void)