## Show that llvm-readobj/llvm-readelf tools can dump the .dynamic section which
## is not alone in PT_DYNAMIC segment.

## In the first case .text is placed before .dynamic.
## We check that we warn about this case.

# RUN: yaml2obj --docnum=1 %s -o %t.o
# RUN: llvm-readobj --dynamic-table %t.o 2>&1 \
# RUN:   | FileCheck %s --DFILE=%t.o --check-prefixes=WARNING,LLVM
# RUN: llvm-readelf --dynamic-table %t.o 2>&1 \
# RUN:   | FileCheck %s --DFILE=%t.o --check-prefixes=WARNING,GNU

# WARNING:    warning: '[[FILE]]': The SHT_DYNAMIC section '.dynamic' is not at the start of PT_DYNAMIC segment

# LLVM:      DynamicSection [ (2 entries)
# LLVM-NEXT:   Tag                Type     Name/Value
# LLVM-NEXT:   0x0000000000000018 BIND_NOW 0x1
# LLVM-NEXT:   0x0000000000000000 NULL     0x0
# LLVM-NEXT: ]

# GNU:      Dynamic section at offset 0x{{.*}} contains 2 entries:
# GNU-NEXT:   Tag                Type       Name/Value
# GNU-NEXT:   0x0000000000000018 (BIND_NOW) 0x1
# GNU-NEXT:   0x0000000000000000 (NULL)     0x0

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_EXEC
  Machine: EM_X86_64
Sections:
  - Name: .text
    Type: SHT_PROGBITS
    Flags: [SHF_ALLOC]
    Address: 0x1000
    AddressAlign: 0x100
    Content: "00"
  - Name: .dynamic
    Type: SHT_DYNAMIC
    Flags: [SHF_ALLOC]
    Address: 0x1100
    AddressAlign: 0x1000
    Entries:
      - Tag:   DT_BIND_NOW
        Value: 0x1
      - Tag:   DT_NULL
        Value: 0x0
ProgramHeaders:
  - Type: PT_LOAD
    VAddr: 0x1000
    Sections:
      - Section: .text
      - Section: .dynamic
  - Type: PT_DYNAMIC
    VAddr: 0x1000
    Sections:
      - Section: .text
      - Section: .dynamic

## In the second case .text goes after .dynamic and we don't display any warnings.

# RUN: yaml2obj --docnum=2 %s -o %t.o
# RUN: llvm-readobj --dynamic-table %t.o | FileCheck %s --implicit-check-not="warning"
# RUN: llvm-readelf --dynamic-table %t.o | FileCheck %s --implicit-check-not="warning"

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_EXEC
  Machine: EM_X86_64
Sections:
  - Name: .dynamic
    Type: SHT_DYNAMIC
    Flags: [SHF_ALLOC]
    Address: 0x1000
    AddressAlign: 0x1000
    Entries:
      - Tag:   DT_BIND_NOW
        Value: 0x1
      - Tag:   DT_NULL
        Value: 0x0
  - Name: .text
    Type: SHT_PROGBITS
    Flags: [SHF_ALLOC]
    Address: 0x1100
    AddressAlign: 0x100
    Content: "00"
ProgramHeaders:
  - Type: PT_LOAD
    VAddr: 0x1000
    Sections:
      - Section: .dynamic
      - Section: .text
  - Type: PT_DYNAMIC
    VAddr: 0x1000
    Sections:
      - Section: .dynamic
      - Section: .text
