1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
llvm-mirror/test/tools/yaml2obj/ELF
Georgii Rymar 10f626b307 [obj2yaml,yaml2obj] - Fix issues with creating/dumping group sections.
We have the following issues related to group sections:
1) yaml2obj is unable to set the custom `sh_entsize` value, because the `EntSize`
   key is currently ignored.
2) obj2yaml is unable to dump the group section which `sh_entsize != 4`.
3) obj2yaml always dumps the "EntSize" for group sections, though
   usually we are trying to omit dumping default values when dumping keys.
   I.e. we should not print the "EntSize" key when `sh_entsize` == 4.

This patch fixes (1),(3) and adds the test case to document the behavior of (2).

Differential revision: https://reviews.llvm.org/D93854
2021-01-12 14:07:42 +03:00
..
DWARF [DWARFYAML] Make the opcode_base and the standard_opcode_lengths fields optional. 2020-10-09 11:10:03 +08:00
abiversion.yaml Reland "[lib/Support/YAMLTraits] - Don't print leading zeroes when dumping Hex8/Hex16/Hex32 types." (https://reviews.llvm.org/D90930). 2020-11-18 13:08:46 +03:00
arm-exidx-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
bb-addr-map.yaml [obj2yaml] [yaml2obj] Add yaml support for SHT_LLVM_BB_ADDR_MAP section. 2020-11-06 12:44:42 -08:00
call-graph-profile-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
class-endianness.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
comdat-broken-info.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
comdat-broken-members.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
comdat-broken.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
content-array.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
custom-fill.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
custom-null-section.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
duplicate-section-names.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
duplicate-symbol-names.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
dynamic-relocations.yaml
dynamic-section-i386.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
dynamic-section-raw-content.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
dynamic-section.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
dynamic-symbols.yaml [yaml2obj,obj2yaml] - Make Symbol::Section field optional. 2020-12-04 13:45:47 +03:00
dynsym-section.yaml [yaml2obj] - Make Section::Link field to be Optional<>. 2020-10-30 16:18:53 +03:00
dynsymtab-implicit-sections-size-content.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
eflags.yaml [yaml2obj] - Don't crash when FileHeader declares an empty Flags key in specific situations. 2020-08-18 16:09:28 +03:00
emachine.yaml
empty-symbols.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
ent-size.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
gnu-hash-section.yaml Reland "[yaml2obj][ELF] - Simplify the code that performs sections validation." 2020-10-20 16:25:33 +03:00
gnu-unique-symbols.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
group.yaml [obj2yaml,yaml2obj] - Fix issues with creating/dumping group sections. 2021-01-12 14:07:42 +03:00
hash-section.yaml [yaml2obj] - Allow specifying no tags to create empty sections in few cases. 2020-10-15 11:22:02 +03:00
header-elfdatanone.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
header-osabi.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
header-sh-fields.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
implicit-sections-addr.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
implicit-sections-info.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
implicit-sections-types.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
implicit-sections.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
invalid-docnum.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
linker-options.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
llvm-addrsig-section.yaml [yaml2obj] - Fix comments. NFC. 2020-10-19 15:13:01 +03:00
llvm-deplibs-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
local-symbols.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
mips-abi-flags.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
no-phdrs.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
nobits.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
none-value.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
note-section.yaml [yaml2obj] - Fix comments. NFC. 2020-10-19 15:13:01 +03:00
output-limit.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
override-shaddralign.yaml [yaml2obj] - Add a way to override the sh_addralign field of a section. 2020-10-27 13:03:38 +03:00
override-shflags.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
override-shname.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
override-shoffset.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
override-shsize.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
override-shtype.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
program-header-address.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
program-header-align.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
program-header-nobits.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
program-header-size-offset.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
program-header.yaml [yaml2obj] - ProgramHeaders: introduce FirstSec/LastSec instead of Sections list. 2020-11-09 13:00:50 +03:00
reloc-sec-entry-size.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
reloc-sec-info.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
reloc-sec.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
relocation-addend.yaml
relocation-explicit-symbol-index.yaml
relocation-implicit-symbol-index.yaml [llvm-readobj] - For SHT_REL relocations, don't display an addend. 2020-12-14 12:03:00 +03:00
relocation-missing-symbol.yaml
relocation-type.yaml
relr-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
section-address-assign.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
section-headers-exclude.yaml [yaml2obj][elf2yaml] - Add a support for the EntSize field for SHT_HASH sections. 2020-10-02 12:01:50 +03:00
section-headers.yaml Recommit: [llvm-readelf/obj] - Allow dumping of ELF header even if some elements are corrupt. 2020-11-09 12:53:53 +03:00
section-link.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
section-offset.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
section-ordering.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
section-size-content.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
section-type.yaml
section-unnamed.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
sh-addralign.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
sht-symtab-shndx.yaml [libObject, llvm-readobj] - Reimplement ELFFile<ELFT>::getEntry. 2020-12-18 16:52:27 +03:00
stack-sizes.yaml [yaml2obj] - Allow specifying no tags to create empty sections in few cases. 2020-10-15 11:22:02 +03:00
strtab-implicit-sections.yaml [yaml2obj] - Add support of Offset for .strtab/.shstrtab/.dynstr sections. 2020-11-02 11:56:32 +03:00
symbol-binding.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symbol-index-invalid.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symbol-index.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symbol-name.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symbol-size.yaml [yaml2obj/obj2yaml] - Make Value/Size fields of Symbol optional. 2020-12-16 13:49:57 +03:00
symbol-stother.yaml
symbol-type.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symbol-value.yaml [yaml2obj/obj2yaml] - Make Value/Size fields of Symbol optional. 2020-12-16 13:49:57 +03:00
symbol-visibility.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symbols-binding-order.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symtab-implicit-sections-flags.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symtab-implicit-sections-size-content.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symtab-shlink.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
symtab-shtype.yaml [yaml2obj] - Make the 'Machine' key optional. 2020-08-20 11:40:51 +03:00
verdef-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
verneed-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00
versym-section.yaml [yaml2obj/obj2yaml] - Add support of 'Size' and 'Content' keys for all sections. 2020-10-15 11:11:41 +03:00