| # RUN: yaml2obj %s -o %t |
| # RUN: llvm-readelf -V %t | FileCheck %s |
| |
| ## Check we are able to produce a valid SHT_GNU_versym |
| ## section from its description. |
| |
| # CHECK: Version symbols { |
| # CHECK-NEXT: Section Name: .gnu.version |
| # CHECK-NEXT: Address: 0x200210 |
| # CHECK-NEXT: Offset: 0x240 |
| # CHECK-NEXT: Link: 6 |
| # CHECK-NEXT: Symbols [ |
| # CHECK-NEXT: Symbol { |
| # CHECK-NEXT: Version: 0 |
| # CHECK-NEXT: Name: |
| # CHECK-NEXT: } |
| # CHECK-NEXT: Symbol { |
| # CHECK-NEXT: Version: 3 |
| # CHECK-NEXT: Name: f1@v1 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: Symbol { |
| # CHECK-NEXT: Version: 4 |
| # CHECK-NEXT: Name: f2@v2 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: ] |
| # CHECK-NEXT: } |
| # CHECK-NEXT: SHT_GNU_verdef { |
| # CHECK-NEXT: } |
| # CHECK-NEXT: SHT_GNU_verneed { |
| # CHECK-NEXT: Dependency { |
| # CHECK-NEXT: Version: 1 |
| # CHECK-NEXT: Count: 2 |
| # CHECK-NEXT: FileName: dso.so.0 |
| # CHECK-NEXT: Entry { |
| # CHECK-NEXT: Hash: 1937 |
| # CHECK-NEXT: Flags: 0x0 |
| # CHECK-NEXT: Index: 3 |
| # CHECK-NEXT: Name: v1 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: Entry { |
| # CHECK-NEXT: Hash: 1938 |
| # CHECK-NEXT: Flags: 0x0 |
| # CHECK-NEXT: Index: 4 |
| # CHECK-NEXT: Name: v2 |
| # CHECK-NEXT: } |
| # CHECK-NEXT: } |
| # CHECK-NEXT: } |
| |
| --- !ELF |
| FileHeader: |
| Class: ELFCLASS64 |
| Data: ELFDATA2LSB |
| Type: ET_EXEC |
| Machine: EM_X86_64 |
| Entry: 0x0000000000201000 |
| Sections: |
| - Name: .gnu.version |
| Type: SHT_GNU_versym |
| Flags: [ SHF_ALLOC ] |
| Address: 0x0000000000200210 |
| Link: .dynsym |
| AddressAlign: 0x0000000000000002 |
| EntSize: 0x0000000000000002 |
| Entries: [ 0, 3, 4 ] |
| - Name: .gnu.version_r |
| Type: SHT_GNU_verneed |
| Flags: [ SHF_ALLOC ] |
| Address: 0x0000000000200250 |
| Link: .dynstr |
| AddressAlign: 0x0000000000000004 |
| Info: 0x0000000000000001 |
| Dependencies: |
| - Version: 1 |
| File: dso.so.0 |
| Entries: |
| - Name: v1 |
| Hash: 1937 |
| Flags: 0 |
| Other: 3 |
| - Name: v2 |
| Hash: 1938 |
| Flags: 0 |
| Other: 4 |
| DynamicSymbols: |
| Global: |
| - Name: f1 |
| - Name: f2 |
| ... |