/// passes at the end of the main CallGraphSCC passes and before any
/// function simplification passes run by CGPassManager.
EP_CGSCCOptimizerLate,
+
+ /// EP_FullLinkTimeOptimizationEarly - This extensions point allow adding
+ /// passes that
+ /// run at Link Time, before Full Link Time Optimization.
+ EP_FullLinkTimeOptimizationEarly,
+
+ /// EP_FullLinkTimeOptimizationLast - This extensions point allow adding
+ /// passes that
+ /// run at Link Time, after Full Link Time Optimization.
+ EP_FullLinkTimeOptimizationLast,
};
/// The Optimization Level - Specify the basic optimization level.
if (VerifyInput)
PM.add(createVerifierPass());
+ addExtensionsToPM(EP_FullLinkTimeOptimizationEarly, PM);
+
if (OptLevel != 0)
addLTOOptimizationPasses(PM);
else {
if (OptLevel != 0)
addLateLTOOptimizationPasses(PM);
+ addExtensionsToPM(EP_FullLinkTimeOptimizationLast, PM);
+
if (VerifyOutput)
PM.add(createVerifierPass());
}