aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Transforms/IPO/PassManagerBuilder.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/Transforms/IPO/PassManagerBuilder.h')
-rw-r--r--include/llvm/Transforms/IPO/PassManagerBuilder.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/llvm/Transforms/IPO/PassManagerBuilder.h b/include/llvm/Transforms/IPO/PassManagerBuilder.h
index a1b4f5c..47ce902 100644
--- a/include/llvm/Transforms/IPO/PassManagerBuilder.h
+++ b/include/llvm/Transforms/IPO/PassManagerBuilder.h
@@ -73,6 +73,10 @@ public:
/// cleanup-ish optimizations.
EP_ScalarOptimizerLate,
+ /// EP_OptimizerLast -- This extension point allows adding passes that
+ /// run after everything else.
+ EP_OptimizerLast,
+
/// EP_EnabledOnOptLevel0 - This extension point allows adding passes that
/// should not be disabled by O0 optimization level. The passes will be
/// inserted after the inlining pass.
@@ -127,8 +131,9 @@ public:
/// populateModulePassManager - This sets up the primary pass manager.
void populateModulePassManager(PassManagerBase &MPM);
void populateLTOPassManager(PassManagerBase &PM, bool Internalize,
- bool RunInliner);
+ bool RunInliner, bool DisableGVNLoadPRE = false);
};
+
/// Registers a function for adding a standard set of passes. This should be
/// used by optimizer plugins to allow all front ends to transparently use
/// them. Create a static instance of this class in your plugin, providing a
@@ -139,5 +144,6 @@ struct RegisterStandardPasses {
PassManagerBuilder::addGlobalExtension(Ty, Fn);
}
};
+
} // end namespace llvm
#endif