[clang] [Headers][X86] Enable constexpr handling for MMX/SSE/AVX/AVX512 avg intrinsics (PR #157464)

Simon Pilgrim via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 8 08:19:45 PDT 2025


================
@@ -496,9 +496,8 @@ _mm256_andnot_si256(__m256i __a, __m256i __b)
 /// \param __b
 ///    A 256-bit integer vector.
 /// \returns A 256-bit integer vector containing the result.
-static __inline__ __m256i __DEFAULT_FN_ATTRS256
-_mm256_avg_epu8(__m256i __a, __m256i __b)
-{
+static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
+_mm256_avg_epu8(__m256i __a, __m256i __b) {
   return (__m256i)__builtin_ia32_pavgb256((__v32qi)__a, (__v32qi)__b);
----------------
RKSimon wrote:

Now that we're using unsigned - yhis needs to be `__32qu` (similar for all other avg builtins)

https://github.com/llvm/llvm-project/pull/157464


More information about the cfe-commits mailing list