[all-commits] [llvm/llvm-project] 2ed91d: [JITLink] Add initial Aarch64 support

Stefan Gränitz via All-commits all-commits at lists.llvm.org
Fri Sep 3 01:53:04 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2ed91da0f1f312aedcfa01786fe991e33c6cf1fe
      https://github.com/llvm/llvm-project/commit/2ed91da0f1f312aedcfa01786fe991e33c6cf1fe
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2021-09-03 (Fri, 03 Sep 2021)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/JITLink/ELF_aarch64.h
    A llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h
    M llvm/lib/ExecutionEngine/JITLink/CMakeLists.txt
    M llvm/lib/ExecutionEngine/JITLink/ELF.cpp
    A llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
    A llvm/lib/ExecutionEngine/JITLink/aarch64.cpp
    A llvm/test/ExecutionEngine/JITLink/AArch64/ELF_aarch64_minimal.s

  Log Message:
  -----------
  [JITLink] Add initial Aarch64 support

Set up basic infrastructure for 64-bit ARM architecture support in JITLink. It allows for loading a minimal object file and resolving a single relocation. Advanced features like GOT and PLT handling or relaxations were intentionally left out for the moment.

This patch follows the idea to keep implementations for ARM (32-bit) and Aaarch64 (64-bit) separate, because:
* it might be easier to share code with the MachO "arm64" JITLink backend
* LLVM has individual targets for ARM and Aaarch64 as well

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D108986




More information about the All-commits mailing list