diff options
author | Tyker <tyker1@outlook.com> | 2020-04-13 11:27:27 +0200 |
---|---|---|
committer | Tyker <tyker1@outlook.com> | 2020-04-13 12:04:51 +0200 |
commit | 813f438baaa9638529023b2218875e01ea037735 (patch) | |
tree | 6b1071a11859dc1382fb1014d10348567290825c /llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp | |
parent | 29bb046fe91ba13ddcbb0765e27f3164368b7c26 (diff) | |
download | llvm-813f438baaa9638529023b2218875e01ea037735.zip llvm-813f438baaa9638529023b2218875e01ea037735.tar.gz llvm-813f438baaa9638529023b2218875e01ea037735.tar.bz2 |
[AssumeBundles] adapt Assumption cache to assume bundles
Summary: change assumption cache to store an assume along with an index to the operand bundle containing the knowledge.
Reviewers: jdoerfert, hfinkel
Reviewed By: jdoerfert
Subscribers: hiraditya, mgrang, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D77402
Diffstat (limited to 'llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp b/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp index cd677f7..682e69f 100644 --- a/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp +++ b/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp @@ -8,6 +8,7 @@ #include "llvm/Transforms/Utils/AssumeBundleBuilder.h" #include "llvm/Analysis/AssumeBundleQueries.h" +#include "llvm/Analysis/AssumptionCache.h" #include "llvm/ADT/DenseSet.h" #include "llvm/IR/Function.h" #include "llvm/IR/InstIterator.h" @@ -222,9 +223,12 @@ IntrinsicInst *llvm::buildAssumeFromInst(Instruction *I) { return Builder.build(); } -void llvm::salvageKnowledge(Instruction *I) { - if (Instruction *Intr = buildAssumeFromInst(I)) +void llvm::salvageKnowledge(Instruction *I, AssumptionCache *AC) { + if (IntrinsicInst *Intr = buildAssumeFromInst(I)) { Intr->insertBefore(I); + if (AC) + AC->registerAssumption(Intr); + } } PreservedAnalyses AssumeBuilderPass::run(Function &F, |