[llvm] [AArch64] Improve fixed vector lowering for cttz/ctlz when sve (PR #192427)
Paul Walker via llvm-commits
llvm-commits at lists.llvm.org
Wed May 6 05:05:45 PDT 2026
================
@@ -1982,11 +1984,14 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
for (auto VT : {MVT::v8i8, MVT::v16i8, MVT::v4i16, MVT::v8i16,
MVT::v2i32, MVT::v4i32, MVT::v2i64}) {
setOperationAction(ISD::BITREVERSE, VT, Custom);
- setOperationAction(ISD::CTTZ, VT, Custom);
setOperationAction(ISD::VECREDUCE_AND, VT, Custom);
setOperationAction(ISD::VECREDUCE_OR, VT, Custom);
setOperationAction(ISD::VECREDUCE_XOR, VT, Custom);
}
+ for (auto VT : {MVT::v8i8, MVT::v16i8, MVT::v4i16, MVT::v8i16, MVT::v2i32,
+ MVT::v4i32}) {
+ setOperationAction(ISD::CTTZ, VT, Custom);
+ }
----------------
paulwalker-arm wrote:
After the rebase this shouldn't be necessary anymore because it is the behaviour already set by NEON.
https://github.com/llvm/llvm-project/pull/192427
More information about the llvm-commits
mailing list