diff options
author | Max Kazantsev <max.kazantsev@azul.com> | 2018-08-30 03:39:16 +0000 |
---|---|---|
committer | Max Kazantsev <max.kazantsev@azul.com> | 2018-08-30 03:39:16 +0000 |
commit | 3c284bde3fc02a5402cb40f2df95508d591598b2 (patch) | |
tree | f6faf909c0fb968d3b523daf9659987f1e730cba /llvm/lib/Analysis/ValueTracking.cpp | |
parent | a986a312424d19f146da851c276d57cbdb717d8c (diff) | |
download | bcm5719-llvm-3c284bde3fc02a5402cb40f2df95508d591598b2.tar.gz bcm5719-llvm-3c284bde3fc02a5402cb40f2df95508d591598b2.zip |
Re-enable "[NFC] Unify guards detection"
rL340921 has been reverted by rL340923 due to linkage dependency
from Transform/Utils to Analysis which is not allowed. In this patch
this has been fixed, a new utility function moved to Analysis.
Differential Revision: https://reviews.llvm.org/D51152
llvm-svn: 341014
Diffstat (limited to 'llvm/lib/Analysis/ValueTracking.cpp')
-rw-r--r-- | llvm/lib/Analysis/ValueTracking.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp index a207a5064db..122fa72d773 100644 --- a/llvm/lib/Analysis/ValueTracking.cpp +++ b/llvm/lib/Analysis/ValueTracking.cpp @@ -26,6 +26,7 @@ #include "llvm/ADT/iterator_range.h" #include "llvm/Analysis/AliasAnalysis.h" #include "llvm/Analysis/AssumptionCache.h" +#include "llvm/Analysis/GuardUtils.h" #include "llvm/Analysis/InstructionSimplify.h" #include "llvm/Analysis/Loads.h" #include "llvm/Analysis/LoopInfo.h" @@ -1902,8 +1903,7 @@ static bool isKnownNonNullFromDominatingCondition(const Value *V, BasicBlockEdge Edge(BI->getParent(), NonNullSuccessor); if (Edge.isSingleEdge() && DT->dominates(Edge, CtxI->getParent())) return true; - } else if (Pred == ICmpInst::ICMP_NE && - match(Curr, m_Intrinsic<Intrinsic::experimental_guard>()) && + } else if (Pred == ICmpInst::ICMP_NE && isGuard(Curr) && DT->dominates(cast<Instruction>(Curr), CtxI)) { return true; } |