https://github.com/sskzakaria created 
https://github.com/llvm/llvm-project/pull/159231

Added constexpr to the remaining intrinsics:

_mm256_cvtepu16_ph 
_mm256_mask_cvtepu16_ph 
_mm256_maskz_cvtepu16_ph
_mm256_cvtepi32_ph 
_mm256_mask_cvtepi32_ph 
_mm256_maskz_cvtepi32_ph
_mm256_cvtepu32_ph
 _mm256_mask_cvtepu32_ph 
 _mm256_maskz_cvtepu32_ph
 
 Last part fixing #155798

>From 55d9d6064836c78d8c982a81b0ad24ffbfb9ff83 Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Fri, 12 Sep 2025 18:06:50 -0400
Subject: [PATCH 01/11] _mm256_cvtepu16_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 8eb31eae6173b..1d8d5dad4f9ec 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -931,7 +931,7 @@ _mm_maskz_cvtepu16_ph(__mmask8 __U, __m128i __A) {
       (__mmask8)__U, (__v8hf)_mm_cvtepu16_ph(__A), (__v8hf)_mm_setzero_ph());
 }
 
-static __inline__ __m256h __DEFAULT_FN_ATTRS256
+static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_cvtepu16_ph(__m256i __A) {
   return (__m256h) __builtin_convertvector((__v16hu)__A, __v16hf);
 }
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index fd6ea8fe6056d..69221d7deaf45 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -1947,6 +1947,8 @@ __m256h test_mm256_cvtepu16_ph(__m256i A) {
   return _mm256_cvtepu16_ph(A);
 }
 
