Skip to content

Commit 3ea3e33

Browse files
authored
[X86][AVX10.2] Fix VNNIINT16 maskz intrinsics arguments order (#151077)
For maskz intrinsics, the first argument is always the mask.
1 parent dcff523 commit 3ea3e33

File tree

4 files changed

+54
-54
lines changed

4 files changed

+54
-54
lines changed

clang/lib/Headers/avx10_2_512niintrin.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ _mm512_mask_dpwsud_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
197197
}
198198

199199
static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_dpwsud_epi32(
200-
__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
200+
__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
201201
return (__m512i)__builtin_ia32_selectd_512(
202202
(__mmask16)__U, (__v16si)_mm512_dpwsud_epi32(__A, __B, __C),
203203
(__v16si)_mm512_setzero_si512());
@@ -218,7 +218,7 @@ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_mask_dpwsuds_epi32(
218218
}
219219

220220
static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_dpwsuds_epi32(
221-
__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
221+
__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
222222
return (__m512i)__builtin_ia32_selectd_512(
223223
(__mmask16)__U, (__v16si)_mm512_dpwsuds_epi32(__A, __B, __C),
224224
(__v16si)_mm512_setzero_si512());
@@ -239,7 +239,7 @@ _mm512_mask_dpwusd_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
239239
}
240240

241241
static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_dpwusd_epi32(
242-
__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
242+
__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
243243
return (__m512i)__builtin_ia32_selectd_512(
244244
(__mmask16)__U, (__v16si)_mm512_dpwusd_epi32(__A, __B, __C),
245245
(__v16si)_mm512_setzero_si512());
@@ -260,7 +260,7 @@ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_mask_dpwusds_epi32(
260260
}
261261

262262
static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_dpwusds_epi32(
263-
__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
263+
__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
264264
return (__m512i)__builtin_ia32_selectd_512(
265265
(__mmask16)__U, (__v16si)_mm512_dpwusds_epi32(__A, __B, __C),
266266
(__v16si)_mm512_setzero_si512());
@@ -281,7 +281,7 @@ _mm512_mask_dpwuud_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
281281
}
282282

283283
static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_dpwuud_epi32(
284-
__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
284+
__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
285285
return (__m512i)__builtin_ia32_selectd_512(
286286
(__mmask16)__U, (__v16si)_mm512_dpwuud_epi32(__A, __B, __C),
287287
(__v16si)_mm512_setzero_si512());
@@ -302,7 +302,7 @@ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_mask_dpwuuds_epi32(
302302
}
303303

304304
static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_dpwuuds_epi32(
305-
__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) {
305+
__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
306306
return (__m512i)__builtin_ia32_selectd_512(
307307
(__mmask16)__U, (__v16si)_mm512_dpwuuds_epi32(__A, __B, __C),
308308
(__v16si)_mm512_setzero_si512());

clang/lib/Headers/avx10_2niintrin.h

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ _mm_mask_dpwsud_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
253253
}
254254

255255
static __inline__ __m128i __DEFAULT_FN_ATTRS128
256-
_mm_maskz_dpwsud_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
256+
_mm_maskz_dpwsud_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) {
257257
return (__m128i)__builtin_ia32_selectd_128(
258258
(__mmask8)__U, (__v4si)_mm_dpwsud_epi32(__A, __B, __C),
259259
(__v4si)_mm_setzero_si128());
@@ -266,7 +266,7 @@ _mm256_mask_dpwsud_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
266266
}
267267

268268
static __inline__ __m256i __DEFAULT_FN_ATTRS256
269-
_mm256_maskz_dpwsud_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
269+
_mm256_maskz_dpwsud_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) {
270270
return (__m256i)__builtin_ia32_selectd_256(
271271
(__mmask8)__U, (__v8si)_mm256_dpwsud_epi32(__A, __B, __C),
272272
(__v8si)_mm256_setzero_si256());
@@ -279,7 +279,7 @@ _mm_mask_dpwsuds_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
279279
}
280280

281281
static __inline__ __m128i __DEFAULT_FN_ATTRS128
282-
_mm_maskz_dpwsuds_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
282+
_mm_maskz_dpwsuds_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) {
283283
return (__m128i)__builtin_ia32_selectd_128(
284284
(__mmask8)__U, (__v4si)_mm_dpwsuds_epi32(__A, __B, __C),
285285
(__v4si)_mm_setzero_si128());
@@ -292,7 +292,7 @@ _mm256_mask_dpwsuds_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
292292
}
293293

294294
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_dpwsuds_epi32(
295-
__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
295+
__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) {
296296
return (__m256i)__builtin_ia32_selectd_256(
297297
(__mmask8)__U, (__v8si)_mm256_dpwsuds_epi32(__A, __B, __C),
298298
(__v8si)_mm256_setzero_si256());
@@ -305,7 +305,7 @@ _mm_mask_dpwusd_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
305305
}
306306

