[clang] [Headers][X86] Use `__builtin_elementwise_ctlz` rather avx512cd intrinsics. (PR #155089)

via cfe-commits cfe-commits at lists.llvm.org
Sat Aug 23 04:20:33 PDT 2025


moorabbit wrote:

>  Convert _mm_lzcnt_epi32 etc. (inc mask/maskz variants) to use __builtin_elementwise_ctlz

It's not obvious to me how the mask/maskz variants (e.g. `_mm_maskz_lzcnt_epi32`) can be refactored to use `__builtin_elementwise_ctlz`.

Is it enough to replace this call:
https://github.com/llvm/llvm-project/blob/35e733689b9b47469cbb51a90d405738146e447c/clang/lib/Headers/avx512cdintrin.h#L84

by a call to `__builtin_elementwise_ctlz`?

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


More information about the cfe-commits mailing list