llvm-project/llvm/test/tools/llvm-objdump/verneed-wrong-info.test

51 lines
1.5 KiB
Plaintext

# RUN: yaml2obj %s -o %t
# RUN: llvm-objdump -p %t 2>&1 | FileCheck %s
# We have a SHT_GNU_verneed section with a broken sh_info field
# that says the section contains more entries than it actually has.
# CHECK: 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
Info: 0x0000000000009999
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