diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2021-07-29 20:15:26 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2021-07-29 20:15:26 +0000 |
| commit | 344a3780b2e33f6ca763666c380202b18aab72a3 (patch) | |
| tree | f0b203ee6eb71d7fdd792373e3c81eb18d6934dd /llvm/lib/Analysis/AssumptionCache.cpp | |
| parent | b60736ec1405bb0a8dd40989f67ef4c93da068ab (diff) | |
vendor/llvm-project/llvmorg-13-init-16847-g88e66fa60ae5vendor/llvm-project/llvmorg-12.0.1-rc2-0-ge7dac564cd0evendor/llvm-project/llvmorg-12.0.1-0-gfed41342a82f
Diffstat (limited to 'llvm/lib/Analysis/AssumptionCache.cpp')
| -rw-r--r-- | llvm/lib/Analysis/AssumptionCache.cpp | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/llvm/lib/Analysis/AssumptionCache.cpp b/llvm/lib/Analysis/AssumptionCache.cpp index 70053fdf8d30..0d95b33601f9 100644 --- a/llvm/lib/Analysis/AssumptionCache.cpp +++ b/llvm/lib/Analysis/AssumptionCache.cpp @@ -56,7 +56,7 @@ AssumptionCache::getOrInsertAffectedValues(Value *V) { } static void -findAffectedValues(CallInst *CI, +findAffectedValues(CallBase *CI, SmallVectorImpl<AssumptionCache::ResultElem> &Affected) { // Note: This code must be kept in-sync with the code in // computeKnownBitsFromAssume in ValueTracking. @@ -126,7 +126,7 @@ findAffectedValues(CallInst *CI, } } -void AssumptionCache::updateAffectedValues(CallInst *CI) { +void AssumptionCache::updateAffectedValues(AssumeInst *CI) { SmallVector<AssumptionCache::ResultElem, 16> Affected; findAffectedValues(CI, Affected); @@ -139,7 +139,7 @@ void AssumptionCache::updateAffectedValues(CallInst *CI) { } } -void AssumptionCache::unregisterAssumption(CallInst *CI) { +void AssumptionCache::unregisterAssumption(AssumeInst *CI) { SmallVector<AssumptionCache::ResultElem, 16> Affected; findAffectedValues(CI, Affected); @@ -202,22 +202,19 @@ void AssumptionCache::scanFunction() { // Go through all instructions in all blocks, add all calls to @llvm.assume // to this cache. for (BasicBlock &B : F) - for (Instruction &II : B) - if (match(&II, m_Intrinsic<Intrinsic::assume>())) - AssumeHandles.push_back({&II, ExprResultIdx}); + for (Instruction &I : B) + if (isa<AssumeInst>(&I)) + AssumeHandles.push_back({&I, ExprResultIdx}); // Mark the scan as complete. Scanned = true; // Update affected values. for (auto &A : AssumeHandles) - updateAffectedValues(cast<CallInst>(A)); + updateAffectedValues(cast<AssumeInst>(A)); } -void AssumptionCache::registerAssumption(CallInst *CI) { - assert(match(CI, m_Intrinsic<Intrinsic::assume>()) && - "Registered call does not call @llvm.assume"); - +void AssumptionCache::registerAssumption(AssumeInst *CI) { // If we haven't scanned the function yet, just drop this assumption. It will // be found when we scan later. if (!Scanned) |
