## This is a test case to check how obj2yaml dumps symbols. ## Check that we only dump Size and Value keys when ## their values are not 0. # RUN: yaml2obj %s -o %t1 # RUN: obj2yaml %t1 | FileCheck %s --check-prefix=FIELDS-DEF # FIELDS-DEF: Symbols: # FIELDS-DEF-NEXT: - Name: foo # FIELDS-DEF-NEXT: - Name: bar # FIELDS-DEF-NEXT: Value: 0x1 # FIELDS-DEF-NEXT: Size: 0x1 # FIELDS-DEF-NEXT: ... --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_REL Symbols: - Name: foo Size: 0x0 Value: 0x0 - Name: bar Size: 0x1 Value: 0x1 ## Check how we dump unnamed section symbols. ## Check we are able to handle the section symbol for the null section. ## Document we name them with a section name they describe. # RUN: yaml2obj --docnum=2 %s -o %t2 # RUN: obj2yaml %t2 | FileCheck %s --check-prefix=SECTION-SYM # SECTION-SYM: --- !ELF # SECTION-SYM-NEXT: FileHeader: # SECTION-SYM-NEXT: Class: ELFCLASS64 # SECTION-SYM-NEXT: Data: ELFDATA2LSB # SECTION-SYM-NEXT: Type: ET_REL # SECTION-SYM-NEXT: Sections: # SECTION-SYM-NEXT: - Name: .section # SECTION-SYM-NEXT: Type: SHT_PROGBITS # SECTION-SYM-NEXT: Symbols: # SECTION-SYM-NEXT: - Type: STT_SECTION # SECTION-SYM-NEXT: - Name: .section # SECTION-SYM-NEXT: Type: STT_SECTION # SECTION-SYM-NEXT: Section: .section # SECTION-SYM-NEXT: - Name: .section # SECTION-SYM-NEXT: Type: STT_SECTION # SECTION-SYM-NEXT: Section: .section # SECTION-SYM-NEXT: ... --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_REL Sections: - Name: .section Type: SHT_PROGBITS Symbols: - Type: STT_SECTION Index: 0 - Type: STT_SECTION Index: 1 - Type: STT_SECTION Index: 1