[all-commits] [llvm/llvm-project] ab472c: [JITLink][ELF][AArch64] Implement R_AARCH64_LDST*_...

Sunho Kim via All-commits all-commits at lists.llvm.org
Tue Jun 7 17:32:28 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ab472c9615447c8a036d198df7debd4fd9b2e8cc
      https://github.com/llvm/llvm-project/commit/ab472c9615447c8a036d198df7debd4fd9b2e8cc
  Author: Sunho Kim <ksunhokim123 at gmail.com>
  Date:   2022-06-07 (Tue, 07 Jun 2022)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_aarch64_relocations.s

  Log Message:
  -----------
  [JITLink][ELF][AArch64] Implement R_AARCH64_LDST*_ABS_LO12_NC relocation types.

Implement R_AARCH64_LDST*_ABS_LO12_NC relocaiton entries by reusing PageOffset21
generic relocation edge. The difference between MachO backend is that in ELF,
the shift value is explicitly given by relocation type. lld generates the
relocation type that matches with instruction bitwidth, so getting the shift
value implicitly from instruction bytes should be fine in typical use cases.




More information about the All-commits mailing list