[llvm] [ValueTracking] Skip ephemeral check as instruction is not Assume (PR #102675)

Andreas Jonson via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 9 13:20:06 PDT 2024


https://github.com/andjo403 created https://github.com/llvm/llvm-project/pull/102675

None

>From 0b489bcbe21694611e29a5834e61def9a4c0436a Mon Sep 17 00:00:00 2001
From: Andreas Jonson <andjo403 at hotmail.com>
Date: Fri, 9 Aug 2024 15:01:15 +0200
Subject: [PATCH] [ValueTracking] Skip ephemeral check as instruction is not
 Assume

---
 llvm/lib/Analysis/ValueTracking.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp
index 202eaad57d1e36..2c62081fe6005a 100644
--- a/llvm/lib/Analysis/ValueTracking.cpp
+++ b/llvm/lib/Analysis/ValueTracking.cpp
@@ -2486,7 +2486,7 @@ static bool isKnownNonNullFromDominatingCondition(const Value *V,
 
     if ((match(U, m_IDiv(m_Value(), m_Specific(V))) ||
          match(U, m_IRem(m_Value(), m_Specific(V)))) &&
-        isValidAssumeForContext(cast<Instruction>(U), CtxI, DT))
+        isValidAssumeForContext(cast<Instruction>(U), CtxI, DT, true))
       return true;
 
     // Consider only compare instructions uniquely controlling a branch



More information about the llvm-commits mailing list