[PATCH] D94956: [yaml2obj/obj2yaml] - Improve dumping/creating of ELF versioning sections.
George Rimar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 19 02:05:07 PST 2021
grimar created this revision.
grimar added reviewers: jhenderson, MaskRay.
Herald added subscribers: rupprecht, hiraditya, emaste.
Herald added a reviewer: espindola.
grimar requested review of this revision.
Herald added a project: LLVM.
This makes the following improvements.
For `SHT_GNU_versym`:
- yaml2obj: set `sh_link` to index of `.dynsym` section automatically.
For `SHT_GNU_verdef`:
- yaml2obj: set `sh_link` to index of `.dynstr` section automatically.
- yaml2obj: set `sh_info` field automatically.
- obj2yaml: don't dump the `Info` field when its value matches the number of version definitions.
For `SHT_GNU_verneed`:
- yaml2obj: set `sh_link` to index of `.dynstr` section automatically.
- yaml2obj: set `sh_info` field automatically.
- obj2yaml: don't dump the `Info` field when its value matches the number of version dependencies.
Also, simplifies few test cases.
https://reviews.llvm.org/D94956
Files:
lld/test/ELF/invalid/verneed-shared.test
llvm/include/llvm/ObjectYAML/ELFYAML.h
llvm/lib/ObjectYAML/ELFEmitter.cpp
llvm/lib/ObjectYAML/ELFYAML.cpp
llvm/test/Object/invalid.test
llvm/test/tools/llvm-objdump/ELF/verdef.test
llvm/test/tools/llvm-objdump/ELF/verneed.test
llvm/test/tools/llvm-readobj/ELF/all.test
llvm/test/tools/llvm-readobj/ELF/dyn-symbols.test
llvm/test/tools/llvm-readobj/ELF/hidden-versym.test
llvm/test/tools/llvm-readobj/ELF/merged.test
llvm/test/tools/llvm-readobj/ELF/reloc-symbol-with-versioning.test
llvm/test/tools/llvm-readobj/ELF/section-types.test
llvm/test/tools/llvm-readobj/ELF/verdef-invalid.test
llvm/test/tools/llvm-readobj/ELF/verneed-flags.yaml
llvm/test/tools/llvm-readobj/ELF/verneed-invalid.test
llvm/test/tools/llvm-readobj/ELF/versioninfo.test
llvm/test/tools/llvm-readobj/ELF/versym-invalid.test
llvm/test/tools/obj2yaml/ELF/verdef-section.yaml
llvm/test/tools/obj2yaml/ELF/verneed-section.yaml
llvm/test/tools/yaml2obj/ELF/override-shname.yaml
llvm/test/tools/yaml2obj/ELF/override-shoffset.yaml
llvm/test/tools/yaml2obj/ELF/override-shsize.yaml
llvm/test/tools/yaml2obj/ELF/override-shtype.yaml
llvm/test/tools/yaml2obj/ELF/verdef-section.yaml
llvm/test/tools/yaml2obj/ELF/verneed-section.yaml
llvm/test/tools/yaml2obj/ELF/versym-section.yaml
llvm/tools/obj2yaml/elf2yaml.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D94956.317493.patch
Type: text/x-patch
Size: 32468 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210119/f140b66a/attachment.bin>
More information about the llvm-commits
mailing list