[PATCH] D28042: [PM] Introduce a reasonable port of the main per-module pass pipeline from the old pass manager in the new one.

Mehdi AMINI via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 21 22:09:24 PST 2016


mehdi_amini accepted this revision.
mehdi_amini added a comment.
This revision is now accepted and ready to land.

LGTM, I think that'll be a good starting point for experimentation :)



================
Comment at: lib/Passes/PassBuilder.cpp:374
+  ModulePassManager MPM(DebugLogging);
+
+  // Force any function attributes we want the rest of the pipeline te observe.
----------------
chandlerc wrote:
> mehdi_amini wrote:
> > Technically the default -O{1,2,3} pipeline starts with `populateFunctionPassManager` (which runs ` -simplifycfg -domtree -sroa -early-cse -lower-expect`)
> I have that here in EarlyFPM. I just lifted the Force and Infer up because they are designed to be "as early as possible" but were module passes and so challenging before.
Oh right, I missed it because of the motion of the FunctionAttrs passes.


https://reviews.llvm.org/D28042





More information about the llvm-commits mailing list