diff options
author | Yonghong Song <yhs@fb.com> | 2021-06-07 14:54:23 -0700 |
---|---|---|
committer | Yonghong Song <yhs@fb.com> | 2021-06-07 20:59:21 -0700 |
commit | 8ce45f97283460a330201a199e686e8e088805e0 (patch) | |
tree | 32d464ef4d293303bdd7cbc4a57fe2528a2aa244 /llvm/lib/Demangle/RustDemangle.cpp | |
parent | 447dfbe005a7884766c7d073566eae710aa9ed5b (diff) | |
download | llvm-8ce45f97283460a330201a199e686e8e088805e0.zip llvm-8ce45f97283460a330201a199e686e8e088805e0.tar.gz llvm-8ce45f97283460a330201a199e686e8e088805e0.tar.bz2 |
BPF: fix relocation types in lib/Object/RelocationResolver.cpp
Commit 6a2ea84600ba ("BPF: Add more relocation kinds")
added new relocations R_BPF_64_ABS64 and R_BPF_64_ABS32
for normal 64-bit and 32-bit data relocations.
This is to replace some of functionalities with
R_BPF_64_64 and R_BPF_64_32 so that new R_BPF_64_64
and R_BPF_64_32 semantics are for ld_imm64 and
call instructions only.
The BPF support in lib/Object/RelocationResolver.cpp
is used to perform normal data relocations for
the case like DWARFObjInMemory with an object file
(search function getRelocationResolver() in file
DebugInfo/DWARF/DWARFContext.cpp) or llvm-readobj
to dump ".stack_sizes" section data.
In all these casees, normal 64-bit and 32-bit relocations
are performed and such resolution resolution
is exactly what implemented in RelocationResolver.cpp.
But Commit 6a2ea84600ba missed to change
R_BPF_64_64/R_BPF_64_32 to R_BPF_64_ABS64/R_BPF_64_ABS32.
This patch fixed the issue and added a test for it
with llvm-readobj dumping ".stack_sizes" section.
Differential Revision: https://reviews.llvm.org/D103864
Diffstat (limited to 'llvm/lib/Demangle/RustDemangle.cpp')
0 files changed, 0 insertions, 0 deletions