| ## Check yaml2obj is able to parse the Visibility field and produce the output. |
| |
| # RUN: yaml2obj %s | llvm-readobj --symbols - | FileCheck --check-prefix OBJ %s |
| |
| # OBJ: Symbol { |
| # OBJ: Name: default (1) |
| # OBJ-NEXT: Value: 0x0 |
| # OBJ-NEXT: Size: 0 |
| # OBJ-NEXT: Binding: Local (0x0) |
| # OBJ-NEXT: Type: None (0x0) |
| # OBJ-NEXT: Other: 0 |
| # OBJ-NEXT: Section: Undefined (0x0) |
| # OBJ-NEXT: } |
| # OBJ-NEXT: Symbol { |
| # OBJ-NEXT: Name: internal (16) |
| # OBJ-NEXT: Value: 0x0 |
| # OBJ-NEXT: Size: 0 |
| # OBJ-NEXT: Binding: Local (0x0) |
| # OBJ-NEXT: Type: None (0x0) |
| # OBJ-NEXT: Other [ (0x1) |
| # OBJ-NEXT: STV_INTERNAL (0x1) |
| # OBJ-NEXT: ] |
| # OBJ-NEXT: Section: Undefined (0x0) |
| # OBJ-NEXT: } |
| # OBJ-NEXT: Symbol { |
| # OBJ-NEXT: Name: hidden (9) |
| # OBJ-NEXT: Value: 0x0 |
| # OBJ-NEXT: Size: 0 |
| # OBJ-NEXT: Binding: Local (0x0) |
| # OBJ-NEXT: Type: None (0x0) |
| # OBJ-NEXT: Other [ (0x2) |
| # OBJ-NEXT: STV_HIDDEN (0x2) |
| # OBJ-NEXT: ] |
| # OBJ-NEXT: Section: Undefined (0x0) |
| # OBJ-NEXT: } |
| # OBJ-NEXT: Symbol { |
| # OBJ-NEXT: Name: protected (25) |
| # OBJ-NEXT: Value: 0x0 |
| # OBJ-NEXT: Size: 0 |
| # OBJ-NEXT: Binding: Local (0x0) |
| # OBJ-NEXT: Type: None (0x0) |
| # OBJ-NEXT: Other [ (0x3) |
| # OBJ-NEXT: STV_PROTECTED (0x3) |
| # OBJ-NEXT: ] |
| # OBJ-NEXT: Section: Undefined (0x0) |
| # OBJ-NEXT: } |
| |
| --- !ELF |
| FileHeader: |
| Class: ELFCLASS64 |
| Data: ELFDATA2LSB |
| Type: ET_REL |
| Machine: EM_X86_64 |
| Symbols: |
| - Name: default |
| Visibility: STV_DEFAULT |
| - Name: internal |
| Visibility: STV_INTERNAL |
| - Name: hidden |
| Visibility: STV_HIDDEN |
| - Name: protected |
| Visibility: STV_PROTECTED |