[llvm] Fold SVE mul and mul_u to neg during isel (PR #160828)
Paul Walker via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 2 04:33:01 PDT 2025
================
@@ -723,6 +723,16 @@ class SVE2p1_Cvt_VG2_Pat<string name, SDPatternOperator intrinsic, ValueType out
: Pat<(out_vt (intrinsic in_vt:$Zn1, in_vt:$Zn2)),
(!cast<Instruction>(name) (REG_SEQUENCE ZPR2Mul2, in_vt:$Zn1, zsub0, in_vt:$Zn2, zsub1))>;
+class SVE_2_Op_Neg_One_Replace_Pat<ValueType vt, SDPatternOperator op, ValueType pt,
----------------
paulwalker-arm wrote:
Now that each class only contains a single pattern and the patterns themselves are specific to a single instruction I agree with @Lukacma that it will be cleaner to have the patterns inlined into `AArch64SVEInstrInfo.td`.
https://github.com/llvm/llvm-project/pull/160828
More information about the llvm-commits
mailing list