# RUN: yaml2obj %s -o %t.o # RUN: llvm-readobj -a %t.o | FileCheck %s --check-prefix LLVM-ALL # RUN: llvm-readobj --all %t.o | FileCheck %s --check-prefix LLVM-ALL # LLVM-ALL: Format: elf32-i386 # LLVM-ALL: Arch: i386 # LLVM-ALL: AddressSize: 32bit # LLVM-ALL: LoadName: # LLVM-ALL: ElfHeader { # LLVM-ALL: Sections [ # LLVM-ALL: ProgramHeaders [ # LLVM-ALL: Relocations [ # LLVM-ALL: EHFrameHeader { # LLVM-ALL: .eh_frame section at offset 0x1128 address 0x0: # LLVM-ALL: Symbols [ # LLVM-ALL: VersionSymbols [ # LLVM-ALL: VersionDefinitions [ # LLVM-ALL: VersionRequirements [ # LLVM-ALL: Addrsig [ # LLVM-ALL: Notes [ # LLVM-ALL: StackSizes [ # RUN: llvm-readelf -a %t.o | FileCheck %s --check-prefix GNU-ALL # RUN: llvm-readelf --all %t.o | FileCheck %s --check-prefix GNU-ALL # GNU-ALL: ELF Header: # GNU-ALL: There are {{.*}} section headers, starting at offset {{.*}}: # GNU-ALL: Program Headers: # GNU-ALL: Dynamic section at offset {{.*}} contains {{.*}} entries: # GNU-ALL: Relocation section '.rela.data' at offset {{.*}} contains {{.*}} entries: # GNU-ALL: EHFrameHeader { # GNU-ALL: .eh_frame section at offset {{.*}} address 0x0: # GNU-ALL: Symbol table '.symtab' contains {{.*}} entries: # GNU-ALL: Version symbols section '.gnu.version' contains {{.*}} entries: # GNU-ALL: Version definition section '.gnu.version_d' contains {{.*}} entries: # GNU-ALL: Version needs section '.gnu.version_r' contains {{.*}} entries: # GNU-ALL: There are no section groups in this file. # GNU-ALL: Histogram for bucket list length (total of 1 buckets) # GNU-ALL: Displaying notes found --- !ELF FileHeader: Class: ELFCLASS32 Data: ELFDATA2LSB Type: ET_REL Machine: EM_386 Sections: - Name: .data Type: SHT_PROGBITS - Name: .rela.data Type: SHT_REL Relocations: - Name: .gnu.version Type: SHT_GNU_versym Entries: [ 0 ] - Name: .gnu.version_d Type: SHT_GNU_verdef Entries: [] - Name: .gnu.version_r Type: SHT_GNU_verneed Dependencies: - Version: 1 File: verneed1.so.0 Entries: [] - Name: .dynamic Type: SHT_DYNAMIC Address: 0x1000 AddressAlign: 0x1000 Entries: - Tag: DT_HASH Value: 0x1100 - Tag: DT_NULL Value: 0 - Name: .hash Type: SHT_HASH Link: 0 Bucket: [ 1 ] Chain: [ 0, 0 ] Address: 0x1100 AddressAlign: 0x100 - Name: .eh_frame_hdr Type: SHT_PROGBITS ## An arbitrary linker-generated valid content. Content: 011b033b140000000100000000f0ffff30000000 - Name: .eh_frame Type: SHT_PROGBITS AddressAlign: 8 ## An arbitrary linker-generated valid content. Content: 1400000000000000017a5200017810011b0c070890010000100000001c000000c8efffff0100000000000000 - Name: .note.gnu.build-id Type: SHT_NOTE Flags: [ SHF_ALLOC ] Address: 0x1500 ## An arbitrary linker-generated valid content. Content: 040000001000000003000000474E55004FCB712AA6387724A9F465A32CD8C14B ProgramHeaders: - Type: PT_LOAD VAddr: 0x1000 FirstSec: .dynamic LastSec: .hash - Type: PT_DYNAMIC FirstSec: .dynamic LastSec: .dynamic - Type: PT_GNU_EH_FRAME FirstSec: .eh_frame_hdr LastSec: .eh_frame_hdr - Type: PT_NOTE FirstSec: .note.gnu.build-id LastSec: .note.gnu.build-id Symbols: [] DynamicSymbols: - Name: foo