[PATCH] D45181: [RISCV] Add diff relocation support for RISC-V

Luís Marques via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 16 08:30:21 PDT 2019


luismarques added a comment.

In D45181#1488084 <https://reviews.llvm.org/D45181#1488084>, @luismarques wrote:

> Use SHF_EXECINSTR flag may be not enough. Several debug information sections also need relocations. For example, although it has no need to generate relocations for `Length` in FDE, it needs relocations for `Address Range` in FDE. These two attributes are located in the same section and the section has no SHF_EXECINSTR flag.


I think the point is to check for the SHF_EXECINSTR flag *not* in the section where the value is going to be generated but for the sections of the referenced symbols. If the symbols are in a code section then their addresses can change due to the relaxations. Since relaxations only occur in code sections (right?) then this isn't an issue for symbols in non-code sections, and therefore you can evaluate the fixup and avoid emitting a relocation.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D45181





More information about the llvm-commits mailing list