[PATCH] D83655: [AsmPrinter] Split up .gcc_except_table

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 13 13:50:28 PDT 2020


MaskRay added a comment.

In D83655#2148310 <https://reviews.llvm.org/D83655#2148310>, @psmith wrote:

> What would happen if there was a single .text section containing multiple functions, would that produce multiple .gcc_except_table sections each with a SHF_LINK_ORDER dependency on the single .text section? I think that this is OK as there are no other sections that refer to .gcc_except_table and there doesn't need to be a total order. Ideally we could have one .gcc_except_table section per associated .text section.


For

  .section .text.foo,"ax"
  .globl foo, bar
  foo: ret
  bar: ret
  
  .section .gcc_except_table,"ao", at progbits,foo; .quad 0
  .section .gcc_except_table,"ao", at progbits,bar; .quad 0

There will be two `.gcc_except_table` with the same sh_link (llvm-mc & GNU as>=2.35). Linkers can handle the output correctly. `.gcc_except_table` doesn't have an order requirement.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D83655





More information about the llvm-commits mailing list