[all-commits] [llvm/llvm-project] 50a278: [JITLink][NFC] Add TableManager to replace PerGrap...
luxufan via All-commits
all-commits at lists.llvm.org
Wed Oct 6 06:28:11 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 50a278c2aef21bf9b78865ad7c7554e506434b9c
https://github.com/llvm/llvm-project/commit/50a278c2aef21bf9b78865ad7c7554e506434b9c
Author: luxufan <932494295 at qq.com>
Date: 2021-10-06 (Wed, 06 Oct 2021)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
R llvm/lib/ExecutionEngine/JITLink/PerGraphTLSInfoEntryBuilder.h
A llvm/lib/ExecutionEngine/JITLink/TableManager.h
Log Message:
-----------
[JITLink][NFC] Add TableManager to replace PerGraph...Builder pass
This patch add a TableManager which reponsible for fixing edges that need entries to reference the target symbol and constructing such entries.
In the past, the PerGraphGOTAndPLTStubsBuilder pass was used to build GOT and PLT entry, and the PerGraphTLSInfoEntryBuilder pass was used to build TLSInfo entry. By generalizing the behavior of building entry, I added a TableManager which could be reused when built GOT, PLT and TLSInfo entries.
If this patch makes sense and can be accepted, I will apply the TableManager to other targets(MachO_x86_64, MachO_arm64, ELF_riscv), and delete the file PerGraphGOTAndPLTStubsBuilder.h
Reviewed By: lhames
Differential Revision: https://reviews.llvm.org/D110383
More information about the All-commits
mailing list