| ## 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: default1 |
| # 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: default2 |
| # 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 |
| # 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 |
| # 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 |
| # 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: default1 |
| - Name: default2 |
| Other: [ STV_DEFAULT ] |
| - Name: internal |
| Other: [ STV_INTERNAL ] |
| - Name: hidden |
| Other: [ STV_HIDDEN ] |
| - Name: protected |
| Other: [ STV_PROTECTED ] |