summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/InstCombine/InstCombine.h
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Transforms/InstCombine/InstCombine.h')
-rw-r--r--llvm/lib/Transforms/InstCombine/InstCombine.h14
1 files changed, 4 insertions, 10 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombine.h b/llvm/lib/Transforms/InstCombine/InstCombine.h
index f22b5b07b25..e404581bd91 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombine.h
+++ b/llvm/lib/Transforms/InstCombine/InstCombine.h
@@ -104,8 +104,7 @@ public:
/// combine them, as well as the pass infrastructure for running this as part
/// of the LLVM pass pipeline.
class LLVM_LIBRARY_VISIBILITY InstCombiner
- : public FunctionPass,
- public InstVisitor<InstCombiner, Instruction *> {
+ : public InstVisitor<InstCombiner, Instruction *> {
AssumptionCache *AC;
const DataLayout *DL;
TargetLibraryInfo *TLI;
@@ -124,21 +123,16 @@ public:
typedef IRBuilder<true, TargetFolder, InstCombineIRInserter> BuilderTy;
BuilderTy *Builder;
- static char ID; // Pass identification, replacement for typeid
- InstCombiner()
- : FunctionPass(ID), DL(nullptr), DT(nullptr), LI(nullptr),
- Builder(nullptr) {
+ InstCombiner() : DL(nullptr), DT(nullptr), LI(nullptr), Builder(nullptr) {
MinimizeSize = false;
- initializeInstCombinerPass(*PassRegistry::getPassRegistry());
}
public:
- bool runOnFunction(Function &F) override;
+ bool run(Function &F, AssumptionCache *AC, const DataLayout *DL,
+ TargetLibraryInfo *TLI, DominatorTree *DT, LoopInfo *LI);
bool DoOneIteration(Function &F, unsigned ItNum);
- void getAnalysisUsage(AnalysisUsage &AU) const override;
-
AssumptionCache *getAssumptionCache() const { return AC; }
const DataLayout *getDataLayout() const { return DL; }
OpenPOWER on IntegriCloud