Revert "Add support for ARM and AArch64 BE object files"
[oota-llvm.git] / test / tools / llvm-readobj / codeview-linetables.test
1 ; The following two object files were generated using the following command:
2 ;   D:\> cl /Z7 /c source.c
3 ; with the following contents of D:\source.c:
4 ;   void z(void);
5 ;
6 ;   void x(void) {
7 ;     z();
8 ;   }
9 ;
10 ;   void y(void) {
11 ;     z();
12 ;   }
13 ;
14 ;   void f(void) {
15 ;     x();
16 ;     y();
17 ;     z();
18 ;   }
19 ; using CL v18.00.21005.1 32-/64-bit versions respectively.
20 RUN: llvm-readobj -s -codeview-linetables %p/Inputs/multifunction-linetables.obj.coff-2013-i368 \
21 RUN:   | FileCheck %s -check-prefix MFUN32
22 RUN: llvm-readobj -s -codeview-linetables %p/Inputs/multifunction-linetables.obj.coff-2013-x86_64 \
23 RUN:   | FileCheck %s -check-prefix MFUN64
24
25 ; The following two object files were generated using the following command:
26 ;   D:\> cl /Z7 /c input.c
27 ; with the following contents of D:\input.c:
28 ;   void g(void);
29 ;
30 ;   void f(void) {
31 ;   #line 1 "one.c"
32 ;     g();
33 ;   #line 2 "two.c"
34 ;     g();
35 ;   #line 7 "one.c"
36 ;     g();
37 ;   }
38 ; using CL v18.00.21005.1 32-/64-bit versions respectively.
39 RUN: llvm-readobj -s -codeview-linetables %p/Inputs/multifile-linetables.obj.coff-2013-i368 \
40 RUN:   | FileCheck %s -check-prefix MFILE32
41 RUN: llvm-readobj -s -codeview-linetables %p/Inputs/multifile-linetables.obj.coff-2013-x86_64 \
42 RUN:   | FileCheck %s -check-prefix MFILE64
43
44 MFUN32:      CodeViewLineTables [
45 MFUN32-NEXT:   Magic: 0x4
46 MFUN32-NEXT:   Subsection [
47 MFUN32-NEXT:     Type: 0xF1
48 MFUN32-NEXT:     PayloadSize: 0x52
49 MFUN32:        ]
50 MFUN32-NEXT:   Subsection [
51 MFUN32-NEXT:     Type: 0xF5
52 MFUN32-NEXT:     PayloadSize: 0x24
53 MFUN32:        ]
54 MFUN32-NEXT:   Subsection [
55 MFUN32-NEXT:     Type: 0xF1
56 MFUN32-NEXT:     PayloadSize: 0x4B
57 MFUN32:        ]
58 MFUN32-NEXT:   Subsection [
59 MFUN32-NEXT:     Type: 0xF2
60 MFUN32-NEXT:     PayloadSize: 0x30
61 MFUN32:          FunctionName: _x
62 MFUN32-NEXT:   ]
63 MFUN32-NEXT:   Subsection [
64 MFUN32-NEXT:     Type: 0xF5
65 MFUN32-NEXT:     PayloadSize: 0x24
66 MFUN32:        ]
67 MFUN32-NEXT:   Subsection [
68 MFUN32-NEXT:     Type: 0xF1
69 MFUN32-NEXT:     PayloadSize: 0x4B
70 MFUN32:        ]
71 MFUN32-NEXT:   Subsection [
72 MFUN32-NEXT:     Type: 0xF2
73 MFUN32-NEXT:     PayloadSize: 0x30
74 MFUN32:          FunctionName: _y
75 MFUN32-NEXT:   ]
76 MFUN32-NEXT:   Subsection [
77 MFUN32-NEXT:     Type: 0xF5
78 MFUN32-NEXT:     PayloadSize: 0x24
79 MFUN32:        ]
80 MFUN32-NEXT:   Subsection [
81 MFUN32-NEXT:     Type: 0xF1
82 MFUN32-NEXT:     PayloadSize: 0x4B
83 MFUN32:        ]
84 MFUN32-NEXT:   Subsection [
85 MFUN32-NEXT:     Type: 0xF2
86 MFUN32-NEXT:     PayloadSize: 0x40
87 MFUN32:          FunctionName: _f
88 MFUN32-NEXT:   ]
89 MFUN32-NEXT:   Subsection [
90 MFUN32-NEXT:     Type: 0xF4
91 MFUN32-NEXT:     PayloadSize: 0x18
92 MFUN32:        ]
93 MFUN32-NEXT:   Subsection [
94 MFUN32-NEXT:     Type: 0xF3
95 MFUN32-NEXT:     PayloadSize: 0x46
96 MFUN32:        ]
97 MFUN32-NEXT:   Subsection [
98 MFUN32-NEXT:     Type: 0xF1
99 MFUN32-NEXT:     PayloadSize: 0x8
100 MFUN32:        ]
101 MFUN32-NEXT:   FunctionLineTable [
102 MFUN32-NEXT:     FunctionName: _x
103 MFUN32-NEXT:     CodeSize: 0xA
104 MFUN32-NEXT:     FilenameSegment [
105 MFUN32-NEXT:       Filename: d:\source.c
106 MFUN32-NEXT:       +0x0: 3
107 MFUN32-NEXT:       +0x3: 4
108 MFUN32-NEXT:       +0x8: 5
109 MFUN32-NEXT:     ]
110 MFUN32-NEXT:   ]
111 MFUN32-NEXT:   FunctionLineTable [
112 MFUN32-NEXT:     FunctionName: _y
113 MFUN32-NEXT:     CodeSize: 0xA
114 MFUN32-NEXT:     FilenameSegment [
115 MFUN32-NEXT:       Filename: d:\source.c
116 MFUN32-NEXT:       +0x0: 7
117 MFUN32-NEXT:       +0x3: 8
118 MFUN32-NEXT:       +0x8: 9
119 MFUN32-NEXT:     ]
120 MFUN32-NEXT:   ]
121 MFUN32-NEXT:   FunctionLineTable [
122 MFUN32-NEXT:     FunctionName: _f
123 MFUN32-NEXT:     CodeSize: 0x14
124 MFUN32-NEXT:     FilenameSegment [
125 MFUN32-NEXT:       Filename: d:\source.c
126 MFUN32-NEXT:       +0x0: 11
127 MFUN32-NEXT:       +0x3: 12
128 MFUN32-NEXT:       +0x8: 13
129 MFUN32-NEXT:       +0xD: 14
130 MFUN32-NEXT:       +0x12: 15
131 MFUN32-NEXT:     ]
132 MFUN32-NEXT:   ]
133 MFUN32-NEXT: ]
134
135 MFUN64:      CodeViewLineTables [
136 MFUN64-NEXT:   Magic: 0x4
137 MFUN64-NEXT:   Subsection [
138 MFUN64-NEXT:     Type: 0xF1
139 MFUN64-NEXT:     PayloadSize: 0x52
140 MFUN64:        ]
141 MFUN64-NEXT:   Subsection [
142 MFUN64-NEXT:     Type: 0xF1
143 MFUN64-NEXT:     PayloadSize: 0x4B
144 MFUN64:        ]
145 MFUN64-NEXT:   Subsection [
146 MFUN64-NEXT:     Type: 0xF2
147 MFUN64-NEXT:     PayloadSize: 0x30
148 MFUN64:          FunctionName: x
149 MFUN64-NEXT:   ]
150 MFUN64-NEXT:   Subsection [
151 MFUN64-NEXT:     Type: 0xF1
152 MFUN64-NEXT:     PayloadSize: 0x4B
153 MFUN64:        ]
154 MFUN64-NEXT:   Subsection [
155 MFUN64-NEXT:     Type: 0xF2
156 MFUN64-NEXT:     PayloadSize: 0x30
157 MFUN64:          FunctionName: y
158 MFUN64-NEXT:   ]
159 MFUN64-NEXT:   Subsection [
160 MFUN64-NEXT:     Type: 0xF1
161 MFUN64-NEXT:     PayloadSize: 0x4B
162 MFUN64:        ]
163 MFUN64-NEXT:   Subsection [
164 MFUN64-NEXT:     Type: 0xF2
165 MFUN64-NEXT:     PayloadSize: 0x40
166 MFUN64:          FunctionName: f
167 MFUN64-NEXT:   ]
168 MFUN64-NEXT:   Subsection [
169 MFUN64-NEXT:     Type: 0xF4
170 MFUN64-NEXT:     PayloadSize: 0x18
171 MFUN64:        ]
172 MFUN64-NEXT:   Subsection [
173 MFUN64-NEXT:     Type: 0xF3
174 MFUN64-NEXT:     PayloadSize: 0xD
175 MFUN64:        ]
176 MFUN64-NEXT:   Subsection [
177 MFUN64-NEXT:     Type: 0xF1
178 MFUN64-NEXT:     PayloadSize: 0x8
179 MFUN64:        ]
180 MFUN64-NEXT:   FunctionLineTable [
181 MFUN64-NEXT:     FunctionName: x
182 MFUN64-NEXT:     CodeSize: 0xE
183 MFUN64-NEXT:     FilenameSegment [
184 MFUN64-NEXT:       Filename: d:\source.c
185 MFUN64-NEXT:       +0x0: 3
186 MFUN64-NEXT:       +0x4: 4
187 MFUN64-NEXT:       +0x9: 5
188 MFUN64-NEXT:     ]
189 MFUN64-NEXT:   ]
190 MFUN64-NEXT:   FunctionLineTable [
191 MFUN64-NEXT:     FunctionName: y
192 MFUN64-NEXT:     CodeSize: 0xE
193 MFUN64-NEXT:     FilenameSegment [
194 MFUN64-NEXT:       Filename: d:\source.c
195 MFUN64-NEXT:       +0x0: 7
196 MFUN64-NEXT:       +0x4: 8
197 MFUN64-NEXT:       +0x9: 9
198 MFUN64-NEXT:     ]
199 MFUN64-NEXT:   ]
200 MFUN64-NEXT:   FunctionLineTable [
201 MFUN64-NEXT:     FunctionName: f
202 MFUN64-NEXT:     CodeSize: 0x18
203 MFUN64-NEXT:     FilenameSegment [
204 MFUN64-NEXT:       Filename: d:\source.c
205 MFUN64-NEXT:       +0x0: 11
206 MFUN64-NEXT:       +0x4: 12
207 MFUN64-NEXT:       +0x9: 13
208 MFUN64-NEXT:       +0xE: 14
209 MFUN64-NEXT:       +0x13: 15
210 MFUN64-NEXT:     ]
211 MFUN64-NEXT:   ]
212 MFUN64-NEXT: ]
213
214 MFILE32:      CodeViewLineTables [
215 MFILE32-NEXT:   Magic: 0x4
216 MFILE32-NEXT:   Subsection [
217 MFILE32-NEXT:     Type: 0xF1
218 MFILE32-NEXT:     PayloadSize: 0x51
219 MFILE32:        ]
220 MFILE32-NEXT:   Subsection [
221 MFILE32-NEXT:     Type: 0xF5
222 MFILE32-NEXT:     PayloadSize: 0x24
223 MFILE32:        ]
224 MFILE32-NEXT:   Subsection [
225 MFILE32-NEXT:     Type: 0xF1
226 MFILE32-NEXT:     PayloadSize: 0x4B
227 MFILE32:        ]
228 MFILE32-NEXT:   Subsection [
229 MFILE32-NEXT:     Type: 0xF2
230 MFILE32-NEXT:     PayloadSize: 0x64
231 MFILE32:          FunctionName: _f
232 MFILE32-NEXT:   ]
233 MFILE32-NEXT:   Subsection [
234 MFILE32-NEXT:     Type: 0xF4
235 MFILE32-NEXT:     PayloadSize: 0x28
236 MFILE32:        ]
237 MFILE32-NEXT:   Subsection [
238 MFILE32-NEXT:     Type: 0xF3
239 MFILE32-NEXT:     PayloadSize: 0x57
240 MFILE32:        ]
241 MFILE32-NEXT:   Subsection [
242 MFILE32-NEXT:     Type: 0xF1
243 MFILE32-NEXT:     PayloadSize: 0x8
244 MFILE32:        ]
245 MFILE32-NEXT:   FunctionLineTable [
246 MFILE32-NEXT:     FunctionName: _f
247 MFILE32-NEXT:     CodeSize: 0x14
248 MFILE32-NEXT:     FilenameSegment [
249 MFILE32-NEXT:       Filename: d:\input.c
250 MFILE32-NEXT:       +0x0: 3
251 MFILE32-NEXT:     ]
252 MFILE32-NEXT:     FilenameSegment [
253 MFILE32-NEXT:       Filename: d:\one.c
254 MFILE32-NEXT:       +0x3: 1
255 MFILE32-NEXT:     ]
256 MFILE32-NEXT:     FilenameSegment [
257 MFILE32-NEXT:       Filename: d:\two.c
258 MFILE32-NEXT:       +0x8: 2
259 MFILE32-NEXT:     ]
260 MFILE32-NEXT:     FilenameSegment [
261 MFILE32-NEXT:       Filename: d:\one.c
262 MFILE32-NEXT:       +0xD: 7
263 MFILE32-NEXT:       +0x12: 8
264 MFILE32-NEXT:     ]
265 MFILE32-NEXT:   ]
266 MFILE32-NEXT: ]
267
268 MFILE64:      CodeViewLineTables [
269 MFILE64-NEXT:   Magic: 0x4
270 MFILE64-NEXT:   Subsection [
271 MFILE64-NEXT:     Type: 0xF1
272 MFILE64-NEXT:     PayloadSize: 0x51
273 MFILE64:        ]
274 MFILE64-NEXT:   Subsection [
275 MFILE64-NEXT:     Type: 0xF1
276 MFILE64-NEXT:     PayloadSize: 0x4B
277 MFILE64:        ]
278 MFILE64-NEXT:   Subsection [
279 MFILE64-NEXT:     Type: 0xF2
280 MFILE64-NEXT:     PayloadSize: 0x64
281 MFILE64:          FunctionName: f
282 MFILE64-NEXT:   ]
283 MFILE64-NEXT:   Subsection [
284 MFILE64-NEXT:     Type: 0xF4
285 MFILE64-NEXT:     PayloadSize: 0x28
286 MFILE64:        ]
287 MFILE64-NEXT:   Subsection [
288 MFILE64-NEXT:     Type: 0xF3
289 MFILE64-NEXT:     PayloadSize: 0x1E
290 MFILE64:        ]
291 MFILE64-NEXT:   Subsection [
292 MFILE64-NEXT:     Type: 0xF1
293 MFILE64-NEXT:     PayloadSize: 0x8
294 MFILE64:        ]
295 MFILE64-NEXT:   FunctionLineTable [
296 MFILE64-NEXT:     FunctionName: f
297 MFILE64-NEXT:     CodeSize: 0x18
298 MFILE64-NEXT:     FilenameSegment [
299 MFILE64-NEXT:       Filename: d:\input.c
300 MFILE64-NEXT:       +0x0: 3
301 MFILE64-NEXT:     ]
302 MFILE64-NEXT:     FilenameSegment [
303 MFILE64-NEXT:       Filename: d:\one.c
304 MFILE64-NEXT:       +0x4: 1
305 MFILE64-NEXT:     ]
306 MFILE64-NEXT:     FilenameSegment [
307 MFILE64-NEXT:       Filename: d:\two.c
308 MFILE64-NEXT:       +0x9: 2
309 MFILE64-NEXT:     ]
310 MFILE64-NEXT:     FilenameSegment [
311 MFILE64-NEXT:       Filename: d:\one.c
312 MFILE64-NEXT:       +0xE: 7
313 MFILE64-NEXT:       +0x13: 8
314 MFILE64-NEXT:     ]
315 MFILE64-NEXT:   ]
316 MFILE64-NEXT: ]