User Details
- User Since
- Jul 30 2019, 2:02 PM (76 w, 5 d)
Tue, Dec 29
Can we add a test with the =list option to verify that functions not requiring basic block sections are not emitted in unique sections?
Or maybe we can use the existing basic-block-sections-list.ll by adding a new invocation without -function-sections.
Tue, Dec 22
Please also replace bb in the description of the patch with part.
Dec 13 2020
Dec 11 2020
It may be worthwhile to think about removing the second dot from the naming, i.e., foo.__bb.N -> foo.__bbN . The reason is that this further distinguishes the symbol name from symbols like __cxx_global_var_init.N plus it saves one character.
Dec 1 2020
rebase.
Nov 30 2020
Thank you for the comments @MaskRay . Are there any style guidelines for the test files? I wasn't able to find anything online.
- Add {{$}} to the checks.
- Add {{$}} to the checks.
Nov 25 2020
Nov 9 2020
Nov 6 2020
Thank you @grimar and @jhenderson for the thorough feedback. I will start on llvm-readobj support once I submit this patch.
- Typos/Style fix.
Nov 3 2020
- Refine tests.
Nov 2 2020
Nov 1 2020
Oct 31 2020
Oct 30 2020
+1,
Maybe worth mentioning in the description that the issue with -fbasic-block-sections is the revocations associated with @LPStart (Relocations are needed both in PIC and non-PIC mode). The no-basic-block-sections case is not affected since LPStart is omitted.
Oct 26 2020
- Remove function comment for AsmPrinter::shouldEmitLabelForBasicBlock.
- Remove excessive empty line.
Thanks for your helpful comments @grimar.
- Remove NumBlocks from the YAML key.
- Add yaml2obj test.
Oct 19 2020
Thanks again for the comments @tmsriram
- Better comments.
Oct 15 2020
Thank you for your helpful comments @tmsriram and @snehasish
- Add a private member function shouldEmitLabelForBasicBlock and call it to decide if basic blocks require symbols.
Oct 14 2020
Thanks for the comments @tmsriram.
- Remove redundant CHECK check-prefix.
- Fix the condition for emitting basic block label.
Oct 8 2020
Thanks everyone for the review. I'll go ahead and commit this and start working on D88717.
- Remove extra '#'s from Extensions.rst.
Oct 7 2020
- Format Extensions.rst.
Thanks @grimar.
I added the entry in the Extensions doc. I am not sure if my formatting is correct. I appreciate if you could please take a look.
- Add entry in docs/Extensions.rst.
- Address @grimar's comments.
- Rename test, and fix indentation.
Oct 6 2020
ping.
Oct 5 2020
Right. We won't be using the __start and __stop symbols.
If the optimization eventually will be ported to Mach-O: strlen("__llvm_prf_cnts") <= 16 so the section name can be encoded in Mach-O. __llvm_bb_addr_map is not.
Good point. Actually this shows the importance of using the section type as opposed to the section name. If necessary, we can always change the section name since we make sure we never rely on the actual name.
Revert back to using ".llvm_bb_addr_map" for the section name.
@MaskRay Do you think this is fine now?
Oct 1 2020
Me too. Thanks.
As is, MachineFunctionSplitter can utilize this without basic-block-sections which means the "nop" handling doesn't get invoked and the runtime fails to find the landing pads. This would certainly be a separate change and I'd be happy to drive that.
That is expected. Thanks for signing up.
Diff reupload.
- Rename section to __llvm_bb_addr_map.
Sep 30 2020
- Use 'action_table_base' instead of 'cst_end' with more than one call-site range.
- Rebase.
Sep 29 2020
Sep 28 2020
- Fix ARM AsmPrinter code.
- Use DenseMap for MBBSectionExceptionSyms.
- Rebase.
- Add test comment about LSDA and personality encodings.
- Make avoidZeroOffsetLandingPad static.
Thanks @MaskRay and @jhenderson.
Changed the description and the test according to your comments.
- Rename test to llvm_section_types.
- Remove non-llvm section types from the test.
- Rebase.
Sep 25 2020
Thanks @jhenderson, turned out I did need a one-line change for asmparser to work.
- Add new test for MCParser.
- Clang-format.
Sep 24 2020
- clang-format.
Thanks for the comments @MaskRay
- Rebase.
- Unify access to exception symbols for basic-block-sections and no basic-block-sections.
- other nits.
Sep 22 2020
Sep 21 2020
LGTM.
Please just keep in mind that call-site-table is not rigorously tested in LLVM.