[llvm] [ConstraintElim] Add facts implied by llvm.abs (PR #73189)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 28 02:25:52 PST 2023


================
@@ -984,32 +984,37 @@ void State::addInfoFor(BasicBlock &BB) {
       continue;
     }
 
-    if (match(&I, m_Intrinsic<Intrinsic::ssub_with_overflow>())) {
+    auto *II = dyn_cast<IntrinsicInst>(&I);
+    Intrinsic::ID ID = II ? II->getIntrinsicID() : Intrinsic::not_intrinsic;
+    switch (ID) {
+    case Intrinsic::assume:
+      Value *A, *B;
+      CmpInst::Predicate Pred;
+      if (match(I.getOperand(0), m_ICmp(Pred, m_Value(A), m_Value(B)))) {
----------------
fhahn wrote:

indent level can be reduced by checking `!match()` and have early break

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


More information about the llvm-commits mailing list