[PATCH] D65410: [PassManager] First Pass implementation at -O1 pass pipeline

Hal Finkel via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Aug 3 11:36:57 PDT 2019

hfinkel added a comment.

Thanks for starting on this. Can you go ahead and replace the sroa calls with mem2reg calls for `O1` and then see what that does to the performance? That strikes me as a major change, but certainly one that potentially makes sense, so I'd rather we go ahead and test it now before we make decisions about other adjustments.

FWIW, I thought that we might run InstCombine less often (or maybe replace it with InstSimplify, in some places). Did you try that?

Comment at: llvm/lib/Transforms/IPO/PassManagerBuilder.cpp:362
+  // TODO: Investigate the cost/benefit of tail call elimination on debugging.
   MPM.add(createTailCallEliminationPass()); // Eliminate tail calls
By definition, this loses information from the call stack, no?

Comment at: llvm/lib/Transforms/IPO/PassManagerBuilder.cpp:432
+  // TODO: Investigate if this is too expensive at O1.
   MPM.add(createAggressiveDCEPass());         // Delete dead instructions
Yes, I'd fall back to using regular DCE.

  rG LLVM Github Monorepo



More information about the cfe-commits mailing list