# RUN: yaml2obj %s -o %t | |
# RUN: llvm-ifs --input-format=ELF --output-ifs=- --soname=best.so %t | FileCheck %s | |
!ELF | |
FileHeader: | |
Class: ELFCLASS64 | |
Data: ELFDATA2LSB | |
Type: ET_DYN | |
Machine: EM_AARCH64 | |
Sections: | |
- Name: .dynstr | |
Type: SHT_STRTAB | |
Flags: [ SHF_ALLOC ] | |
Address: 0x0000 | |
Content: "00" | |
- Name: .dynamic | |
Type: SHT_DYNAMIC | |
Flags: [ SHF_ALLOC ] | |
Address: 0x0000000000000008 | |
Link: .dynstr | |
AddressAlign: 0x0000000000000008 | |
EntSize: 0x0000000000000010 | |
Entries: | |
- Tag: DT_STRSZ | |
Value: 0x0000000000000001 | |
- Tag: DT_STRTAB | |
Value: 0x0000000000000000 | |
- Tag: DT_SYMTAB | |
Value: 0x0000000000000000 | |
- Tag: DT_NULL | |
Value: 0x0000000000000000 | |
ProgramHeaders: | |
- Type: PT_LOAD | |
Flags: [ PF_R ] | |
VAddr: 0x0000 | |
Align: 8 | |
FirstSec: .dynstr | |
LastSec: .dynamic | |
- Type: PT_DYNAMIC | |
Flags: [ PF_X, PF_R ] | |
VAddr: 0x0008 | |
FirstSec: .dynamic | |
LastSec: .dynamic | |
# CHECK: --- !ifs-v1 | |
# CHECK-NEXT: IfsVersion: {{[1-9]\d*\.(0|([1-9]\d*))}} | |
# CHECK-NEXT: SoName: best.so{{$}} | |
# CHECK-NEXT: Target: { ObjectFormat: ELF, Arch: AArch64, Endianness: little, BitWidth: 64 } | |
# CHECK-NEXT: Symbols: [] | |
# CHECK-NEXT: ... |