[PATCH] D17555: [Feedback requested] Implement cold spliting

Amaury SECHET via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 29 10:11:10 PST 2016


deadalnix added inline comments.

================
Comment at: lib/CodeGen/AsmPrinter/AsmPrinter.cpp:895
@@ +894,3 @@
+      if (IsCold) {
+        CurSection = ColdSection;
+        ColdFragmentStart = &MBB;
----------------
davidxl wrote:
> deadalnix wrote:
> > In practice it works, as this ends up being more or less what you get out of the MachineBlockPlacement pass. Ideally, that's be indeed preferable that MachineBlockPlacement flag a BB after which all BB are cold or something.
> > 
> > Having one split is preferable, as well as having all exception unwinding related code is the same fragment. You don't want to jump back and forth between cold and hot code, and generating LSDA would become way too hairy =.
> This does not look like a good assumption to make about MBP. MBP does outline cold blocks from loops and layout them last, but not all such blocks are suitable to be split out.
I'm working toward MBP being able to flag a block. Note that MBP already outline blocks in loop if they run < 20% of the time.


http://reviews.llvm.org/D17555





More information about the llvm-commits mailing list