[llvm] [ConstraintElim] Simplify cmp after uadd.sat/usub.sat (PR #135603)

Yingwei Zheng via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 14 02:29:30 PDT 2025


================
@@ -1891,13 +1893,26 @@ static bool eliminateConstraints(Function &F, DominatorTree &DT, LoopInfo &LI,
         AddFact(CmpInst::ICMP_SGE, CB.Inst, X);
         continue;
       }
-
       if (auto *MinMax = dyn_cast<MinMaxIntrinsic>(CB.Inst)) {
         Pred = ICmpInst::getNonStrictPredicate(MinMax->getPredicate());
         AddFact(Pred, MinMax, MinMax->getLHS());
         AddFact(Pred, MinMax, MinMax->getRHS());
         continue;
       }
+      if (auto *SatI = dyn_cast<SaturatingInst>(CB.Inst)) {
+        switch (SatI->getIntrinsicID()) {
+        default:
+          continue;
----------------
dtcxzyw wrote:

```suggestion
          llvm_unreachable("Unexpected intrinsic.");
```


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


More information about the llvm-commits mailing list