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

James Henderson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 16 00:30:46 PDT 2020


jhenderson added a comment.

In D83655#2154937 <https://reviews.llvm.org/D83655#2154937>, @MaskRay wrote:

> I failed to think about one problem. We can't use SHF_LINK_ORDER because mixing SHF_LINK_ORDER sections and non-SHF_LINK_ORDER sections are disallowed by linkers.
>
> GNU ld: `.gcc_except_table has both ordered [`.gcc_except_table' in a.o] and unordered [`.gcc_except_table' in b.o] sections`
>  LLD: `a.o:(.gcc_except_table): SHF_LINK_ORDER sections in .gcc_except_table are not contiguous` I relaxed the restriction a bit (D77007 <https://reviews.llvm.org/D77007>) but non-contignuous SHF_LINK_ORDER sections are still not allowed.
>
> It is a bit unfortunate that the original semantics (order requirement) of SHF_LINK_ORDER imposes an unnecessary restriction.
>
> Created a generic-abi & binutils thread: https://groups.google.com/forum/#!topic/generic-abi/hgx_m1aXqUo


I've just posted on there too, as I have a similar problem with fragmenting DWARF sections (which would require a mix of interleaved common and SHF_LINK_ORDER (but not actually ordered) sections. I think SHF_LINK_ORDER is maybe not the right tool for the job in this context, because of the ordering requirement as you mention.


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