diff options
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, |