diff --git a/llvm/include/llvm/ObjectYAML/ELFYAML.h b/llvm/include/llvm/ObjectYAML/ELFYAML.h --- a/llvm/include/llvm/ObjectYAML/ELFYAML.h +++ b/llvm/include/llvm/ObjectYAML/ELFYAML.h @@ -84,11 +84,10 @@ Optional EPhOff; Optional EPhEntSize; Optional EPhNum; - - Optional SHEntSize; - Optional SHOff; - Optional SHNum; - Optional SHStrNdx; + Optional EShEntSize; + Optional EShOff; + Optional EShNum; + Optional EShStrNdx; }; struct SectionHeader { diff --git a/llvm/lib/ObjectYAML/ELFEmitter.cpp b/llvm/lib/ObjectYAML/ELFEmitter.cpp --- a/llvm/lib/ObjectYAML/ELFEmitter.cpp +++ b/llvm/lib/ObjectYAML/ELFEmitter.cpp @@ -417,21 +417,21 @@ else Header.e_phnum = 0; - Header.e_shentsize = - Doc.Header.SHEntSize ? (uint16_t)*Doc.Header.SHEntSize : sizeof(Elf_Shdr); + Header.e_shentsize = Doc.Header.EShEntSize ? (uint16_t)*Doc.Header.EShEntSize + : sizeof(Elf_Shdr); const bool NoShdrs = Doc.SectionHeaders && Doc.SectionHeaders->NoHeaders.getValueOr(false); - if (Doc.Header.SHOff) - Header.e_shoff = *Doc.Header.SHOff; + if (Doc.Header.EShOff) + Header.e_shoff = *Doc.Header.EShOff; else if (NoShdrs) Header.e_shoff = 0; else Header.e_shoff = SHOff; - if (Doc.Header.SHNum) - Header.e_shnum = *Doc.Header.SHNum; + if (Doc.Header.EShNum) + Header.e_shnum = *Doc.Header.EShNum; else if (!Doc.SectionHeaders) Header.e_shnum = Doc.getSections().size(); else if (NoShdrs) @@ -442,8 +442,8 @@ : 0) + /*Null section*/ 1; - if (Doc.Header.SHStrNdx) - Header.e_shstrndx = *Doc.Header.SHStrNdx; + if (Doc.Header.EShStrNdx) + Header.e_shstrndx = *Doc.Header.EShStrNdx; else if (NoShdrs || ExcludedSectionHeaders.count(".shstrtab")) Header.e_shstrndx = 0; else diff --git a/llvm/lib/ObjectYAML/ELFYAML.cpp b/llvm/lib/ObjectYAML/ELFYAML.cpp --- a/llvm/lib/ObjectYAML/ELFYAML.cpp +++ b/llvm/lib/ObjectYAML/ELFYAML.cpp @@ -872,11 +872,10 @@ IO.mapOptional("EPhOff", FileHdr.EPhOff); IO.mapOptional("EPhEntSize", FileHdr.EPhEntSize); IO.mapOptional("EPhNum", FileHdr.EPhNum); - - IO.mapOptional("SHEntSize", FileHdr.SHEntSize); - IO.mapOptional("SHOff", FileHdr.SHOff); - IO.mapOptional("SHNum", FileHdr.SHNum); - IO.mapOptional("SHStrNdx", FileHdr.SHStrNdx); + IO.mapOptional("EShEntSize", FileHdr.EShEntSize); + IO.mapOptional("EShOff", FileHdr.EShOff); + IO.mapOptional("EShNum", FileHdr.EShNum); + IO.mapOptional("EShStrNdx", FileHdr.EShStrNdx); } void MappingTraits::mapping( diff --git a/llvm/test/Object/invalid.test b/llvm/test/Object/invalid.test --- a/llvm/test/Object/invalid.test +++ b/llvm/test/Object/invalid.test @@ -181,11 +181,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHEntSize: 1 + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShEntSize: 1 ## Check that llvm-readobj reports a warning if .symtab has sh_size ## that is not a multiple of sh_entsize. @@ -306,11 +306,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHNum: 0xFF + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShNum: 0xFF ## Check llvm-readobj does not crash on a truncated ELF. @@ -521,11 +521,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHStrNdx: 0xFF + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShStrNdx: 0xFF Sections: - Name: .foo Type: SHT_PROGBITS @@ -541,11 +541,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHNum: 0x0 + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShNum: 0x0 Sections: - Type: SHT_NULL Size: 288230376151711743 @@ -560,11 +560,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHNum: 0x0 + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShNum: 0x0 Sections: - Type: SHT_NULL Size: 288230376151711744 @@ -578,11 +578,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHOff: 0xffffffffffffffff + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShOff: 0xffffffffffffffff ## Check that llvm-objdump reports an error when it tries to dump a ## symbol name and .strtab is empty. @@ -641,12 +641,12 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 ## SHN_XINDEX == 0xffff. - SHStrNdx: 0xffff + EShStrNdx: 0xffff Sections: - Type: SHT_NULL Link: 0xff diff --git a/llvm/test/tools/llvm-readobj/ELF/dynamic-reloc-no-section-headers.test b/llvm/test/tools/llvm-readobj/ELF/dynamic-reloc-no-section-headers.test --- a/llvm/test/tools/llvm-readobj/ELF/dynamic-reloc-no-section-headers.test +++ b/llvm/test/tools/llvm-readobj/ELF/dynamic-reloc-no-section-headers.test @@ -23,8 +23,8 @@ Machine: EM_X86_64 ## We simulate no section header table by ## overriding the ELF header properties. - SHOff: 0x0 - SHNum: 0x0 + EShOff: 0x0 + EShNum: 0x0 Sections: - Name: .rela.dyn Type: SHT_RELA diff --git a/llvm/test/tools/llvm-readobj/ELF/gnu-notes.test b/llvm/test/tools/llvm-readobj/ELF/gnu-notes.test --- a/llvm/test/tools/llvm-readobj/ELF/gnu-notes.test +++ b/llvm/test/tools/llvm-readobj/ELF/gnu-notes.test @@ -88,7 +88,7 @@ Type: ET_EXEC Machine: EM_X86_64 EPhEntSize: [[PHENTSIZE=56]] - SHNum: [[SHNUM=6]] + EShNum: [[SHNUM=6]] Sections: - Name: .note.ABI-tag Type: SHT_NOTE diff --git a/llvm/test/tools/llvm-readobj/ELF/hash-table.test b/llvm/test/tools/llvm-readobj/ELF/hash-table.test --- a/llvm/test/tools/llvm-readobj/ELF/hash-table.test +++ b/llvm/test/tools/llvm-readobj/ELF/hash-table.test @@ -64,8 +64,8 @@ Machine: EM_X86_64 ## We simulate no section header table by ## overriding the ELF header properties. - SHOff: 0x0 - SHNum: 0x0 + EShOff: 0x0 + EShNum: 0x0 Sections: - Name: .hash Type: SHT_HASH diff --git a/llvm/test/tools/llvm-readobj/ELF/invalid-shstrndx.test b/llvm/test/tools/llvm-readobj/ELF/invalid-shstrndx.test --- a/llvm/test/tools/llvm-readobj/ELF/invalid-shstrndx.test +++ b/llvm/test/tools/llvm-readobj/ELF/invalid-shstrndx.test @@ -46,4 +46,4 @@ Data: ELFDATA2LSB Type: ET_REL Machine: EM_X86_64 - SHStrNdx: 0xFF + EShStrNdx: 0xFF diff --git a/llvm/test/tools/llvm-readobj/ELF/many-sections.s b/llvm/test/tools/llvm-readobj/ELF/many-sections.s --- a/llvm/test/tools/llvm-readobj/ELF/many-sections.s +++ b/llvm/test/tools/llvm-readobj/ELF/many-sections.s @@ -18,12 +18,12 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHNum: 0 - SHStrNdx: 0xffff ## SHN_XINDEX + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShNum: 0 + EShStrNdx: 0xffff ## SHN_XINDEX Sections: - Type: SHT_NULL Link: .shstrtab @@ -56,13 +56,13 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHOff: 0 - SHNum: 0 - SHStrNdx: 0xffff ## SHN_XINDEX + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShOff: 0 + EShNum: 0 + EShStrNdx: 0xffff ## SHN_XINDEX Sections: - Type: SHT_NULL Link: .shstrtab diff --git a/llvm/test/tools/llvm-readobj/ELF/sections-no-section-header-string-table.test b/llvm/test/tools/llvm-readobj/ELF/sections-no-section-header-string-table.test --- a/llvm/test/tools/llvm-readobj/ELF/sections-no-section-header-string-table.test +++ b/llvm/test/tools/llvm-readobj/ELF/sections-no-section-header-string-table.test @@ -92,11 +92,11 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_DYN - Machine: EM_X86_64 - SHStrNdx: 0 + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_DYN + Machine: EM_X86_64 + EShStrNdx: 0 Sections: - Name: .foo Type: SHT_PROGBITS diff --git a/llvm/test/tools/llvm-readobj/ELF/symbols.test b/llvm/test/tools/llvm-readobj/ELF/symbols.test --- a/llvm/test/tools/llvm-readobj/ELF/symbols.test +++ b/llvm/test/tools/llvm-readobj/ELF/symbols.test @@ -161,7 +161,7 @@ Data: ELFDATA2LSB Type: ET_REL Machine: EM_X86_64 - SHStrNdx: [[SHSTRTAB=2]] + EShStrNdx: [[SHSTRTAB=2]] Sections: - Name: .symtab Type: SHT_SYMTAB diff --git a/llvm/test/tools/yaml2obj/ELF/header-sh-fields.yaml b/llvm/test/tools/yaml2obj/ELF/header-sh-fields.yaml --- a/llvm/test/tools/yaml2obj/ELF/header-sh-fields.yaml +++ b/llvm/test/tools/yaml2obj/ELF/header-sh-fields.yaml @@ -33,14 +33,14 @@ --- !ELF FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - Type: ET_REL - Machine: EM_X86_64 - SHEntSize: [[SHENTSIZE=64]] - SHOff: [[SHOFF=200]] - SHNum: [[SHNUM=3]] - SHStrNdx: [[SHSTRNDX=2]] + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 + EShEntSize: [[SHENTSIZE=64]] + EShOff: [[SHOFF=200]] + EShNum: [[SHNUM=3]] + EShStrNdx: [[SHSTRNDX=2]] EPhOff: [[PHOFF=64]] EPhEntSize: [[PHENTSIZE=56]] EPhNum: [[PHNUM=2]] diff --git a/llvm/test/tools/yaml2obj/ELF/section-headers.yaml b/llvm/test/tools/yaml2obj/ELF/section-headers.yaml --- a/llvm/test/tools/yaml2obj/ELF/section-headers.yaml +++ b/llvm/test/tools/yaml2obj/ELF/section-headers.yaml @@ -184,9 +184,9 @@ Data: ELFDATA2LSB Type: ET_REL Machine: EM_X86_64 - SHOff: 0x2 - SHNum: 0x3 - SHStrNdx: 0x4 + EShOff: 0x2 + EShNum: 0x3 + EShStrNdx: 0x4 Sections: - Name: .foo Type: SHT_PROGBITS diff --git a/llvm/tools/obj2yaml/elf2yaml.cpp b/llvm/tools/obj2yaml/elf2yaml.cpp --- a/llvm/tools/obj2yaml/elf2yaml.cpp +++ b/llvm/tools/obj2yaml/elf2yaml.cpp @@ -200,7 +200,7 @@ template Expected ELFDumper::dump() { auto Y = std::make_unique(); - // Dump header. We do not dump EPh* and SH* fields. When not explicitly set, + // Dump header. We do not dump EPh* and ESh* fields. When not explicitly set, // the values are set by yaml2obj automatically and there is no need to dump // them here. Y->Header.Class = ELFYAML::ELF_ELFCLASS(Obj.getHeader()->getFileClass());