307307
static __inline__ __m128i __DEFAULT_FN_ATTRS128
308-
_mm_maskz_dpwusd_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
308+
_mm_maskz_dpwusd_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) {
309309
return (__m128i)__builtin_ia32_selectd_128(
310310
(__mmask8)__U, (__v4si)_mm_dpwusd_epi32(__A, __B, __C),
311311
(__v4si)_mm_setzero_si128());
@@ -318,7 +318,7 @@ _mm256_mask_dpwusd_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
318318
}
319319

320320
static __inline__ __m256i __DEFAULT_FN_ATTRS256
321-
_mm256_maskz_dpwusd_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
321+
_mm256_maskz_dpwusd_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) {
322322
return (__m256i)__builtin_ia32_selectd_256(
323323
(__mmask8)__U, (__v8si)_mm256_dpwusd_epi32(__A, __B, __C),
324324
(__v8si)_mm256_setzero_si256());
@@ -331,7 +331,7 @@ _mm_mask_dpwusds_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
331331
}
332332

333333
static __inline__ __m128i __DEFAULT_FN_ATTRS128
334-
_mm_maskz_dpwusds_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
334+
_mm_maskz_dpwusds_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) {
335335
return (__m128i)__builtin_ia32_selectd_128(
336336
(__mmask8)__U, (__v4si)_mm_dpwusds_epi32(__A, __B, __C),
337337
(__v4si)_mm_setzero_si128());
@@ -344,7 +344,7 @@ _mm256_mask_dpwusds_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
344344
}
345345

346346
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_dpwusds_epi32(
347-
__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
347+
__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) {
348348
return (__m256i)__builtin_ia32_selectd_256(
349349
(__mmask8)__U, (__v8si)_mm256_dpwusds_epi32(__A, __B, __C),
350350
(__v8si)_mm256_setzero_si256());
@@ -357,7 +357,7 @@ _mm_mask_dpwuud_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
357357
}
358358

359359
static __inline__ __m128i __DEFAULT_FN_ATTRS128
360-
_mm_maskz_dpwuud_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
360+
_mm_maskz_dpwuud_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) {
361361
return (__m128i)__builtin_ia32_selectd_128(
362362
(__mmask8)__U, (__v4si)_mm_dpwuud_epi32(__A, __B, __C),
363363
(__v4si)_mm_setzero_si128());
@@ -370,7 +370,7 @@ _mm256_mask_dpwuud_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
370370
}
371371

372372
static __inline__ __m256i __DEFAULT_FN_ATTRS256
373-
_mm256_maskz_dpwuud_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
373+
_mm256_maskz_dpwuud_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) {
374374
return (__m256i)__builtin_ia32_selectd_256(
375375
(__mmask8)__U, (__v8si)_mm256_dpwuud_epi32(__A, __B, __C),
376376
(__v8si)_mm256_setzero_si256());
@@ -383,7 +383,7 @@ _mm_mask_dpwuuds_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
383383
}
384384

385385
static __inline__ __m128i __DEFAULT_FN_ATTRS128
386-
_mm_maskz_dpwuuds_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) {
386+
_mm_maskz_dpwuuds_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) {
387387
return (__m128i)__builtin_ia32_selectd_128(
388388
(__mmask8)__U, (__v4si)_mm_dpwuuds_epi32(__A, __B, __C),
389389
(__v4si)_mm_setzero_si128());
@@ -396,7 +396,7 @@ _mm256_mask_dpwuuds_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
396396
}
397397

