diff options
author | Michael Kruse <llvm-project@meinersbur.de> | 2021-02-11 12:03:20 -0600 |
---|---|---|
committer | Michael Kruse <llvm-project@meinersbur.de> | 2021-02-11 12:17:38 -0600 |
commit | 606aa622b23855784c5db5b48b1c4800467fd851 (patch) | |
tree | 49444bd16e8be847c892478f6f86dc5af482fcdf /llvm/lib/Transforms/Utils/PredicateInfo.cpp | |
parent | f8772da8cc9a0be65c9ba028c2b5a895c1ed4f91 (diff) | |
download | llvm-606aa622b23855784c5db5b48b1c4800467fd851.zip llvm-606aa622b23855784c5db5b48b1c4800467fd851.tar.gz llvm-606aa622b23855784c5db5b48b1c4800467fd851.tar.bz2 |
Revert "[AssumptionCache] Avoid dangling llvm.assume calls in the cache"
This reverts commit b7d870eae7fdadcf10d0f177faa7409c2e37d776 and the
subsequent fix "[Polly] Fix build after AssumptionCache change (D96168)"
(commit e6810cab09fcbc87b6e5e4d226de0810e2f2ea38).
It caused indeterminism in the output, such that e.g. the
polly-x86_64-linux buildbot failed accasionally.
Diffstat (limited to 'llvm/lib/Transforms/Utils/PredicateInfo.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/PredicateInfo.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/Transforms/Utils/PredicateInfo.cpp b/llvm/lib/Transforms/Utils/PredicateInfo.cpp index fe69382..71b1926 100644 --- a/llvm/lib/Transforms/Utils/PredicateInfo.cpp +++ b/llvm/lib/Transforms/Utils/PredicateInfo.cpp @@ -530,11 +530,10 @@ void PredicateInfoBuilder::buildPredicateInfo() { processSwitch(SI, BranchBB, OpsToRename); } } - for (auto &AssumeVH : AC.assumptions()) { - CallInst *AssumeCI = AssumeVH.getAssumeCI(); - if (DT.isReachableFromEntry(AssumeCI->getParent())) - processAssume(cast<IntrinsicInst>(AssumeCI), AssumeCI->getParent(), - OpsToRename); + for (auto &Assume : AC.assumptions()) { + if (auto *II = dyn_cast_or_null<IntrinsicInst>(Assume)) + if (DT.isReachableFromEntry(II->getParent())) + processAssume(II, II->getParent(), OpsToRename); } // Now rename all our operations. renameUses(OpsToRename); |