[clang] [clang][powerpc][wasm][systemz][x86] Replace target vector popcount intrinsics with __builtin_elementwise_popcount (PR #109160)

Simon Pilgrim via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 19 02:22:14 PDT 2024


================
@@ -23,7 +23,7 @@
 static __inline__ __m512i __DEFAULT_FN_ATTRS
 _mm512_popcnt_epi16(__m512i __A)
 {
-  return (__m512i) __builtin_ia32_vpopcntw_512((__v32hi) __A);
+  return (__m512i)__builtin_elementwise_popcount((__v32hi)__A);
----------------
RKSimon wrote:

I've updated all the x86 cases to use unsigned for consistency - `__builtin_elementwise_popcount` doesn't really care, although it expects src/dst types to match (although x86 casts back to _mXXXi types anyway).

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


More information about the cfe-commits mailing list