398398
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_dpwuuds_epi32(
399-
__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) {
399+
__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) {
400400
return (__m256i)__builtin_ia32_selectd_256(
401401
(__mmask8)__U, (__v8si)_mm256_dpwuuds_epi32(__A, __B, __C),
402402
(__v8si)_mm256_setzero_si256());

clang/test/CodeGen/X86/avx10_2_512ni-builtins.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -187,12 +187,12 @@ __m512i test_mm512_mask_dpwsud_epi32(__m512i __A, __mmask16 __B, __m512i __C, __
187187
return _mm512_mask_dpwsud_epi32(__A, __B, __C, __D);
188188
}
189189

190-
__m512i test_mm512_maskz_dpwsud_epi32(__m512i __A, __mmask16 __B, __m512i __C, __m512i __D) {
190+
__m512i test_mm512_maskz_dpwsud_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
191191
// CHECK-LABEL: @test_mm512_maskz_dpwsud_epi32(
192192
// CHECK: call <16 x i32> @llvm.x86.avx10.vpdpwsud.512(<16 x i32> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}})
193193
// CHECK: zeroinitializer
194194
// CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
195-
return _mm512_maskz_dpwsud_epi32(__A, __B, __C, __D);
195+
return _mm512_maskz_dpwsud_epi32(__U, __A, __B, __C);
196196
}
197197

198198
__m512i test_mm512_dpwsuds_epi32(__m512i __A, __m512i __B, __m512i __C) {
@@ -208,12 +208,12 @@ __m512i test_mm512_mask_dpwsuds_epi32(__m512i __A, __mmask16 __B, __m512i __C, _
208208
return _mm512_mask_dpwsuds_epi32(__A, __B, __C, __D);
209209
}
210210

211-
__m512i test_mm512_maskz_dpwsuds_epi32(__m512i __A, __mmask16 __B, __m512i __C, __m512i __D) {
211+
__m512i test_mm512_maskz_dpwsuds_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
212212
// CHECK-LABEL: @test_mm512_maskz_dpwsuds_epi32(
213213
// CHECK: call <16 x i32> @llvm.x86.avx10.vpdpwsuds.512(<16 x i32> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}})
214214
// CHECK: zeroinitializer
215215
// CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
216-
return _mm512_maskz_dpwsuds_epi32(__A, __B, __C, __D);
216+
return _mm512_maskz_dpwsuds_epi32(__U, __A, __B, __C);
217217
}
218218

219219
__m512i test_mm512_dpwusd_epi32(__m512i __A, __m512i __B, __m512i __C) {
@@ -229,12 +229,12 @@ __m512i test_mm512_mask_dpwusd_epi32(__m512i __A, __mmask16 __B, __m512i __C, __
229229
return _mm512_mask_dpwusd_epi32(__A, __B, __C, __D);
230230
}
231231

232-
__m512i test_mm512_maskz_dpwusd_epi32(__m512i __A, __mmask16 __B, __m512i __C, __m512i __D) {
232+
__m512i test_mm512_maskz_dpwusd_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
233233
// CHECK-LABEL: @test_mm512_maskz_dpwusd_epi32(
234234
// CHECK: call <16 x i32> @llvm.x86.avx10.vpdpwusd.512(<16 x i32> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}})
235235
// CHECK: zeroinitializer
236236
// CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
237-
return _mm512_maskz_dpwusd_epi32(__A, __B, __C, __D);
237+
return _mm512_maskz_dpwusd_epi32(__U, __A, __B, __C);
238238
}
239239

240240
__m512i test_mm512_dpwusds_epi32(__m512i __A, __m512i __B, __m512i __C) {
@@ -250,12 +250,12 @@ __m512i test_mm512_mask_dpwusds_epi32(__m512i __A, __mmask16 __B, __m512i __C, _
250250
return _mm512_mask_dpwusds_epi32(__A, __B, __C, __D);
251251
}
252252

253-
__m512i test_mm512_maskz_dpwusds_epi32(__m512i __A, __mmask16 __B, __m512i __C, __m512i __D) {
253+
__m512i test_mm512_maskz_dpwusds_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
254254
// CHECK-LABEL: @test_mm512_maskz_dpwusds_epi32(
255255
// CHECK: call <16 x i32> @llvm.x86.avx10.vpdpwusds.512(<16 x i32> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}})
256256
// CHECK: zeroinitializer
257257
// CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
258-
return _mm512_maskz_dpwusds_epi32(__A, __B, __C, __D);
258+
return _mm512_maskz_dpwusds_epi32(__U, __A, __B, __C);
259259
}
260260

261261
__m512i test_mm512_dpwuud_epi32(__m512i __A, __m512i __B, __m512i __C) {
@@ -271,12 +271,12 @@ __m512i test_mm512_mask_dpwuud_epi32(__m512i __A, __mmask16 __B, __m512i __C, __
271271
return _mm512_mask_dpwuud_epi32(__A, __B, __C, __D);
272272
}
273273

274-
__m512i test_mm512_maskz_dpwuud_epi32(__m512i __A, __mmask16 __B, __m512i __C, __m512i __D) {
274+
__m512i test_mm512_maskz_dpwuud_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
275275
// CHECK-LABEL: @test_mm512_maskz_dpwuud_epi32(
276276
// CHECK: call <16 x i32> @llvm.x86.avx10.vpdpwuud.512(<16 x i32> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}})
277277
// CHECK: zeroinitializer
278278
// CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
279-
return _mm512_maskz_dpwuud_epi32(__A, __B, __C, __D);
279+
return _mm512_maskz_dpwuud_epi32(__U, __A, __B, __C);
280280
}
281281

282282
__m512i test_mm512_dpwuuds_epi32(__m512i __A, __m512i __B, __m512i __C) {
@@ -292,10 +292,10 @@ __m512i test_mm512_mask_dpwuuds_epi32(__m512i __A, __mmask16 __B, __m512i __C, _
292292
return _mm512_mask_dpwuuds_epi32(__A, __B, __C, __D);
293293
}
294294

295-
__m512i test_mm512_maskz_dpwuuds_epi32(__m512i __A, __mmask16 __B, __m512i __C, __m512i __D) {
295+
__m512i test_mm512_maskz_dpwuuds_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) {
296296
// CHECK-LABEL: @test_mm512_maskz_dpwuuds_epi32(
297297
// CHECK: call <16 x i32> @llvm.x86.avx10.vpdpwuuds.512(<16 x i32> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}})
298298
// CHECK: zeroinitializer
299299
// CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
300-
return _mm512_maskz_dpwuuds_epi32(__A, __B, __C, __D);
300+
return _mm512_maskz_dpwuuds_epi32(__U, __A, __B, __C);
301301
}

0 commit comments

Comments
 (0)