# RUN: yaml2obj %s -o %t
# RUN: llvm-objdump -p %t | FileCheck %s --strict-whitespace --match-full-lines
# CHECK:Dynamic Section:
# CHECK-EMPTY:
# CHECK-NEXT:Version References:
# CHECK-NEXT: required from dso.so.0:
# CHECK-NEXT: 0x000004d2 0x0a 03 v1
# CHECK-NEXT: 0x0000162e 0x0b 04 v2
# CHECK-NEXT: required from dso.so.1:
# CHECK-NEXT: 0x000011d7 0x0c 02 v3
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_EXEC
Machine: EM_X86_64
Entry: 0x0000000000201000
Sections:
- Name: .gnu.version_r
Type: SHT_GNU_verneed
Flags: [ SHF_ALLOC ]
Address: 0x0000000000200250
Link: .dynstr
AddressAlign: 0x0000000000000004
Dependencies:
- Version: 1
File: dso.so.0
Entries:
- Name: v1
Hash: 1234
Flags: 10
Other: 3
- Name: v2
Hash: 5678
Flags: 11
Other: 4
- Version: 1
File: dso.so.1
Entries:
- Name: v3
Hash: 4567
Flags: 12
Other: 2
DynamicSymbols:
- Name: f1
Binding: STB_GLOBAL
# RUN: yaml2obj --docnum=2 %s -o %t.empty
# RUN: llvm-objdump -p %t.empty 2>&1 | FileCheck %s --check-prefix=EMPTY --implicit-check-not=warning:
# EMPTY: Version References:
# EMPTY-NOT: {{.}}
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_EXEC
Machine: EM_X86_64
Sections:
- Name: .gnu.version_r
Type: SHT_GNU_verneed
Flags: [ SHF_ALLOC ]
DynamicSymbols:
- Name: f1
Binding: STB_GLOBAL