https://github.com/RKSimon created 
https://github.com/llvm/llvm-project/pull/162114

This was missed in the earlier f16c/fp16 constexpr patches

>From ca975d610c097c1f727c5a65968be8f38be1597f Mon Sep 17 00:00:00 2001
From: Simon Pilgrim <[email protected]>
Date: Mon, 6 Oct 2025 17:30:51 +0100
Subject: [PATCH] [X86] avx512fp16intrin.h - allow _mm512_cvtsh_h to be used in
 constexpr

This was missed in the earlier f16c/fp16 constexpr patches
---
 clang/lib/Headers/avx512fp16intrin.h         | 3 ++-
 clang/test/CodeGen/X86/avx512fp16-builtins.c | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Headers/avx512fp16intrin.h 
b/clang/lib/Headers/avx512fp16intrin.h
index 4bd798129a25d..d951ba0f05bcd 100644
--- a/clang/lib/Headers/avx512fp16intrin.h
+++ b/clang/lib/Headers/avx512fp16intrin.h
@@ -41,7 +41,8 @@ typedef _Float16 __m512h_u 
__attribute__((__vector_size__(64), __aligned__(1)));
 #define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128
 #endif
 
-static __inline__ _Float16 __DEFAULT_FN_ATTRS512 _mm512_cvtsh_h(__m512h __a) {
+static __inline__ _Float16 __DEFAULT_FN_ATTRS512_CONSTEXPR
+_mm512_cvtsh_h(__m512h __a) {
   return __a[0];
 }
 
diff --git a/clang/test/CodeGen/X86/avx512fp16-builtins.c 
b/clang/test/CodeGen/X86/avx512fp16-builtins.c
index 37443d584614d..dbf89b38e262b 100644
--- a/clang/test/CodeGen/X86/avx512fp16-builtins.c
+++ b/clang/test/CodeGen/X86/avx512fp16-builtins.c
@@ -17,6 +17,7 @@ _Float16 test_mm512_cvtsh_h(__m512h __A) {
   // CHECK: extractelement <32 x half> %{{.*}}, i32 0
   return _mm512_cvtsh_h(__A);
 }
+TEST_CONSTEXPR(_mm512_cvtsh_h((__m512h){-32.0, 31.0, -30.0, 29.0, -28.0, 27.0, 
-26.0, 25.0, -24.0, 23.0, -22.0, 21.0, -20.0, 19.0, -18.0, 17.0, -16.0, 15.0, 
-14.0, 13.0, -12.0, 11.0, -10.0, 9.0, -8.0, 7.0, -6.0, 5.0, -4.0, 3.0, -2.0, 
1.0}) == -32.0);
 
 __m128h test_mm_setzero_ph(void) {
   // CHECK-LABEL: test_mm_setzero_ph

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to