[PATCH] D20276: [MBP] Reduce code size by running tail merging in MBP

Dan Gohman via llvm-commits llvm-commits at lists.llvm.org
Mon May 16 13:23:07 PDT 2016


sunfish added a subscriber: sunfish.

================
Comment at: lib/CodeGen/MachineBlockPlacement.cpp:1479
@@ +1478,3 @@
+  // TailMerge can create jump into if branches that make CFG irreducible for
+  // HW that requires structurized CFG.
+  bool EnableTailMerge = !F.getTarget().requiresStructuredCFG() &&
----------------
haicheng wrote:
> majnemer wrote:
> > deadalnix wrote:
> > > Out of curiosity, do you have example of hardware doing this ?
> > WebAssembly IIRC.
> I know old AMD GPU had this requirement.  Its IL has instructions like "if_xxx" and "endif".
WebAssembly has flexible control flow and is ok with tail merging and most other optimizations, so we're no longer using the requiresStructuredCFG() hook.


Repository:
  rL LLVM

http://reviews.llvm.org/D20276





More information about the llvm-commits mailing list