Skip to content

Commit 113177f

Browse files
authored
[X86][AVX10.2] Fix wrong mask bits in cvtpbf8_ph intrinsics (#120927)
Found during review #120766
1 parent 657c5bf commit 113177f

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

clang/lib/Headers/avx10_2_512convertintrin.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -308,13 +308,13 @@ static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_cvtpbf8_ph(__m256i __A) {
308308
}
309309

310310
static __inline __m512h __DEFAULT_FN_ATTRS512
311-
_mm512_mask_cvtpbf8_ph(__m512h __S, __mmask16 __U, __m256i __A) {
311+
_mm512_mask_cvtpbf8_ph(__m512h __S, __mmask32 __U, __m256i __A) {
312312
return _mm512_castsi512_ph(
313313
_mm512_mask_slli_epi16((__m512i)__S, __U, _mm512_cvtepi8_epi16(__A), 8));
314314
}
315315

316316
static __inline __m512h __DEFAULT_FN_ATTRS512
317-
_mm512_maskz_cvtpbf8_ph(__mmask16 __U, __m256i __A) {
317+
_mm512_maskz_cvtpbf8_ph(__mmask32 __U, __m256i __A) {
318318
return _mm512_castsi512_ph(
319319
_mm512_slli_epi16(_mm512_maskz_cvtepi8_epi16(__U, __A), 8));
320320
}

clang/lib/Headers/avx10_2convertintrin.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -580,13 +580,13 @@ static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_cvtpbf8_ph(__m128i __A) {
580580
}
581581

582582
static __inline__ __m256h __DEFAULT_FN_ATTRS256
583-
_mm256_mask_cvtpbf8_ph(__m256h __S, __mmask8 __U, __m128i __A) {
583+
_mm256_mask_cvtpbf8_ph(__m256h __S, __mmask16 __U, __m128i __A) {
584584
return _mm256_castsi256_ph(
585585
_mm256_mask_slli_epi16((__m256i)__S, __U, _mm256_cvtepi8_epi16(__A), 8));
586586
}
587587

588588
static __inline__ __m256h __DEFAULT_FN_ATTRS256
589-
_mm256_maskz_cvtpbf8_ph(__mmask8 __U, __m128i __A) {
589+
_mm256_maskz_cvtpbf8_ph(__mmask16 __U, __m128i __A) {
590590
return _mm256_castsi256_ph(
591591
_mm256_slli_epi16(_mm256_maskz_cvtepi8_epi16(__U, __A), 8));
592592
}

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ __m512h test_mm512_cvtpbf8_ph(__m256i A) {
299299
return _mm512_cvtpbf8_ph(A);
300300
}
301301

302-
__m512h test_mm512_mask_cvtpbf8_ph(__m512h S, __mmask16 M, __m256i A) {
302+
__m512h test_mm512_mask_cvtpbf8_ph(__m512h S, __mmask32 M, __m256i A) {
303303
// CHECK-LABEL: @test_mm512_mask_cvtpbf8_ph
304304
// CHECK: sext <32 x i8> %{{.*}} to <32 x i16>
305305
// CHECK: @llvm.x86.avx512.pslli.w.512
@@ -308,7 +308,7 @@ __m512h test_mm512_mask_cvtpbf8_ph(__m512h S, __mmask16 M, __m256i A) {
308308
return _mm512_mask_cvtpbf8_ph(S, M, A);
309309
}
310310

311-
__m512h test_mm512_maskz_cvtpbf8_ph(__mmask16 M, __m256i A) {
311+
__m512h test_mm512_maskz_cvtpbf8_ph(__mmask32 M, __m256i A) {
312312
// CHECK-LABEL: @test_mm512_maskz_cvtpbf8_ph
313313
// CHECK: sext <32 x i8> %{{.*}} to <32 x i16>
314314
// CHECK: select <32 x i1> %{{.*}}, <32 x i16> %{{.*}}, <32 x i16> %{{.*}}

0 commit comments

Comments
 (0)