[all-commits] [llvm/llvm-project] f10d45: Reland "[JITLink] Add an initial implementation of...

wanglei via All-commits all-commits at lists.llvm.org
Wed Jan 18 04:49:43 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f10d452db841f5367f84f6db4841233365a2d03e
      https://github.com/llvm/llvm-project/commit/f10d452db841f5367f84f6db4841233365a2d03e
  Author: wanglei <wanglei at loongson.cn>
  Date:   2023-01-18 (Wed, 18 Jan 2023)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/JITLink/ELF_loongarch.h
    A llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/lib/ExecutionEngine/JITLink/CMakeLists.txt
    M llvm/lib/ExecutionEngine/JITLink/ELF.cpp
    A llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
    A llvm/lib/ExecutionEngine/JITLink/loongarch.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/Target/LoongArch/TargetInfo/LoongArchTargetInfo.cpp
    A llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s
    A llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s
    A llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_relocations.s
    A llvm/test/ExecutionEngine/JITLink/LoongArch/lit.local.cfg

  Log Message:
  -----------
  Reland "[JITLink] Add an initial implementation of JITLink for ELF/LoongArch"

This implementation supports basic relocation types and adds EHFrame,
Got/Plt handling passes.
This patch also enables JIT support for LoongArch64.

With this patch, I successfully run hello.ll and simple_throw.ll
(which is generated from test-suite/SingleSource/Regression/C++/EH/simple_throw.cpp)
using the `lli` command with options `--jit-kind=orc --jit-linker=jitlink`.

Note: `hasJIT` property of LoongArch32 remains false as there is no
validation environment.

New changes: Since LoongArch does not support RuntimeDyld, JITLink is set
by default.  Add a null-terminator to eh-frame sections. This should fix
the test failure on LoongArch bot.
(https://lab.llvm.org/staging/#/builders/236/builds/896)

Reviewed By: lhames

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




More information about the All-commits mailing list