]> git.proxmox.com Git - rustc.git/blob - src/llvm/test/Object/yaml2obj-elf-symbol-visibility.yaml
Imported Upstream version 1.0.0+dfsg1
[rustc.git] / src / llvm / test / Object / yaml2obj-elf-symbol-visibility.yaml
1 # RUN: yaml2obj -format=elf %s | llvm-readobj -symbols - | \
2 # RUN: FileCheck --check-prefix OBJ %s
3 # RUN: yaml2obj -format=elf %s | obj2yaml - | FileCheck --check-prefix YAML %s
4
5 # OBJ: Symbol {
6 # OBJ: Name: default1 (36)
7 # OBJ-NEXT: Value: 0x0
8 # OBJ-NEXT: Size: 4
9 # OBJ-NEXT: Binding: Global (0x1)
10 # OBJ-NEXT: Type: Object (0x1)
11 # OBJ-NEXT: Other: 0
12 # OBJ-NEXT: Section: .data (0x1)
13 # OBJ-NEXT: }
14 # OBJ-NEXT: Symbol {
15 # OBJ-NEXT: Name: default2 (27)
16 # OBJ-NEXT: Value: 0x4
17 # OBJ-NEXT: Size: 4
18 # OBJ-NEXT: Binding: Global (0x1)
19 # OBJ-NEXT: Type: Object (0x1)
20 # OBJ-NEXT: Other: 0
21 # OBJ-NEXT: Section: .data (0x1)
22 # OBJ-NEXT: }
23 # OBJ-NEXT: Symbol {
24 # OBJ-NEXT: Name: internal (8)
25 # OBJ-NEXT: Value: 0x8
26 # OBJ-NEXT: Size: 4
27 # OBJ-NEXT: Binding: Global (0x1)
28 # OBJ-NEXT: Type: Object (0x1)
29 # OBJ-NEXT: Other: 1
30 # OBJ-NEXT: Section: .data (0x1)
31 # OBJ-NEXT: }
32 # OBJ-NEXT: Symbol {
33 # OBJ-NEXT: Name: hidden (1)
34 # OBJ-NEXT: Value: 0xC
35 # OBJ-NEXT: Size: 4
36 # OBJ-NEXT: Binding: Global (0x1)
37 # OBJ-NEXT: Type: Object (0x1)
38 # OBJ-NEXT: Other: 2
39 # OBJ-NEXT: Section: .data (0x1)
40 # OBJ-NEXT: }
41 # OBJ-NEXT: Symbol {
42 # OBJ-NEXT: Name: protected (17)
43 # OBJ-NEXT: Value: 0x10
44 # OBJ-NEXT: Size: 4
45 # OBJ-NEXT: Binding: Global (0x1)
46 # OBJ-NEXT: Type: Object (0x1)
47 # OBJ-NEXT: Other: 163
48 # OBJ-NEXT: Section: .data (0x1)
49 # OBJ-NEXT: }
50
51 # YAML: Symbols:
52 # YAML-NEXT: Global:
53 # YAML-NEXT: - Name: default1
54 # YAML-NEXT: Type: STT_OBJECT
55 # YAML-NEXT: Section: .data
56 # YAML-NEXT: Size: 0x0000000000000004
57 # YAML-NEXT: - Name: default2
58 # YAML-NEXT: Type: STT_OBJECT
59 # YAML-NEXT: Section: .data
60 # YAML-NEXT: Value: 0x0000000000000004
61 # YAML-NEXT: Size: 0x0000000000000004
62 # YAML-NEXT: - Name: internal
63 # YAML-NEXT: Type: STT_OBJECT
64 # YAML-NEXT: Section: .data
65 # YAML-NEXT: Value: 0x0000000000000008
66 # YAML-NEXT: Size: 0x0000000000000004
67 # YAML-NEXT: Visibility: STV_INTERNAL
68 # YAML-NEXT: - Name: hidden
69 # YAML-NEXT: Type: STT_OBJECT
70 # YAML-NEXT: Section: .data
71 # YAML-NEXT: Value: 0x000000000000000C
72 # YAML-NEXT: Size: 0x0000000000000004
73 # YAML-NEXT: Visibility: STV_HIDDEN
74 # YAML-NEXT: - Name: protected
75 # YAML-NEXT: Type: STT_OBJECT
76 # YAML-NEXT: Section: .data
77 # YAML-NEXT: Value: 0x0000000000000010
78 # YAML-NEXT: Size: 0x0000000000000004
79 # YAML-NEXT: Visibility: STV_PROTECTED
80 # YAML-NEXT: Other: [ STO_MIPS_PIC, STO_MIPS_MICROMIPS ]
81
82 ---
83 FileHeader:
84 Class: ELFCLASS32
85 Data: ELFDATA2LSB
86 Type: ET_REL
87 Machine: EM_MIPS
88 Flags: [ EF_MIPS_ABI_O32, EF_MIPS_ARCH_32 ]
89
90 Sections:
91 - Name: .data
92 Type: SHT_PROGBITS
93 Flags: [ SHF_ALLOC, SHF_WRITE ]
94 AddressAlign: 0x04
95 Size: 0x14
96
97 Symbols:
98 Global:
99 - Name: default1
100 Type: STT_OBJECT
101 Visibility: STV_DEFAULT
102 Section: .data
103 Value: 0x00
104 Size: 0x04
105 - Name: default2
106 Type: STT_OBJECT
107 Section: .data
108 Value: 0x04
109 Size: 0x04
110 - Name: internal
111 Type: STT_OBJECT
112 Visibility: STV_INTERNAL
113 Section: .data
114 Value: 0x08
115 Size: 0x04
116 - Name: hidden
117 Type: STT_OBJECT
118 Visibility: STV_HIDDEN
119 Section: .data
120 Value: 0x0C
121 Size: 0x04
122 - Name: protected
123 Type: STT_OBJECT
124 Visibility: STV_PROTECTED
125 Other: [ STO_MIPS_MICROMIPS, STO_MIPS_PIC ]
126 Section: .data
127 Value: 0x10
128 Size: 0x04