1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2 ; The following two object files were generated using the following command:
3 ; D:\> cl /Z7 /c source.c
4 ; with the following contents of D:\source.c:
20 ; using 32-/64-bit versions of CL v17.00.61030 and v18.00.21005.1 respectively.
21 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifunction-linetables.obj.coff-2012-i368 \
22 RUN: | FileCheck %s -check-prefix MFUN32
23 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifunction-linetables.obj.coff-2013-i368 \
24 RUN: | FileCheck %s -check-prefix MFUN32
25 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifunction-linetables.obj.coff-2012-x86_64 \
26 RUN: | FileCheck %s -check-prefix MFUN64
27 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifunction-linetables.obj.coff-2013-x86_64 \
28 RUN: | FileCheck %s -check-prefix MFUN64
30 MFUN32: CodeViewDebugInfo [
31 MFUN32-NEXT: Magic: 0x4
32 MFUN32-NEXT: Subsection [
33 MFUN32-NEXT: Type: 0xF1
34 MFUN32-NEXT: PayloadSize: 0x52
36 MFUN32-NEXT: Subsection [
37 MFUN32-NEXT: Type: 0xF5
38 MFUN32-NEXT: PayloadSize: 0x24
40 MFUN32-NEXT: Subsection [
41 MFUN32-NEXT: Type: 0xF1
42 MFUN32-NEXT: PayloadSize: 0x4B
44 MFUN32-NEXT: DisplayName: x
45 MFUN32-NEXT: Section: _x
46 MFUN32-NEXT: CodeSize: 0xA
50 MFUN32-NEXT: Subsection [
51 MFUN32-NEXT: Type: 0xF2
52 MFUN32-NEXT: PayloadSize: 0x30
53 MFUN32: LinkageName: _x
55 MFUN32-NEXT: Subsection [
56 MFUN32-NEXT: Type: 0xF5
57 MFUN32-NEXT: PayloadSize: 0x24
59 MFUN32-NEXT: Subsection [
60 MFUN32-NEXT: Type: 0xF1
61 MFUN32-NEXT: PayloadSize: 0x4B
63 MFUN32-NEXT: DisplayName: y
64 MFUN32-NEXT: Section: _y
65 MFUN32-NEXT: CodeSize: 0xA
69 MFUN32-NEXT: Subsection [
70 MFUN32-NEXT: Type: 0xF2
71 MFUN32-NEXT: PayloadSize: 0x30
72 MFUN32: LinkageName: _y
74 MFUN32-NEXT: Subsection [
75 MFUN32-NEXT: Type: 0xF5
76 MFUN32-NEXT: PayloadSize: 0x24
78 MFUN32-NEXT: Subsection [
79 MFUN32-NEXT: Type: 0xF1
80 MFUN32-NEXT: PayloadSize: 0x4B
82 MFUN32-NEXT: DisplayName: f
83 MFUN32-NEXT: Section: _f
84 MFUN32-NEXT: CodeSize: 0x14
88 MFUN32-NEXT: Subsection [
89 MFUN32-NEXT: Type: 0xF2
90 MFUN32-NEXT: PayloadSize: 0x40
91 MFUN32: LinkageName: _f
93 MFUN32-NEXT: Subsection [
94 MFUN32-NEXT: Type: 0xF4
95 MFUN32-NEXT: PayloadSize: 0x18
97 MFUN32-NEXT: Subsection [
98 MFUN32-NEXT: Type: 0xF3
99 MFUN32-NEXT: PayloadSize: 0x46
101 MFUN32-NEXT: Subsection [
102 MFUN32-NEXT: Type: 0xF1
103 MFUN32-NEXT: PayloadSize: 0x8
105 MFUN32-NEXT: FunctionLineTable [
106 MFUN32-NEXT: LinkageName: _x
107 MFUN32-NEXT: Flags: 0x0
108 MFUN32-NEXT: CodeSize: 0xA
109 MFUN32-NEXT: FilenameSegment [
110 MFUN32-NEXT: Filename: d:\source.c
116 MFUN32-NEXT: FunctionLineTable [
117 MFUN32-NEXT: LinkageName: _y
118 MFUN32-NEXT: Flags: 0x0
119 MFUN32-NEXT: CodeSize: 0xA
120 MFUN32-NEXT: FilenameSegment [
121 MFUN32-NEXT: Filename: d:\source.c
127 MFUN32-NEXT: FunctionLineTable [
128 MFUN32-NEXT: LinkageName: _f
129 MFUN32-NEXT: Flags: 0x0
130 MFUN32-NEXT: CodeSize: 0x14
131 MFUN32-NEXT: FilenameSegment [
132 MFUN32-NEXT: Filename: d:\source.c
133 MFUN32-NEXT: +0x0: 11
134 MFUN32-NEXT: +0x3: 12
135 MFUN32-NEXT: +0x8: 13
136 MFUN32-NEXT: +0xD: 14
137 MFUN32-NEXT: +0x12: 15
142 MFUN64: CodeViewDebugInfo [
143 MFUN64-NEXT: Magic: 0x4
144 MFUN64-NEXT: Subsection [
145 MFUN64-NEXT: Type: 0xF1
146 MFUN64-NEXT: PayloadSize: 0x52
148 MFUN64-NEXT: Subsection [
149 MFUN64-NEXT: Type: 0xF1
150 MFUN64-NEXT: PayloadSize: 0x4B
152 MFUN64-NEXT: DisplayName: x
153 MFUN64-NEXT: Section: x
154 MFUN64-NEXT: CodeSize: 0xE
158 MFUN64-NEXT: Subsection [
159 MFUN64-NEXT: Type: 0xF2
160 MFUN64-NEXT: PayloadSize: 0x30
161 MFUN64: LinkageName: x
163 MFUN64-NEXT: Subsection [
164 MFUN64-NEXT: Type: 0xF1
165 MFUN64-NEXT: PayloadSize: 0x4B
167 MFUN64-NEXT: DisplayName: y
168 MFUN64-NEXT: Section: y
169 MFUN64-NEXT: CodeSize: 0xE
173 MFUN64-NEXT: Subsection [
174 MFUN64-NEXT: Type: 0xF2
175 MFUN64-NEXT: PayloadSize: 0x30
176 MFUN64: LinkageName: y
178 MFUN64-NEXT: Subsection [
179 MFUN64-NEXT: Type: 0xF1
180 MFUN64-NEXT: PayloadSize: 0x4B
182 MFUN64-NEXT: DisplayName: f
183 MFUN64-NEXT: Section: f
184 MFUN64-NEXT: CodeSize: 0x18
188 MFUN64-NEXT: Subsection [
189 MFUN64-NEXT: Type: 0xF2
190 MFUN64-NEXT: PayloadSize: 0x40
191 MFUN64: LinkageName: f
193 MFUN64-NEXT: Subsection [
194 MFUN64-NEXT: Type: 0xF4
195 MFUN64-NEXT: PayloadSize: 0x18
197 MFUN64-NEXT: Subsection [
198 MFUN64-NEXT: Type: 0xF3
199 MFUN64-NEXT: PayloadSize: 0xD
201 MFUN64-NEXT: Subsection [
202 MFUN64-NEXT: Type: 0xF1
203 MFUN64-NEXT: PayloadSize: 0x8
205 MFUN64-NEXT: FunctionLineTable [
206 MFUN64-NEXT: LinkageName: x
207 MFUN64-NEXT: Flags: 0x0
208 MFUN64-NEXT: CodeSize: 0xE
209 MFUN64-NEXT: FilenameSegment [
210 MFUN64-NEXT: Filename: d:\source.c
216 MFUN64-NEXT: FunctionLineTable [
217 MFUN64-NEXT: LinkageName: y
218 MFUN64-NEXT: Flags: 0x0
219 MFUN64-NEXT: CodeSize: 0xE
220 MFUN64-NEXT: FilenameSegment [
221 MFUN64-NEXT: Filename: d:\source.c
227 MFUN64-NEXT: FunctionLineTable [
228 MFUN64-NEXT: LinkageName: f
229 MFUN64-NEXT: Flags: 0x0
230 MFUN64-NEXT: CodeSize: 0x18
231 MFUN64-NEXT: FilenameSegment [
232 MFUN64-NEXT: Filename: d:\source.c
233 MFUN64-NEXT: +0x0: 11
234 MFUN64-NEXT: +0x4: 12
235 MFUN64-NEXT: +0x9: 13
236 MFUN64-NEXT: +0xE: 14
237 MFUN64-NEXT: +0x13: 15
242 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
243 ; The following two object files were generated using the following command:
244 ; D:\> cl /Z7 /c input.c
245 ; with the following contents of D:\input.c:
256 ; using 32-/64-bit versions of CL v17.00.61030 and v18.00.21005.1 respectively.
257 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifile-linetables.obj.coff-2012-i368 \
258 RUN: | FileCheck %s -check-prefix MFILE32
259 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifile-linetables.obj.coff-2013-i368 \
260 RUN: | FileCheck %s -check-prefix MFILE32
261 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifile-linetables.obj.coff-2012-x86_64 \
262 RUN: | FileCheck %s -check-prefix MFILE64
263 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/multifile-linetables.obj.coff-2013-x86_64 \
264 RUN: | FileCheck %s -check-prefix MFILE64
266 MFILE32: CodeViewDebugInfo [
267 MFILE32-NEXT: Magic: 0x4
268 MFILE32-NEXT: Subsection [
269 MFILE32-NEXT: Type: 0xF1
270 MFILE32-NEXT: PayloadSize: 0x51
272 MFILE32-NEXT: Subsection [
273 MFILE32-NEXT: Type: 0xF5
274 MFILE32-NEXT: PayloadSize: 0x24
276 MFILE32-NEXT: Subsection [
277 MFILE32-NEXT: Type: 0xF1
278 MFILE32-NEXT: PayloadSize: 0x4B
280 MFILE32-NEXT: DisplayName: f
281 MFILE32-NEXT: Section: _f
282 MFILE32-NEXT: CodeSize: 0x14
284 MFILE32-NEXT: ProcEnd
286 MFILE32-NEXT: Subsection [
287 MFILE32-NEXT: Type: 0xF2
288 MFILE32-NEXT: PayloadSize: 0x64
289 MFILE32: LinkageName: _f
291 MFILE32-NEXT: Subsection [
292 MFILE32-NEXT: Type: 0xF4
293 MFILE32-NEXT: PayloadSize: 0x28
295 MFILE32-NEXT: Subsection [
296 MFILE32-NEXT: Type: 0xF3
297 MFILE32-NEXT: PayloadSize: 0x57
299 MFILE32-NEXT: Subsection [
300 MFILE32-NEXT: Type: 0xF1
301 MFILE32-NEXT: PayloadSize: 0x8
303 MFILE32-NEXT: FunctionLineTable [
304 MFILE32-NEXT: LinkageName: _f
305 MFILE32-NEXT: Flags: 0x0
306 MFILE32-NEXT: CodeSize: 0x14
307 MFILE32-NEXT: FilenameSegment [
308 MFILE32-NEXT: Filename: d:\input.c
309 MFILE32-NEXT: +0x0: 3
311 MFILE32-NEXT: FilenameSegment [
312 MFILE32-NEXT: Filename: d:\one.c
313 MFILE32-NEXT: +0x3: 1
315 MFILE32-NEXT: FilenameSegment [
316 MFILE32-NEXT: Filename: d:\two.c
317 MFILE32-NEXT: +0x8: 2
319 MFILE32-NEXT: FilenameSegment [
320 MFILE32-NEXT: Filename: d:\one.c
321 MFILE32-NEXT: +0xD: 7
322 MFILE32-NEXT: +0x12: 8
327 MFILE64: CodeViewDebugInfo [
328 MFILE64-NEXT: Magic: 0x4
329 MFILE64-NEXT: Subsection [
330 MFILE64-NEXT: Type: 0xF1
331 MFILE64-NEXT: PayloadSize: 0x51
333 MFILE64-NEXT: Subsection [
334 MFILE64-NEXT: Type: 0xF1
335 MFILE64-NEXT: PayloadSize: 0x4B
337 MFILE64-NEXT: DisplayName: f
338 MFILE64-NEXT: Section: f
339 MFILE64-NEXT: CodeSize: 0x18
341 MFILE64-NEXT: ProcEnd
343 MFILE64-NEXT: Subsection [
344 MFILE64-NEXT: Type: 0xF2
345 MFILE64-NEXT: PayloadSize: 0x64
346 MFILE64: LinkageName: f
348 MFILE64-NEXT: Subsection [
349 MFILE64-NEXT: Type: 0xF4
350 MFILE64-NEXT: PayloadSize: 0x28
352 MFILE64-NEXT: Subsection [
353 MFILE64-NEXT: Type: 0xF3
354 MFILE64-NEXT: PayloadSize: 0x1E
356 MFILE64-NEXT: Subsection [
357 MFILE64-NEXT: Type: 0xF1
358 MFILE64-NEXT: PayloadSize: 0x8
360 MFILE64-NEXT: FunctionLineTable [
361 MFILE64-NEXT: LinkageName: f
362 MFILE64-NEXT: Flags: 0x0
363 MFILE64-NEXT: CodeSize: 0x18
364 MFILE64-NEXT: FilenameSegment [
365 MFILE64-NEXT: Filename: d:\input.c
366 MFILE64-NEXT: +0x0: 3
368 MFILE64-NEXT: FilenameSegment [
369 MFILE64-NEXT: Filename: d:\one.c
370 MFILE64-NEXT: +0x4: 1
372 MFILE64-NEXT: FilenameSegment [
373 MFILE64-NEXT: Filename: d:\two.c
374 MFILE64-NEXT: +0x9: 2
376 MFILE64-NEXT: FilenameSegment [
377 MFILE64-NEXT: Filename: d:\one.c
378 MFILE64-NEXT: +0xE: 7
379 MFILE64-NEXT: +0x13: 8
384 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
385 ; The following object files were generated using the following command:
386 ; C:\src> cl /Z7 /Gy /c test.cc
387 ; with the following contents of C:\src\test.cc:
397 ; using 32-version of CL v17.00.61030 and v18.00.21005.1 respectively.
398 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/comdat-function-linetables.obj.coff-2012-i386 \
399 RUN: | FileCheck %s -check-prefix MCOMDAT
400 RUN: llvm-readobj -s -codeview -section-symbols %p/Inputs/comdat-function-linetables.obj.coff-2013-i386 \
401 RUN: | FileCheck %s -check-prefix MCOMDAT
404 MCOMDAT-NEXT: DisplayName: f
405 MCOMDAT-NEXT: Section: ?f@@YAHXZ
406 MCOMDAT-NEXT: CodeSize: 0x7
408 MCOMDAT: FunctionLineTable [
409 MCOMDAT-NEXT: LinkageName: ?f@@YAHXZ
410 MCOMDAT-NEXT: Flags: 0x0
411 MCOMDAT-NEXT: CodeSize: 0x7
412 MCOMDAT-NEXT: FilenameSegment [
413 MCOMDAT-NEXT: Filename: c:\src\test.cc
414 MCOMDAT-NEXT: +0x0: 2
415 MCOMDAT-NEXT: +0x3: 3
416 MCOMDAT-NEXT: +0x5: 4
420 MCOMDAT-NEXT: DisplayName: g
421 MCOMDAT-NEXT: Section: ?g@@YAHXZ
422 MCOMDAT-NEXT: CodeSize: 0x7
424 MCOMDAT: FunctionLineTable [
425 MCOMDAT-NEXT: LinkageName: ?g@@YAHXZ
426 MCOMDAT-NEXT: Flags: 0x0
427 MCOMDAT-NEXT: CodeSize: 0x7
428 MCOMDAT-NEXT: FilenameSegment [
429 MCOMDAT-NEXT: Filename: c:\src\test.cc
430 MCOMDAT-NEXT: +0x0: 7
431 MCOMDAT-NEXT: +0x3: 8
432 MCOMDAT-NEXT: +0x5: 9