[all-commits] [llvm/llvm-project] 957780: [JITLink][AArch32] Implement R_ARM_PREL31 and proc...

Stefan Gränitz via All-commits all-commits at lists.llvm.org
Mon Jan 22 18:37:44 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9577806b1e6ce06bece48d96b39035f4cee9137d
      https://github.com/llvm/llvm-project/commit/9577806b1e6ce06bece48d96b39035f4cee9137d
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s

  Log Message:
  -----------
  [JITLink][AArch32] Implement R_ARM_PREL31 and process .ARM.exidx sections (#79044)

`R_ARM_PREL31` is a 31-bits relative data relocation where the
most-significant bit is preserved. It's used primarily in `.ARM.exidx`
sections, which we skipped processing until now, because we didn't
support the relocation type. This was implemented in RuntimeDyld with
https://reviews.llvm.org/D25069 and I implemented it in a similar way in
JITLink in order to reach feature parity.




More information about the All-commits mailing list