]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/MC/COFF/section-comdat.s
Vendor import of llvm release_34 branch r197841 (effectively, 3.4 RC3):
[FreeBSD/FreeBSD.git] / test / MC / COFF / section-comdat.s
1 // RUN: llvm-mc -triple i386-pc-win32 -filetype=obj %s | llvm-readobj -s -t | FileCheck %s
2 // RUN: llvm-mc -triple x86_64-pc-win32 -filetype=obj %s | llvm-readobj -s -t | FileCheck %s
3
4 .section assocSec
5 .linkonce
6 .long 1
7
8 .section secName, "dr", discard, "Symbol1"
9 .globl Symbol1
10 Symbol1:
11 .long 1
12
13 .section secName, "dr", one_only, "Symbol2"
14 .globl Symbol2
15 Symbol2:
16 .long 1
17
18 .section SecName, "dr", same_size, "Symbol3"
19 .globl Symbol3
20 Symbol3:
21 .long 1
22
23 .section SecName, "dr", same_contents, "Symbol4"
24 .globl Symbol4
25 Symbol4:
26 .long 1
27
28 .section SecName, "dr", associative assocSec, "Symbol5"
29 .globl Symbol5
30 Symbol5:
31 .long 1
32
33 .section SecName, "dr", largest, "Symbol6"
34 .globl Symbol6
35 Symbol6:
36 .long 1
37
38 .section SecName, "dr", newest, "Symbol7"
39 .globl Symbol7
40 Symbol7:
41 .long 1
42
43 // CHECK: Sections [
44 // CHECK:   Section {
45 // CHECK:     Number: 1
46 // CHECK:     Name: assocSec
47 // CHECK:     Characteristics [
48 // CHECK:       IMAGE_SCN_LNK_COMDAT
49 // CHECK:     ]
50 // CHECK:   }
51 // CHECK:   Section {
52 // CHECK:     Number: 2
53 // CHECK:     Name: secName
54 // CHECK:     Characteristics [
55 // CHECK:       IMAGE_SCN_LNK_COMDAT
56 // CHECK:     ]
57 // CHECK:   }
58 // CHECK:   Section {
59 // CHECK:     Number: 3
60 // CHECK:     Name: secName
61 // CHECK:     Characteristics [
62 // CHECK:       IMAGE_SCN_LNK_COMDAT
63 // CHECK:     ]
64 // CHECK:   }
65 // CHECK:   Section {
66 // CHECK:     Number: 4
67 // CHECK:     Name: SecName
68 // CHECK:     Characteristics [
69 // CHECK:       IMAGE_SCN_LNK_COMDAT
70 // CHECK:     ]
71 // CHECK:   }
72 // CHECK:   Section {
73 // CHECK:     Number: 5
74 // CHECK:     Name: SecName
75 // CHECK:     Characteristics [
76 // CHECK:       IMAGE_SCN_LNK_COMDAT
77 // CHECK:     ]
78 // CHECK:   }
79 // CHECK:   Section {
80 // CHECK:     Number: 6
81 // CHECK:     Name: SecName
82 // CHECK:     Characteristics [
83 // CHECK:       IMAGE_SCN_LNK_COMDAT
84 // CHECK:     ]
85 // CHECK:   }
86 // CHECK:   Section {
87 // CHECK:     Number: 7
88 // CHECK:     Name: SecName
89 // CHECK:     Characteristics [
90 // CHECK:       IMAGE_SCN_LNK_COMDAT
91 // CHECK:     ]
92 // CHECK:   }
93 // CHECK:   Section {
94 // CHECK:     Number: 8
95 // CHECK:     Name: SecName
96 // CHECK:     Characteristics [
97 // CHECK:       IMAGE_SCN_LNK_COMDAT
98 // CHECK:     ]
99 // CHECK:   }
100 // CHECK: ]
101 // CHECK: Symbols [
102 // CHECK:   Symbol {
103 // CHECK:     Name: assocSec
104 // CHECK:     Section: assocSec (1)
105 // CHECK:     AuxSectionDef {
106 // CHECK:       Selection: Any
107 // CHECK:     }
108 // CHECK:   }
109 // CHECK:   Symbol {
110 // CHECK:     Name: secName
111 // CHECK:     Section: secName (2)
112 // CHECK:     AuxSectionDef {
113 // CHECK:       Selection: Any
114 // CHECK:     }
115 // CHECK:   }
116 // CHECK:   Symbol {
117 // CHECK:     Name: secName
118 // CHECK:     Section: secName (3)
119 // CHECK:     AuxSectionDef {
120 // CHECK:       Selection: NoDuplicates
121 // CHECK:     }
122 // CHECK:   }
123 // CHECK:   Symbol {
124 // CHECK:     Name: SecName
125 // CHECK:     Section: SecName (4)
126 // CHECK:     AuxSectionDef {
127 // CHECK:       Selection: SameSize
128 // CHECK:     }
129 // CHECK:   }
130 // CHECK:   Symbol {
131 // CHECK:     Name: SecName
132 // CHECK:     Section: SecName (5)
133 // CHECK:     AuxSymbolCount: 1
134 // CHECK:     AuxSectionDef {
135 // CHECK:       Selection: ExactMatch
136 // CHECK:     }
137 // CHECK:   }
138 // CHECK:   Symbol {
139 // CHECK:     Name: SecName
140 // CHECK:     Section: SecName (6)
141 // CHECK:     AuxSectionDef {
142 // CHECK:       Selection: Associative
143 // CHECK:       AssocSection: assocSec (1)
144 // CHECK:     }
145 // CHECK:   }
146 // CHECK:   Symbol {
147 // CHECK:     Name: SecName
148 // CHECK:     Section: SecName (7)
149 // CHECK:     AuxSectionDef {
150 // CHECK:       Selection: Largest
151 // CHECK:     }
152 // CHECK:   }
153 // CHECK:   Symbol {
154 // CHECK:     Name: SecName
155 // CHECK:     Section: SecName (8)
156 // CHECK:     AuxSectionDef {
157 // CHECK:       Selection: Newest (0x7)
158 // CHECK:     }
159 // CHECK:   }
160 // CHECK:   Symbol {
161 // CHECK:     Name: Symbol1
162 // CHECK:     Section: secName (2)
163 // CHECK:   }
164 // CHECK:   Symbol {
165 // CHECK:     Name: Symbol2
166 // CHECK:     Section: secName (3)
167 // CHECK:   }
168 // CHECK:   Symbol {
169 // CHECK:     Name: Symbol3
170 // CHECK:     Section: SecName (4)
171 // CHECK:   }
172 // CHECK:   Symbol {
173 // CHECK:     Name: Symbol4
174 // CHECK:     Section: SecName (5)
175 // CHECK:   }
176 // CHECK:   Symbol {
177 // CHECK:     Name: Symbol5
178 // CHECK:     Section: SecName (6)
179 // CHECK:   }
180 // CHECK:   Symbol {
181 // CHECK:     Name: Symbol6
182 // CHECK:     Section: SecName (7)
183 // CHECK:   }
184 // CHECK:   Symbol {
185 // CHECK:     Name: Symbol7
186 // CHECK:     Section: SecName (8)
187 // CHECK:   }
188 // CHECK: ]