[PATCH] D73674: Propeller: LLVM support for basic block sections (Base Patch - Part 2)

David Li via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 3 15:54:15 PST 2020


davidxl added a comment.

Also missing a test case on cold basic blocks.



================
Comment at: llvm/lib/CodeGen/MachineBasicBlock.cpp:73
+    // compress the symbol names significantly.  The basic blocks for function
+    // foo are named a.BB.foo, aa.BB.foo, and so on.
+    if (BasicBlockSymbols) {
----------------
Is this the best encoding scheme?  I suppose in many cases, a single byte is enough? (e.g. total number of blocks in a func is small). Or this allows better string compression?


================
Comment at: llvm/test/CodeGen/X86/basicblock-sections-eh.ll:84
+;LINUX-SECTIONS: .section	.text._Z3foob.eh,"ax", at progbits
+;LINUX-SECTIONS: l{{[a|r]*}}.BB._Z3foob:
----------------
Make test more strict to test landing pad blocks are in the same section?


================
Comment at: llvm/test/CodeGen/X86/basicblock-sections-listbb.ll:35
+; LINUX-SECTIONS-NOT: .section        .text._Z3bazb.r.BB._Z3bazb,"ax", at progbits,unique
+; LINUX-SECTIONS: r.BB._Z3bazb:
+; LINUX-SECTIONS: .section        .text._Z3bazb.rr.BB._Z3bazb,"ax", at progbits,unique
----------------
how to tell if this is the id 2 section?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73674/new/

https://reviews.llvm.org/D73674





More information about the llvm-commits mailing list