[llvm] [GlobalISel] Fold G_ICMP if possible (PR #86357)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 26 00:27:02 PDT 2024


================
@@ -7638,7 +7644,7 @@ LegalizerHelper::lowerSADDO_SSUBO(MachineInstr &MI) {
   // (LHS) if and only if the other operand (RHS) is (non-zero) positive,
   // otherwise there will be overflow.
   auto ResultLowerThanLHS =
-      MIRBuilder.buildICmp(CmpInst::ICMP_SLT, BoolTy, Dst0, LHS);
+      MIRBuilder.buildICmp(CmpInst::ICMP_SLT, BoolTy, Tmp, LHS);
----------------
arsenm wrote:

Last time I looked at the CSEMIRBuilder I couldn't decide what to do. If you pass in existing registers, you lose out on the auto-folding, but it's not broken

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


More information about the llvm-commits mailing list