[all-commits] [llvm/llvm-project] 7570d3: [yaml2obj/obj2yaml] - Add support for SHT_RELR sec...
Georgii Rymar via All-commits
all-commits at lists.llvm.org
Wed Jan 15 04:15:45 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 7570d387c21935b58afa67cb9ee17250e38721fa
https://github.com/llvm/llvm-project/commit/7570d387c21935b58afa67cb9ee17250e38721fa
Author: Georgii Rymar <grimar at accesssoftek.com>
Date: 2020-01-15 (Wed, 15 Jan 2020)
Changed paths:
M llvm/include/llvm/ObjectYAML/ELFYAML.h
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/tools/obj2yaml/elf2yaml.cpp
Log Message:
-----------
[yaml2obj/obj2yaml] - Add support for SHT_RELR sections.
Note: this is a reland with a trivial 2 lines fix in ELFState<ELFT>::writeSectionContent.
It adds a check similar to ones we already have for other sections to fix the case revealed
by bots, like http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/60744.
The encoded sequence of Elf*_Relr entries in a SHT_RELR section looks
like [ AAAAAAAA BBBBBBB1 BBBBBBB1 ... AAAAAAAA BBBBBB1 ... ]
i.e. start with an address, followed by any number of bitmaps. The address
entry encodes 1 relocation. The subsequent bitmap entries encode up to 63(31)
relocations each, at subsequent offsets following the last address entry.
More information is here:
https://github.com/llvm-mirror/llvm/blob/master/lib/Object/ELF.cpp#L272
This patch adds a support for these sections.
Differential revision: https://reviews.llvm.org/D71872
More information about the All-commits
mailing list