Displaying 3 results from an estimated 3 matches for "createsimpleloopunrollpass".
2018 Aug 09
3
Legacy Loop Pass Manager question
...createIndVarSimplifyPass()); // Canonicalize indvars
MPM.add(createLoopIdiomPass()); // Recognize idioms like
memset.
addExtensionsToPM(EP_LateLoopOptimizations, MPM);
MPM.add(createLoopDeletionPass()); // Delete dead loops
..
if (!DisableUnrollLoops)
MPM.add(createSimpleLoopUnrollPass(OptLevel)); // Unroll small loops
I see -debug-pass=Structure output:
Scalar Evolution Analysis
Loop Pass Manager
Induction Variable Simplification
Recognize loop idioms
Delete dead loops
Unroll loops
MergedLoadStoreMotion
Which i...
2017 Dec 21
2
Pass ordering - GVN vs. loop optimizations
...addExtensionsToPM(EP_LateLoopOptimizations, MPM);
MPM.add(createLoopDeletionPass()); // Delete dead loops
if (EnableLoopInterchange) {
MPM.add(createLoopInterchangePass()); // Interchange loops
MPM.add(createCFGSimplificationPass());
}
if (!DisableUnrollLoops)
MPM.add(createSimpleLoopUnrollPass()); // Unroll small loops
addExtensionsToPM(EP_LoopOptimizerEnd, MPM);
// <GVN is now immediately after loop optimizatons
if (OptLevel > 1) {
MPM.add(createMergedLoadStoreMotionPass()); // Merge ld/st in diamonds
MPM.add(NewGVN ? createNewGVNPass()
: crea...
2019 May 13
2
Is it possible to reproduce the result of opt -O3 manually?
I think this has to do with how the pass manager is populated when we give
-O3 vs when we give particular pass names.
Some passes have multiple createXYZPass() methods that accept arguments
too. These methods call non-default pass constructors, which in turn cause
the passes to behave in a different manner.
eg:
Pass *llvm::createLICMPass() { return new LegacyLICMPass(); }
Pass