[all-commits] [llvm/llvm-project] 519a73: RISCV: adjust relocation emission

Saleem Abdulrasool via All-commits all-commits at lists.llvm.org
Fri Sep 30 08:29:28 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 519a73111b40f0df1926879ab71e662b718bf109
      https://github.com/llvm/llvm-project/commit/519a73111b40f0df1926879ab71e662b718bf109
  Author: Saleem Abdulrasool <compnerd at compnerd.org>
  Date:   2022-09-30 (Fri, 30 Sep 2022)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
    M llvm/test/MC/RISCV/riscv64-64b-pcrel.s

  Log Message:
  -----------
  RISCV: adjust relocation emission

Simplify and make the pair-wise relocation more precise.  If either of
the symbol references are textual, the relocation must be delayed.  If
the difference is across sections, delay it as well which partially
matches the behaviour of gas.  We unfortunately do not handle the case
where the difference references a symbol that is not yet defined.  In
such a case, we simply fail to resolve the difference, which should
hopefully not be too onerous (particularly since no other target
supports cross-section references and it is not clear if this was
intentional on the part of RISCV).

Differential Revision: https://reviews.llvm.org/D132262
Reviewed By: @MaskRay




More information about the All-commits mailing list