70 lines · yaml
1## Check that obj2yaml doesn't create a "Symbols" tag for the objects2## without a symbol table.3 4# RUN: yaml2obj --docnum=1 %s -o %t15# RUN: obj2yaml %t1 | FileCheck %s --check-prefix=NOSYMTAB6 7# NOSYMTAB: --- !ELF8# NOSYMTAB-NEXT: FileHeader:9# NOSYMTAB-NEXT: Class: ELFCLASS6410# NOSYMTAB-NEXT: Data: ELFDATA2LSB11# NOSYMTAB-NEXT: Type: ET_DYN12# NOSYMTAB-NEXT: ...13 14--- !ELF15FileHeader:16 Class: ELFCLASS6417 Data: ELFDATA2LSB18 Type: ET_DYN19 20## Check that obj2yaml creates a "Symbols" tag for the objects21## that have a symbol table.22 23# RUN: yaml2obj --docnum=2 %s -o %t224# RUN: obj2yaml %t2 | FileCheck %s --check-prefix=SYMTAB25 26# SYMTAB: --- !ELF27# SYMTAB-NEXT: FileHeader:28# SYMTAB-NEXT: Class: ELFCLASS6429# SYMTAB-NEXT: Data: ELFDATA2LSB30# SYMTAB-NEXT: Type: ET_DYN31# SYMTAB-NEXT: Symbols: []32# SYMTAB-NEXT: ...33 34--- !ELF35FileHeader:36 Class: ELFCLASS6437 Data: ELFDATA2LSB38 Type: ET_DYN39Symbols: []40 41## A symbol table without the null entry is non-conforming.42## Check we don't print "Symbols" and "DynamicSymbols" keys in this case.43 44# RUN: yaml2obj --docnum=3 %s -o %t345# RUN: obj2yaml %t3 | FileCheck %s --check-prefix=EMPTY46 47# EMPTY: Sections:48# EMPTY-NEXT: - Name: .symtab49# EMPTY-NEXT: Type: SHT_SYMTAB50# EMPTY-NEXT: Link: .strtab51# EMPTY-NEXT: Size: 0x052# EMPTY-NEXT: - Name: .dynsym53# EMPTY-NEXT: Type: SHT_DYNSYM54# EMPTY-NEXT: Flags: [ SHF_ALLOC ]55# EMPTY-NEXT: Size: 0x056# EMPTY-NEXT: ...57 58--- !ELF59FileHeader:60 Class: ELFCLASS6461 Data: ELFDATA2LSB62 Type: ET_DYN63Sections:64 - Name: .symtab65 Type: SHT_SYMTAB66 Size: 067 - Name: .dynsym68 Type: SHT_DYNSYM69 Size: 070