[all-commits] [llvm/llvm-project] 849b36: [JITLink][NFC] Add TableManager to replace PerGrap...
luxufan via All-commits
all-commits at lists.llvm.org
Thu Oct 14 08:11:01 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 849b36bf6f5273c2539a18b4a9c79ea1e136eb0a
https://github.com/llvm/llvm-project/commit/849b36bf6f5273c2539a18b4a9c79ea1e136eb0a
Author: luxufan <932494295 at qq.com>
Date: 2021-10-14 (Thu, 14 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