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

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

@arsenm the fact that we can't really change here is, `Dst0` is defined *twice*: one is in `MI`, and another one is either `MIRBuilder.buildAdd(Dst0, LHS, RHS);` or `MIRBuilder.buildSub(Dst0, LHS, RHS);`. This still causes the crash.

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


More information about the llvm-commits mailing list