+TEST_CONSTEXPR(match_m256h(_mm256_cvtepu16_ph((__m256i)(__v16hu){1, 1, 2, 2, 
4, 4, 8, 8, 16, 16, 32, 32, 64, 64, 128, 128}),1.0, 1.0, 2.0, 2.0, 4.0, 4.0, 
8.0, 8.0, 16.0, 16.0, 32.0, 32.0, 64.0, 64.0, 128.0, 128.0));
+
 __m256h test_mm256_mask_cvtepu16_ph(__m256h A, __mmask16 B, __m256i C) {
   // CHECK-LABEL: test_mm256_mask_cvtepu16_ph
   // CHECK: %{{.*}} = uitofp <16 x i16> %{{.*}} to <16 x half>

>From 848a8dc23fcec559b994cbc93bab2677d780a6ac Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Sat, 13 Sep 2025 16:03:32 -0400
Subject: [PATCH 02/11] _mm256_mask_cvtepu16_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 1d8d5dad4f9ec..9c3a1c407bb16 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -936,7 +936,7 @@ _mm256_cvtepu16_ph(__m256i __A) {
   return (__m256h) __builtin_convertvector((__v16hu)__A, __v16hf);
 }
 
-static __inline__ __m256h __DEFAULT_FN_ATTRS256
+static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_mask_cvtepu16_ph(__m256h __W, __mmask16 __U, __m256i __A) {
   return (__m256h)__builtin_ia32_selectph_256(
       (__mmask16)__U, (__v16hf)_mm256_cvtepu16_ph(__A), (__v16hf)__W);
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 69221d7deaf45..8dc3c7485ba08 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -1955,6 +1955,8 @@ __m256h test_mm256_mask_cvtepu16_ph(__m256h A, __mmask16 
B, __m256i C) {
   return _mm256_mask_cvtepu16_ph(A, B, C);
 }
 
+ 
TEST_CONSTEXPR(match_m256h(_mm256_mask_cvtepu16_ph(_mm256_set1_ph(-999.0),/*1100
 1001 1110 1000=*/0xc9e8,(__m256i)(__v16hu){ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 
12, 13, 14, 15, 16}), -999.0, -999.0, -999.0, 4.0, -999.0, 6.0, 7.0, 8.0, 9.0, 
-999.0, -999.0, 12.0, -999.0, -999.0, 15.0, 16.0));    
+
 __m256h test_mm256_maskz_cvtepu16_ph(__mmask16 A, __m256i B) {
   // CHECK-LABEL: test_mm256_maskz_cvtepu16_ph
   // CHECK: %{{.*}} = uitofp <16 x i16> %{{.*}} to <16 x half>

>From f95d2ef61cb05e654e8b115480b4d661e6296064 Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Mon, 15 Sep 2025 17:21:52 -0400
Subject: [PATCH 03/11] _mm256_maskz_cvtepu16_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 9c3a1c407bb16..350c88a45b96a 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -942,7 +942,7 @@ _mm256_mask_cvtepu16_ph(__m256h __W, __mmask16 __U, __m256i 
__A) {
       (__mmask16)__U, (__v16hf)_mm256_cvtepu16_ph(__A), (__v16hf)__W);
 }
 
-static __inline__ __m256h __DEFAULT_FN_ATTRS256
+static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_maskz_cvtepu16_ph(__mmask16 __U, __m256i __A) {
   return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U,
                                               (__v16hf)_mm256_cvtepu16_ph(__A),
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 8dc3c7485ba08..273d262ab4fab 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -1963,6 +1963,8 @@ __m256h test_mm256_maskz_cvtepu16_ph(__mmask16 A, __m256i 
B) {
   return _mm256_maskz_cvtepu16_ph(A, B);
 }
 
+TEST_CONSTEXPR(match_m256h(_mm256_maskz_cvtepu16_ph(/*1100 1001 1110 
1000=*/0xc9e8,(__m256i)(__v16hu){ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 
14, 15, 16}), 0.0, 0.0, 0.0, 4.0, 0.0, 6.0, 7.0, 8.0, 9.0, 0.0, 0.0, 12.0, 0.0, 
0.0, 15.0, 16.0));
+ 
 __m128i test_mm_cvtph_epi32(__m128h A) {
   // CHECK-LABEL: test_mm_cvtph_epi32
   // CHECK: @llvm.x86.avx512fp16.mask.vcvtph2dq.128

>From cd1d5d73f87cf7cc6631c06b1cea0560a057e689 Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Mon, 15 Sep 2025 17:45:19 -0400
Subject: [PATCH 04/11] _mm256_cvtepi32_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 350c88a45b96a..204e8327f6194 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -1036,7 +1036,7 @@ _mm_maskz_cvtepi32_ph(__mmask8 __U, __m128i __A) {
       (__v4si)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U);
 }
 
-static __inline__ __m128h __DEFAULT_FN_ATTRS256
+static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_cvtepi32_ph(__m256i __A) {
   return (__m128h) __builtin_convertvector((__v8si)__A, __v8hf);
 }
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 273d262ab4fab..c25f89ac80dc6 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2061,6 +2061,8 @@ __m128h test_mm256_cvtepi32_ph(__m256i A) {
   return _mm256_cvtepi32_ph(A);
 }
 
+TEST_CONSTEXPR(match_m128h(_mm256_cvtepi32_ph((__m256i)(__v8si){-1, -1, 2, 2, 
-4, -4, 6, 6}), -1.0f, -1.0f, 2.0f, 2.0f, -4.0f, -4.0f, 6.0f, 6.0f));
+
 __m128h test_mm256_mask_cvtepi32_ph(__m128h A, __mmask8 B, __m256i C) {
   // CHECK-LABEL: test_mm256_mask_cvtepi32_ph
   // CHECK: %{{.*}} = sitofp <8 x i32> %{{.*}} to <8 x half>

>From fd99649d09fcc262e22e26d33b9f43402486d394 Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Mon, 15 Sep 2025 18:13:46 -0400
Subject: [PATCH 05/11] _mm256_mask_cvtepi32_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 204e8327f6194..8a3201c5eaef6 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -1041,7 +1041,7 @@ _mm256_cvtepi32_ph(__m256i __A) {
   return (__m128h) __builtin_convertvector((__v8si)__A, __v8hf);
 }
 
-static __inline__ __m128h __DEFAULT_FN_ATTRS256
+static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_mask_cvtepi32_ph(__m128h __W, __mmask8 __U, __m256i __A) {
   return (__m128h)__builtin_ia32_selectph_128(
       (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), (__v8hf)__W);
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index c25f89ac80dc6..d4f99d2a94e8b 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2069,6 +2069,7 @@ __m128h test_mm256_mask_cvtepi32_ph(__m128h A, __mmask8 
B, __m256i C) {
   return _mm256_mask_cvtepi32_ph(A, B, C);
 }
 
+TEST_CONSTEXPR(match_m128h(_mm256_mask_cvtepi32_ph(_mm_set1_ph(-999.0),/*1001 
0011=*/0x93,(__m256i)(__v8si){1, 2, 3, 4, 5, 6, 7, 8}), 1.0, 2.0, -999.0, 
-999.0, 5.0, -999.0, -999.0, 8.0));
 __m128h test_mm256_maskz_cvtepi32_ph(__mmask8 A, __m256i B) {
   // CHECK-LABEL: test_mm256_maskz_cvtepi32_ph
   // CHECK: %{{.*}} = sitofp <8 x i32> %{{.*}} to <8 x half>

>From 9893b1575c58da0798b68fed2cd5c5e21112f13a Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Mon, 15 Sep 2025 18:15:19 -0400
Subject: [PATCH 06/11] minor change

---
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index d4f99d2a94e8b..a6f3a9b6696ed 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2070,6 +2070,7 @@ __m128h test_mm256_mask_cvtepi32_ph(__m128h A, __mmask8 
B, __m256i C) {
 }
 
 TEST_CONSTEXPR(match_m128h(_mm256_mask_cvtepi32_ph(_mm_set1_ph(-999.0),/*1001 
0011=*/0x93,(__m256i)(__v8si){1, 2, 3, 4, 5, 6, 7, 8}), 1.0, 2.0, -999.0, 
-999.0, 5.0, -999.0, -999.0, 8.0));
+
 __m128h test_mm256_maskz_cvtepi32_ph(__mmask8 A, __m256i B) {
   // CHECK-LABEL: test_mm256_maskz_cvtepi32_ph
   // CHECK: %{{.*}} = sitofp <8 x i32> %{{.*}} to <8 x half>

>From df854beea25e30684c34d9f8159f6d98bf35f95a Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Mon, 15 Sep 2025 18:39:12 -0400
Subject: [PATCH 07/11] _mm256_maskz_cvtepi32_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 8a3201c5eaef6..dc4e19251e389 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -1047,7 +1047,7 @@ _mm256_mask_cvtepi32_ph(__m128h __W, __mmask8 __U, 
__m256i __A) {
       (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), (__v8hf)__W);
 }
 
-static __inline__ __m128h __DEFAULT_FN_ATTRS256
+static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_maskz_cvtepi32_ph(__mmask8 __U, __m256i __A) {
   return (__m128h)__builtin_ia32_selectph_128(
       (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), 
(__v8hf)_mm_setzero_ph());
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index a6f3a9b6696ed..253f9b4311cb7 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2077,6 +2077,8 @@ __m128h test_mm256_maskz_cvtepi32_ph(__mmask8 A, __m256i 
B) {
   return _mm256_maskz_cvtepi32_ph(A, B);
 }
 
+ TEST_CONSTEXPR(match_m128h(_mm256_maskz_cvtepi32_ph(/*1001 0011=*/0x93, 
(__m256i)(__v8si){1, 1, 2, 2, 4, 4, 8, 8}), 1.0, 1.0, 0.0, 0.0, 4.0, 0.0, 0.0, 
8.0));
+
 __m128h test_mm_cvtepu32_ph(__m128i A) {
   // CHECK-LABEL: test_mm_cvtepu32_ph
   // CHECK: @llvm.x86.avx512fp16.mask.vcvtudq2ph.128

>From 25a54815cfde400f68f6cd175ac6d2e57c9e88b3 Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Mon, 15 Sep 2025 19:09:14 -0400
Subject: [PATCH 08/11] _mm256_cvtepu32_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index dc4e19251e389..51d2a0b378f81 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -1070,7 +1070,7 @@ _mm_maskz_cvtepu32_ph(__mmask8 __U, __m128i __A) {
       (__v4su)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U);
 }
 
-static __inline__ __m128h __DEFAULT_FN_ATTRS256
+static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_cvtepu32_ph(__m256i __A) {
   return (__m128h) __builtin_convertvector((__v8su)__A, __v8hf);
 }
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 253f9b4311cb7..881e6faf062b0 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2103,6 +2103,8 @@ __m128h test_mm256_cvtepu32_ph(__m256i A) {
   return _mm256_cvtepu32_ph(A);
 }
 
+TEST_CONSTEXPR(match_m128h( _mm256_cvtepu32_ph((__m256i)(__v8su){1, 2, 3, 4, 
5, 6, 7, 8}), 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0));
+
 __m128h test_mm256_mask_cvtepu32_ph(__m128h A, __mmask8 B, __m256i C) {
   // CHECK-LABEL: test_mm256_mask_cvtepu32_ph
   // CHECK: %{{.*}} = uitofp <8 x i32> %{{.*}} to <8 x half>

>From b9fa3ac92042395de4ff043fe37f1bc01016685e Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Tue, 16 Sep 2025 13:31:47 -0400
Subject: [PATCH 09/11] _mm256_mask_cvtepu32_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 51d2a0b378f81..595583db95910 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -1075,7 +1075,7 @@ _mm256_cvtepu32_ph(__m256i __A) {
   return (__m128h) __builtin_convertvector((__v8su)__A, __v8hf);
 }
 
-static __inline__ __m128h __DEFAULT_FN_ATTRS256
+static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_mask_cvtepu32_ph(__m128h __W, __mmask8 __U, __m256i __A) {
   return (__m128h)__builtin_ia32_selectph_128(
       (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), (__v8hf)__W);
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 881e6faf062b0..0454761755be3 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2111,6 +2111,8 @@ __m128h test_mm256_mask_cvtepu32_ph(__m128h A, __mmask8 
B, __m256i C) {
   return _mm256_mask_cvtepu32_ph(A, B, C);
 }
 
+TEST_CONSTEXPR(match_m128h( _mm256_mask_cvtepu32_ph(_mm_set1_ph(-999.0),/*1001 
0011=*/0x93,(__m256i)(__v8su){1, 2, 3, 4, 5, 6, 7, 8}), 1.0, 2.0, -999.0, 
-999.0, 5.0, -999.0, -999.0, 8.0));
+
 __m128h test_mm256_maskz_cvtepu32_ph(__mmask8 A, __m256i B) {
   // CHECK-LABEL: test_mm256_maskz_cvtepu32_ph
   // CHECK: %{{.*}} = uitofp <8 x i32> %{{.*}} to <8 x half>

>From c1fe796778a8dd046133870d2b647893b49e91cb Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Tue, 16 Sep 2025 13:44:34 -0400
Subject: [PATCH 10/11] _mm256_maskz_cvtepu32_ph

---
 clang/lib/Headers/avx512vlfp16intrin.h         | 2 +-
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512vlfp16intrin.h 
b/clang/lib/Headers/avx512vlfp16intrin.h
index 595583db95910..56a615bffa0e5 100644
--- a/clang/lib/Headers/avx512vlfp16intrin.h
+++ b/clang/lib/Headers/avx512vlfp16intrin.h
@@ -1081,7 +1081,7 @@ _mm256_mask_cvtepu32_ph(__m128h __W, __mmask8 __U, 
__m256i __A) {
       (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), (__v8hf)__W);
 }
 
-static __inline__ __m128h __DEFAULT_FN_ATTRS256
+static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
 _mm256_maskz_cvtepu32_ph(__mmask8 __U, __m256i __A) {
   return (__m128h)__builtin_ia32_selectph_128(
       (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), 
(__v8hf)_mm_setzero_ph());
diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 0454761755be3..0b482de0f15a8 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2119,6 +2119,8 @@ __m128h test_mm256_maskz_cvtepu32_ph(__mmask8 A, __m256i 
B) {
   return _mm256_maskz_cvtepu32_ph(A, B);
 }
 
+TEST_CONSTEXPR(match_m128h(_mm256_maskz_cvtepu32_ph(/*1001 0011=*/0x93, 
(__m256i)(__v8su){1, 1, 2, 2, 4, 4, 8, 8}), 1.0, 1.0, 0.0, 0.0, 4.0, 0.0, 0.0, 
8.0));
+
 __m128i test_mm_cvttph_epi32(__m128h A) {
   // CHECK-LABEL: test_mm_cvttph_epi32
   // CHECK: @llvm.x86.avx512fp16.mask.vcvttph2dq.128

>From 47dd4c89891c555d4663fd1504a2dcf5bd953321 Mon Sep 17 00:00:00 2001
From: sskzakaria <ssskzaka...@proton.me>
Date: Tue, 16 Sep 2025 22:44:27 -0400
Subject: [PATCH 11/11] _mm256_mask_cvtepi32_ph change

---
 clang/test/CodeGen/X86/avx512vlfp16-builtins.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c 
b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
index 0b482de0f15a8..260886779dc38 100644
--- a/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512vlfp16-builtins.c
@@ -2061,7 +2061,7 @@ __m128h test_mm256_cvtepi32_ph(__m256i A) {
   return _mm256_cvtepi32_ph(A);
 }
 
-TEST_CONSTEXPR(match_m128h(_mm256_cvtepi32_ph((__m256i)(__v8si){-1, -1, 2, 2, 
-4, -4, 6, 6}), -1.0f, -1.0f, 2.0f, 2.0f, -4.0f, -4.0f, 6.0f, 6.0f));
+TEST_CONSTEXPR(match_m128h(_mm256_cvtepi32_ph((__m256i)(__v8si){-1, -1, 2, 2, 
-4, -4, 6, 6}), -1.0, -1.0, 2.0, 2.0, -4.0, -4.0, 6.0, 6.0));
 
 __m128h test_mm256_mask_cvtepi32_ph(__m128h A, __mmask8 B, __m256i C) {
   // CHECK-LABEL: test_mm256_mask_cvtepi32_ph

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to