[all-commits] [llvm/llvm-project] 55929c: [JITLink][AArch32] Implement Armv5 ldr-pc stubs an...

Stefan Gränitz via All-commits all-commits at lists.llvm.org
Tue Jan 23 09:02:29 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 55929cd679375d6ee5111edcb881103f57588d0e
      https://github.com/llvm/llvm-project/commit/55929cd679375d6ee5111edcb881103f57588d0e
  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/ELF_aarch32.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_arm.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_armv7plus.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
    R llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumb.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv6m.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv7a.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv7m.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_arm.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_thumb.s

  Log Message:
  -----------
  [JITLink][AArch32] Implement Armv5 ldr-pc stubs and use them for all pre-v7 targets (#79082)

This stub type loads an absolute address directly into the PC register.
It's the simplest and most compatible way to implement a branch
indirection across the entire address space (and probably the slowest as
well). It's the ideal fallback for all targets for which we did not
(yet) implement a more performant solution.




More information about the All-commits mailing list