[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 21:34:10 PST 2016


mehdi_amini added inline comments.


================
Comment at: lib/Passes/PassBuilder.cpp:374
+  ModulePassManager MPM(DebugLogging);
+
+  // Force any function attributes we want the rest of the pipeline te observe.
----------------
Technically the default -O{1,2,3} pipeline starts with `populateFunctionPassManager` (which runs ` -simplifycfg -domtree -sroa -early-cse -lower-expect`)


================
Comment at: lib/Passes/PassBuilder.cpp:773
       assert(Matches[1] == "lto" && "Not one of the matched options!");
-      addLTODefaultPipeline(MPM, L, DebugLogging);
+      MPM.addPass(buildLTODefaultPipeline(L, DebugLogging));
     }
----------------
Shame on you for not supporting ThinLTO! :p
OK, shame on me for not submitting a patch earlier...


https://reviews.llvm.org/D28042





More information about the llvm-commits mailing list