[clang] [Headers][X86] Update FMA3/FMA4 scalar intrinsics to use __builtin_elementwise_fma and support constexpr (PR #154731)
Simon Pilgrim via cfe-commits
cfe-commits at lists.llvm.org
Tue Aug 26 01:13:35 PDT 2025
================
@@ -40,16 +40,16 @@ _mm_macc_pd(__m128d __A, __m128d __B, __m128d __C) {
(__v2df)__C);
}
-static __inline__ __m128 __DEFAULT_FN_ATTRS128
+static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
_mm_macc_ss(__m128 __A, __m128 __B, __m128 __C)
{
- return (__m128)__builtin_ia32_vfmaddss((__v4sf)__A, (__v4sf)__B, (__v4sf)__C);
+ return _mm_set_ss(__builtin_elementwise_fma(__A[0], __B[0], __C[0]));
----------------
RKSimon wrote:
Still waiting on #154747 - happy for this patch to stall until then
https://github.com/llvm/llvm-project/pull/154731
More information about the cfe-commits
mailing list