## Check that we are able to yamalize the SHT_GNU_verneed section. ## Check we don't dump the `Info` field when its value ## is equal to the number of version dependencies. # RUN: yaml2obj %s -o %t # RUN: obj2yaml %t | FileCheck %s # CHECK: - Name: .gnu.version_r # CHECK-NEXT: Type: SHT_GNU_verneed # CHECK-NEXT: Flags: [ SHF_ALLOC ] # CHECK-NEXT: Address: 0x200250 # CHECK-NEXT: Link: .dynstr # CHECK-NEXT: AddressAlign: 0x4 # INFO-NEXT: Info: 0x3 # CHECK-NEXT: Dependencies: # CHECK-NEXT: - Version: 1 # CHECK-NEXT: File: dso.so.0 # CHECK-NEXT: Entries: # CHECK-NEXT: - Name: v1 # CHECK-NEXT: Hash: 1937 # CHECK-NEXT: Flags: 10 # CHECK-NEXT: Other: 3 # CHECK-NEXT: - Name: v2 # CHECK-NEXT: Hash: 1938 # CHECK-NEXT: Flags: 11 # CHECK-NEXT: Other: 4 # CHECK-NEXT: - Version: 1 # CHECK-NEXT: File: dso.so.1 # CHECK-NEXT: Entries: # CHECK-NEXT: - Name: v3 # CHECK-NEXT: Hash: 1939 # CHECK-NEXT: Flags: 12 # CHECK-NEXT: Other: 2 --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_EXEC Entry: 0x0000000000201000 Sections: - Name: .gnu.version_r Type: SHT_GNU_verneed Flags: [ SHF_ALLOC ] Address: 0x200250 AddressAlign: 4 Info: [[INFO=]] Dependencies: - Version: 1 File: dso.so.0 Entries: - Name: v1 Hash: 1937 Flags: 10 Other: 3 - Name: v2 Hash: 1938 Flags: 11 Other: 4 - Version: 1 File: dso.so.1 Entries: - Name: v3 Hash: 1939 Flags: 12 Other: 2 DynamicSymbols: - Name: f1 Binding: STB_GLOBAL ## Check we dump the `Info` field when its value ## is not equal to the number of version dependencies. # RUN: yaml2obj %s -DINFO=0x3 -o %t.info # RUN: obj2yaml %t.info | FileCheck %s --check-prefixes=CHECK,INFO