================
@@ -207,9 +207,8 @@ _mm512_undefined(void)
   return (__m512)__builtin_ia32_undef512();
 }
 
-static __inline__ __m512 __DEFAULT_FN_ATTRS512
-_mm512_undefined_ps(void)
-{
+static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
+_mm512_undefined_ps(void) {
----------------
HamzaHassanain wrote:

I had an issue with these two functions: `_mm256_mask_cvtpd_ps`, 
`_mm256_maskz_cvtpd_ps`, because 256-bit masked operations use selectps, which 
evaluates ALL lanes before masking
So even masked-off Inf/NaN values cause errors. 

The other issue with all the functions mentioned in the issue, that are defined 
in this header, `avx512fintrin.h`, but they were solved when I just added 
`__DEFAULT_FN_ATTRS512_CONSTEXPR`, and updated the `BuiltinsX86` to treat the 
`*_undefined_ps` as constexpr. 

Please correct me if I am wrong, or misunderstood something

I would like to add the `*_undefined_ps` to be constexpr as well. Can I 
proceed?  



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

Reply via email to