1# RUN: yaml2obj %s -o %t
2# RUN: llvm-ifs --input-format=ELF --output-format=IFS --output=- %t | FileCheck %s
3
4!ELF
5FileHeader:
6  Class:           ELFCLASS64
7  Data:            ELFDATA2LSB
8  Type:            ET_DYN
9  Machine:         EM_X86_64
10Sections:
11  - Name:            .dynstr
12    Type:            SHT_STRTAB
13    Flags:           [ SHF_ALLOC ]
14    Address:         0x1000
15    #                "\0libfoo.so\0libbar.so\0somelib.so\0foo\0"
16    Content:         "006c6962666f6f2e736f006c69626261722e736f00736f6d656c69622e736f00666f6f00"
17  - Name:            .dynamic
18    Type:            SHT_DYNAMIC
19    Flags:           [ SHF_ALLOC ]
20    Address:         0x0000000000001024
21    EntSize:         0x0000000000000010
22    Entries:
23      - Tag:             DT_NEEDED
24        Value:           0x0000000000000001
25      - Tag:             DT_SONAME
26        Value:           0x0000000000000015
27      - Tag:             DT_NEEDED
28        Value:           0x000000000000000B
29      - Tag:             DT_STRSZ
30        Value:           0x0000000000000024
31      - Tag:             DT_STRTAB
32        Value:           0x0000000000001000
33      - Tag:             DT_SYMTAB
34        Value:           0x0000000000001000
35      - Tag:             DT_NULL
36        Value:           0x0000000000000000
37ProgramHeaders:
38  - Type:     PT_LOAD
39    Flags:    [ PF_R ]
40    VAddr:    0x1000
41    Align:    8
42    FirstSec: .dynstr
43    LastSec:  .dynamic
44  - Type: PT_DYNAMIC
45    Flags: [ PF_X, PF_R ]
46    VAddr: 0x1024
47
48# CHECK:      NeededLibs:
49# CHECK-NEXT:   - libfoo.so{{$}}
50# CHECK-NEXT:   - libbar.so{{$}}
51# CHECK-NEXT: Symbols: []
52