reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/IPO/PassManagerBuilder.cpp
  323   MPM.add(createSROAPass());
  324   MPM.add(createEarlyCSEPass(true /* Enable mem-ssa. */)); // Catch trivial redundancies
  326     MPM.add(createGVNHoistPass());
  328     MPM.add(createGVNSinkPass());
  329     MPM.add(createCFGSimplificationPass());
  333   MPM.add(createSpeculativeExecutionIfHasBranchDivergencePass());
  334   MPM.add(createJumpThreadingPass());         // Thread jumps.
  335   MPM.add(createCorrelatedValuePropagationPass()); // Propagate conditionals
  336   MPM.add(createCFGSimplificationPass());     // Merge & remove BBs
  339     MPM.add(createAggressiveInstCombinerPass());
  340   addInstructionCombiningPass(MPM);
  342     MPM.add(createLibCallsShrinkWrapPass());
  343   addExtensionsToPM(EP_Peephole, MPM);
  347     MPM.add(createPGOMemOPSizeOptLegacyPass());
  349   MPM.add(createTailCallEliminationPass()); // Eliminate tail calls
  350   MPM.add(createCFGSimplificationPass());     // Merge & remove BBs
  351   MPM.add(createReassociatePass());           // Reassociate expressions
  358     MPM.add(createLoopInstSimplifyPass());
  359     MPM.add(createLoopSimplifyCFGPass());
  362   MPM.add(createLoopRotatePass(SizeLevel == 2 ? 0 : -1));
  363   MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap));
  365     MPM.add(createSimpleLoopUnswitchLegacyPass());
  367     MPM.add(createLoopUnswitchPass(SizeLevel || OptLevel < 3, DivergentTarget));
  371   MPM.add(createCFGSimplificationPass());
  372   addInstructionCombiningPass(MPM);
  374   MPM.add(createIndVarSimplifyPass());        // Canonicalize indvars
  375   MPM.add(createLoopIdiomPass());             // Recognize idioms like memset.
  376   addExtensionsToPM(EP_LateLoopOptimizations, MPM);
  377   MPM.add(createLoopDeletionPass());          // Delete dead loops
  380     MPM.add(createLoopInterchangePass()); // Interchange loops
  383   MPM.add(createSimpleLoopUnrollPass(OptLevel, DisableUnrollLoops,
  385   addExtensionsToPM(EP_LoopOptimizerEnd, MPM);
  389     MPM.add(createMergedLoadStoreMotionPass()); // Merge ld/st in diamonds
  390     MPM.add(NewGVN ? createNewGVNPass()
  393   MPM.add(createMemCpyOptPass());             // Remove memcpy / form memset
  394   MPM.add(createSCCPPass());                  // Constant prop with SCCP
  399   MPM.add(createBitTrackingDCEPass());        // Delete dead bit computations
  403   addInstructionCombiningPass(MPM);
  404   addExtensionsToPM(EP_Peephole, MPM);
  405   MPM.add(createJumpThreadingPass());         // Thread jumps
  406   MPM.add(createCorrelatedValuePropagationPass());
  407   MPM.add(createDeadStoreEliminationPass());  // Delete dead stores
  408   MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap));
  410   addExtensionsToPM(EP_ScalarOptimizerLate, MPM);
  413     MPM.add(createLoopRerollPass());
  415   MPM.add(createAggressiveDCEPass());         // Delete dead instructions
  416   MPM.add(createCFGSimplificationPass()); // Merge & remove BBs
  418   addInstructionCombiningPass(MPM);
  419   addExtensionsToPM(EP_Peephole, MPM);
  423     MPM.add(createControlHeightReductionLegacyPass());