70 lines
1.6 KiB
YAML
70 lines
1.6 KiB
YAML
## Check that obj2yaml doesn't create a "Symbols" tag for the objects
|
|
## without a symbol table.
|
|
|
|
# RUN: yaml2obj --docnum=1 %s -o %t1
|
|
# RUN: obj2yaml %t1 | FileCheck %s --check-prefix=NOSYMTAB
|
|
|
|
# NOSYMTAB: --- !ELF
|
|
# NOSYMTAB-NEXT: FileHeader:
|
|
# NOSYMTAB-NEXT: Class: ELFCLASS64
|
|
# NOSYMTAB-NEXT: Data: ELFDATA2LSB
|
|
# NOSYMTAB-NEXT: Type: ET_DYN
|
|
# NOSYMTAB-NEXT: ...
|
|
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS64
|
|
Data: ELFDATA2LSB
|
|
Type: ET_DYN
|
|
|
|
## Check that obj2yaml creates a "Symbols" tag for the objects
|
|
## that have a symbol table.
|
|
|
|
# RUN: yaml2obj --docnum=2 %s -o %t2
|
|
# RUN: obj2yaml %t2 | FileCheck %s --check-prefix=SYMTAB
|
|
|
|
# SYMTAB: --- !ELF
|
|
# SYMTAB-NEXT: FileHeader:
|
|
# SYMTAB-NEXT: Class: ELFCLASS64
|
|
# SYMTAB-NEXT: Data: ELFDATA2LSB
|
|
# SYMTAB-NEXT: Type: ET_DYN
|
|
# SYMTAB-NEXT: Symbols: []
|
|
# SYMTAB-NEXT: ...
|
|
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS64
|
|
Data: ELFDATA2LSB
|
|
Type: ET_DYN
|
|
Symbols: []
|
|
|
|
## A symbol table without the null entry is non-conforming.
|
|
## Check we don't print "Symbols" and "DynamicSymbols" keys in this case.
|
|
|
|
# RUN: yaml2obj --docnum=3 %s -o %t3
|
|
# RUN: obj2yaml %t3 | FileCheck %s --check-prefix=EMPTY
|
|
|
|
# EMPTY: Sections:
|
|
# EMPTY-NEXT: - Name: .symtab
|
|
# EMPTY-NEXT: Type: SHT_SYMTAB
|
|
# EMPTY-NEXT: Link: .strtab
|
|
# EMPTY-NEXT: Size: 0x0
|
|
# EMPTY-NEXT: - Name: .dynsym
|
|
# EMPTY-NEXT: Type: SHT_DYNSYM
|
|
# EMPTY-NEXT: Flags: [ SHF_ALLOC ]
|
|
# EMPTY-NEXT: Size: 0x0
|
|
# EMPTY-NEXT: ...
|
|
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS64
|
|
Data: ELFDATA2LSB
|
|
Type: ET_DYN
|
|
Sections:
|
|
- Name: .symtab
|
|
Type: SHT_SYMTAB
|
|
Size: 0
|
|
- Name: .dynsym
|
|
Type: SHT_DYNSYM
|
|
Size: 0
|