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

Shilei Tian via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 27 17:05:29 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);
----------------
shiltian wrote:

Yeah, I agree that assertion sounds better. We definitely don't want to have any hidden behavior in those interfaces. If a MI is erased, this will "reset" the destination register back to a generic one right, since the definition is gone?

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


More information about the llvm-commits mailing list