[PATCH] D61584: [DebugInfo] Some fields do not need relocations even relax is enabled.

James Clarke via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 16 05:06:15 PDT 2019


jrtc27 added a comment.

Why do we need this flag; can we not already determine this (either in generic code or the target backends)? Anything where all symbols referenced are not in `SHF_EXECINSTR` sections can be evaluated even with relaxations, which covers all these cases:

1. `MCDwarfLineTableHeader::Emit`'s `LineStartSym`/`LineEndSym`/`ProEndSym` are in `.debug_line.dwo` which is just `SHF_EXCLUDE`
2. `EmitGenDwarfInfo`'s `InfoStart`/`InfoEnd` are in `.debug_info.dwo` which is just `SHF_EXCLUDE`
3. `FrameEmitterImpl::EmitCIE`'s `sectionStart`/`sectionEnd` are either in `.eh_frame` which is `SHF_ALLOC` (and also `SHF_WRITE` on non-x86 Solaris), or in `.debug_frame` which has no flags
4. `FrameEmitterImpl::EmitFDE`'s `fdeStart`/`fdeEnd`/`cieStart`/`SectionStart` should all also be in the same section as above


Repository:
  rL LLVM

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

https://reviews.llvm.org/D61584





More information about the llvm-commits mailing list