# RUN: yaml2obj %s -o %t
# RUN: llvm-objdump --all-headers %t | FileCheck %s
# RUN: llvm-objdump -x %t | FileCheck %s

## Note: --all-headers (-x) is an alias for --archive-headers --file-headers
## --section-headers --private-headers --reloc --syms (-afhprt). Test for them
## in the following order which provides GNU objdump compatability.

# CHECK:       file format elf64-x86-64
# CHECK-NEXT:  architecture: x86_64
# CHECK-NEXT:  start address: 0x0000000000000000
# CHECK-EMPTY:
# CHECK-NEXT:  Program Header:
# CHECK-EMPTY:
# CHECK-NEXT:  Dynamic Section:
# CHECK:         INIT
# CHECK-EMPTY:
# CHECK-NEXT:  Sections:
# CHECK:         6 .shstrtab   0000002e 0000000000000000
# CHECK-EMPTY:
# CHECK-NEXT:  SYMBOL TABLE:
# CHECK-NEXT:  0000000000000000 l       .text  0000000000000000 foo
# CHECK-EMPTY:
# CHECK-NEXT:  RELOCATION RECORDS FOR [.text]:

## Check how we dump the archives.
## Check we dump the appropriate headers for each file in the archive.

# RUN: cp %t %t2
# RUN: rm -f %t.a
# RUN: llvm-ar rcs %t.a %t %t2
# RUN: llvm-objdump --all-headers %t.a | FileCheck %s --check-prefix=ARCHIVE

# ARCHIVE: {{.*}}.a({{.*}}):   file format elf64-x86-64
# ARCHIVE: rw-r--r--
# ARCHIVE: architecture: x86_64
# ARCHIVE: start address: 0x0000000000000000
# ARCHIVE: Program Header:
# ARCHIVE: Dynamic Section:
# ARCHIVE: Sections:
# ARCHIVE: SYMBOL TABLE:
# ARCHIVE: RELOCATION RECORDS FOR [.text]:
# ARCHIVE: {{.*}}.a({{.*}}2):   file format elf64-x86-64
# ARCHIVE: rw-r--r--
# ARCHIVE: architecture: x86_64
# ARCHIVE: start address: 0x0000000000000000
# ARCHIVE: Program Header:
# ARCHIVE: Dynamic Section:
# ARCHIVE: Sections:
# ARCHIVE: SYMBOL TABLE:
# ARCHIVE: RELOCATION RECORDS FOR [.text]:

!ELF
FileHeader:
  Class:           ELFCLASS64
  Data:            ELFDATA2LSB
  Type:            ET_REL
  Machine:         EM_X86_64
Sections:
  - Name: .text
    Type: SHT_PROGBITS
  - Name: .rel.text
    Type: SHT_REL
    Info: .text
    Relocations:
      - Offset: 0x1
        Symbol: foo
        Type: R_X86_64_32
  - Name:            .dynamic
    Type:            SHT_DYNAMIC
    Flags:           [ SHF_WRITE, SHF_ALLOC ]
    EntSize:         0x0000000000000010
    Entries:
      - Tag:             DT_INIT
        Value:           0x00000000000006A0
      - Tag:             DT_NULL
        Value:           0x0000000000000000
Symbols:
  - Name:    foo
    Section: .text
