[Instrumentation] Fix a warning
[llvm-project.git] / llvm / test / tools / llvm-symbolizer / frame-types.s
blob7f38b1767a617d74829e9099a6b102b7d356c19d
1 // REQUIRES: x86-registered-target
3 // RUN: llvm-mc -filetype=obj -triple=i386-linux-gnu -o %t.o %s
4 // RUN: echo 'FRAME %t.o 0' | llvm-symbolizer | FileCheck %s
6 // CHECK: f
7 // CHECK-NEXT: a
8 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:11
9 // CHECK-NEXT: -5 1 ??
10 // CHECK-NEXT: f
11 // CHECK-NEXT: b
12 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:12
13 // CHECK-NEXT: -12 4 ??
14 // CHECK-NEXT: f
15 // CHECK-NEXT: c
16 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:13
17 // CHECK-NEXT: -16 4 ??
18 // CHECK-NEXT: f
19 // CHECK-NEXT: d
20 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:14
21 // CHECK-NEXT: -20 4 ??
22 // CHECK-NEXT: f
23 // CHECK-NEXT: e
24 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:15
25 // CHECK-NEXT: -32 8 ??
26 // CHECK-NEXT: f
27 // CHECK-NEXT: f
28 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:16
29 // CHECK-NEXT: -36 4 ??
30 // CHECK-NEXT: f
31 // CHECK-NEXT: g
32 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:17
33 // CHECK-NEXT: -37 1 ??
34 // CHECK-NEXT: f
35 // CHECK-NEXT: h
36 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:18
37 // CHECK-NEXT: -38 1 ??
38 // CHECK-NEXT: f
39 // CHECK-NEXT: i
40 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:19
41 // CHECK-NEXT: -44 4 ??
42 // CHECK-NEXT: f
43 // CHECK-NEXT: j
44 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:21
45 // CHECK-NEXT: -45 1 ??
46 // CHECK-NEXT: f
47 // CHECK-NEXT: k
48 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:22
49 // CHECK-NEXT: -57 12 ??
50 // CHECK-NEXT: f
51 // CHECK-NEXT: l
52 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:23
53 // CHECK-NEXT: -345 288 ??
54 // CHECK-NEXT: f
55 // CHECK-NEXT: m
56 // CHECK-NEXT: /tmp{{/|\\}}frame-types.cpp:24
57 // CHECK-NEXT: -352 4 ??
59 // Generated from:
61 // struct S;
63 // void f() {
64 // char a;
65 // char *b;
66 // char &c = a;
67 // char &&d = 1;
68 // char (S::*e)();
69 // char S::*f;
70 // const char g = 2;
71 // volatile char h;
72 // char *__restrict i;
73 // typedef char char_typedef;
74 // char_typedef j;
75 // char k[12];
76 // char l[12][24];
77 // }
79 // clang++ --target=i386-linux-gnu frame-types.cpp -g -std=c++11 -S -o frame-types.s
81 .text
82 .file "frame-types.cpp"
83 .globl _Z1fv # -- Begin function _Z1fv
84 .p2align 4, 0x90
85 .type _Z1fv,@function
86 _Z1fv: # @_Z1fv
87 .Lfunc_begin0:
88 .file 0 "/tmp" "frame-types.cpp"
89 .loc 0 10 0 # frame-types.cpp:10:0
90 .cfi_startproc
91 # %bb.0: # %entry
92 pushl %ebp
93 .cfi_def_cfa_offset 8
94 .cfi_offset %ebp, -8
95 movl %esp, %ebp
96 .cfi_def_cfa_register %ebp
97 .Ltmp0:
98 pushl %ebx
99 subl $372, %esp # imm = 0x174
100 .cfi_offset %ebx, -12
101 .loc 0 13 9 prologue_end # frame-types.cpp:13:9
102 calll .L0$pb
103 .L0$pb:
104 popl %ebx
105 .Ltmp1:
106 addl $_GLOBAL_OFFSET_TABLE_+(.Ltmp1-.L0$pb), %ebx
107 leal -5(%ebp), %eax
108 movl %eax, -16(%ebp)
109 .loc 0 14 14 # frame-types.cpp:14:14
110 movb $1, -21(%ebp)
111 .loc 0 14 10 is_stmt 0 # frame-types.cpp:14:10
112 leal -21(%ebp), %eax
113 movl %eax, -20(%ebp)
114 .loc 0 17 14 is_stmt 1 # frame-types.cpp:17:14
115 movb $2, -37(%ebp)
116 .loc 0 24 14 # frame-types.cpp:24:14
117 leal -352(%ebp), %eax
118 xorl %ecx, %ecx
119 movl %eax, (%esp)
120 movl $0, 4(%esp)
121 movl $4, 8(%esp)
122 calll memset@PLT
123 .loc 0 25 1 epilogue_begin # frame-types.cpp:25:1
124 addl $372, %esp # imm = 0x174
125 popl %ebx
126 popl %ebp
127 .cfi_def_cfa %esp, 4
128 retl
129 .Ltmp2:
130 .Lfunc_end0:
131 .size _Z1fv, .Lfunc_end0-_Z1fv
132 .cfi_endproc
133 # -- End function
134 .section .debug_abbrev,"",@progbits
135 .byte 1 # Abbreviation Code
136 .byte 17 # DW_TAG_compile_unit
137 .byte 1 # DW_CHILDREN_yes
138 .byte 37 # DW_AT_producer
139 .byte 37 # DW_FORM_strx1
140 .byte 19 # DW_AT_language
141 .byte 5 # DW_FORM_data2
142 .byte 3 # DW_AT_name
143 .byte 37 # DW_FORM_strx1
144 .byte 114 # DW_AT_str_offsets_base
145 .byte 23 # DW_FORM_sec_offset
146 .byte 16 # DW_AT_stmt_list
147 .byte 23 # DW_FORM_sec_offset
148 .byte 27 # DW_AT_comp_dir
149 .byte 37 # DW_FORM_strx1
150 .byte 17 # DW_AT_low_pc
151 .byte 27 # DW_FORM_addrx
152 .byte 18 # DW_AT_high_pc
153 .byte 6 # DW_FORM_data4
154 .byte 115 # DW_AT_addr_base
155 .byte 23 # DW_FORM_sec_offset
156 .byte 0 # EOM(1)
157 .byte 0 # EOM(2)
158 .byte 2 # Abbreviation Code
159 .byte 46 # DW_TAG_subprogram
160 .byte 1 # DW_CHILDREN_yes
161 .byte 17 # DW_AT_low_pc
162 .byte 27 # DW_FORM_addrx
163 .byte 18 # DW_AT_high_pc
164 .byte 6 # DW_FORM_data4
165 .byte 64 # DW_AT_frame_base
166 .byte 24 # DW_FORM_exprloc
167 .byte 110 # DW_AT_linkage_name
168 .byte 37 # DW_FORM_strx1
169 .byte 3 # DW_AT_name
170 .byte 37 # DW_FORM_strx1
171 .byte 58 # DW_AT_decl_file
172 .byte 11 # DW_FORM_data1
173 .byte 59 # DW_AT_decl_line
174 .byte 11 # DW_FORM_data1
175 .byte 63 # DW_AT_external
176 .byte 25 # DW_FORM_flag_present
177 .byte 0 # EOM(1)
178 .byte 0 # EOM(2)
179 .byte 3 # Abbreviation Code
180 .byte 52 # DW_TAG_variable
181 .byte 0 # DW_CHILDREN_no
182 .byte 2 # DW_AT_location
183 .byte 24 # DW_FORM_exprloc
184 .byte 3 # DW_AT_name
185 .byte 37 # DW_FORM_strx1
186 .byte 58 # DW_AT_decl_file
187 .byte 11 # DW_FORM_data1
188 .byte 59 # DW_AT_decl_line
189 .byte 11 # DW_FORM_data1
190 .byte 73 # DW_AT_type
191 .byte 19 # DW_FORM_ref4
192 .byte 0 # EOM(1)
193 .byte 0 # EOM(2)
194 .byte 4 # Abbreviation Code
195 .byte 22 # DW_TAG_typedef
196 .byte 0 # DW_CHILDREN_no
197 .byte 73 # DW_AT_type
198 .byte 19 # DW_FORM_ref4
199 .byte 3 # DW_AT_name
200 .byte 37 # DW_FORM_strx1
201 .byte 58 # DW_AT_decl_file
202 .byte 11 # DW_FORM_data1
203 .byte 59 # DW_AT_decl_line
204 .byte 11 # DW_FORM_data1
205 .byte 0 # EOM(1)
206 .byte 0 # EOM(2)
207 .byte 5 # Abbreviation Code
208 .byte 36 # DW_TAG_base_type
209 .byte 0 # DW_CHILDREN_no
210 .byte 3 # DW_AT_name
211 .byte 37 # DW_FORM_strx1
212 .byte 62 # DW_AT_encoding
213 .byte 11 # DW_FORM_data1
214 .byte 11 # DW_AT_byte_size
215 .byte 11 # DW_FORM_data1
216 .byte 0 # EOM(1)
217 .byte 0 # EOM(2)
218 .byte 6 # Abbreviation Code
219 .byte 15 # DW_TAG_pointer_type
220 .byte 0 # DW_CHILDREN_no
221 .byte 73 # DW_AT_type
222 .byte 19 # DW_FORM_ref4
223 .byte 0 # EOM(1)
224 .byte 0 # EOM(2)
225 .byte 7 # Abbreviation Code
226 .byte 16 # DW_TAG_reference_type
227 .byte 0 # DW_CHILDREN_no
228 .byte 73 # DW_AT_type
229 .byte 19 # DW_FORM_ref4
230 .byte 0 # EOM(1)
231 .byte 0 # EOM(2)
232 .byte 8 # Abbreviation Code
233 .byte 66 # DW_TAG_rvalue_reference_type
234 .byte 0 # DW_CHILDREN_no
235 .byte 73 # DW_AT_type
236 .byte 19 # DW_FORM_ref4
237 .byte 0 # EOM(1)
238 .byte 0 # EOM(2)
239 .byte 9 # Abbreviation Code
240 .byte 31 # DW_TAG_ptr_to_member_type
241 .byte 0 # DW_CHILDREN_no
242 .byte 73 # DW_AT_type
243 .byte 19 # DW_FORM_ref4
244 .byte 29 # DW_AT_containing_type
245 .byte 19 # DW_FORM_ref4
246 .byte 0 # EOM(1)
247 .byte 0 # EOM(2)
248 .byte 10 # Abbreviation Code
249 .byte 21 # DW_TAG_subroutine_type
250 .byte 1 # DW_CHILDREN_yes
251 .byte 73 # DW_AT_type
252 .byte 19 # DW_FORM_ref4
253 .byte 0 # EOM(1)
254 .byte 0 # EOM(2)
255 .byte 11 # Abbreviation Code
256 .byte 5 # DW_TAG_formal_parameter
257 .byte 0 # DW_CHILDREN_no
258 .byte 73 # DW_AT_type
259 .byte 19 # DW_FORM_ref4
260 .byte 52 # DW_AT_artificial
261 .byte 25 # DW_FORM_flag_present
262 .byte 0 # EOM(1)
263 .byte 0 # EOM(2)
264 .byte 12 # Abbreviation Code
265 .byte 19 # DW_TAG_structure_type
266 .byte 0 # DW_CHILDREN_no
267 .byte 3 # DW_AT_name
268 .byte 37 # DW_FORM_strx1
269 .byte 60 # DW_AT_declaration
270 .byte 25 # DW_FORM_flag_present
271 .byte 0 # EOM(1)
272 .byte 0 # EOM(2)
273 .byte 13 # Abbreviation Code
274 .byte 38 # DW_TAG_const_type
275 .byte 0 # DW_CHILDREN_no
276 .byte 73 # DW_AT_type
277 .byte 19 # DW_FORM_ref4
278 .byte 0 # EOM(1)
279 .byte 0 # EOM(2)
280 .byte 14 # Abbreviation Code
281 .byte 53 # DW_TAG_volatile_type
282 .byte 0 # DW_CHILDREN_no
283 .byte 73 # DW_AT_type
284 .byte 19 # DW_FORM_ref4
285 .byte 0 # EOM(1)
286 .byte 0 # EOM(2)
287 .byte 15 # Abbreviation Code
288 .byte 55 # DW_TAG_restrict_type
289 .byte 0 # DW_CHILDREN_no
290 .byte 73 # DW_AT_type
291 .byte 19 # DW_FORM_ref4
292 .byte 0 # EOM(1)
293 .byte 0 # EOM(2)
294 .byte 16 # Abbreviation Code
295 .byte 1 # DW_TAG_array_type
296 .byte 1 # DW_CHILDREN_yes
297 .byte 73 # DW_AT_type
298 .byte 19 # DW_FORM_ref4
299 .byte 0 # EOM(1)
300 .byte 0 # EOM(2)
301 .byte 17 # Abbreviation Code
302 .byte 33 # DW_TAG_subrange_type
303 .byte 0 # DW_CHILDREN_no
304 .byte 73 # DW_AT_type
305 .byte 19 # DW_FORM_ref4
306 .byte 55 # DW_AT_count
307 .byte 11 # DW_FORM_data1
308 .byte 0 # EOM(1)
309 .byte 0 # EOM(2)
310 .byte 18 # Abbreviation Code
311 .byte 36 # DW_TAG_base_type
312 .byte 0 # DW_CHILDREN_no
313 .byte 3 # DW_AT_name
314 .byte 37 # DW_FORM_strx1
315 .byte 11 # DW_AT_byte_size
316 .byte 11 # DW_FORM_data1
317 .byte 62 # DW_AT_encoding
318 .byte 11 # DW_FORM_data1
319 .byte 0 # EOM(1)
320 .byte 0 # EOM(2)
321 .byte 19 # Abbreviation Code
322 .byte 19 # DW_TAG_structure_type
323 .byte 1 # DW_CHILDREN_yes
324 .byte 54 # DW_AT_calling_convention
325 .byte 11 # DW_FORM_data1
326 .byte 3 # DW_AT_name
327 .byte 37 # DW_FORM_strx1
328 .byte 11 # DW_AT_byte_size
329 .byte 11 # DW_FORM_data1
330 .byte 58 # DW_AT_decl_file
331 .byte 11 # DW_FORM_data1
332 .byte 59 # DW_AT_decl_line
333 .byte 11 # DW_FORM_data1
334 .byte 0 # EOM(1)
335 .byte 0 # EOM(2)
336 .byte 20 # Abbreviation Code
337 .byte 47 # DW_TAG_template_type_parameter
338 .byte 0 # DW_CHILDREN_no
339 .byte 73 # DW_AT_type
340 .byte 19 # DW_FORM_ref4
341 .byte 3 # DW_AT_name
342 .byte 37 # DW_FORM_strx1
343 .byte 0 # EOM(1)
344 .byte 0 # EOM(2)
345 .byte 21 # Abbreviation Code
346 .byte 13 # DW_TAG_member
347 .byte 0 # DW_CHILDREN_no
348 .byte 3 # DW_AT_name
349 .byte 37 # DW_FORM_strx1
350 .byte 73 # DW_AT_type
351 .byte 19 # DW_FORM_ref4
352 .byte 58 # DW_AT_decl_file
353 .byte 11 # DW_FORM_data1
354 .byte 59 # DW_AT_decl_line
355 .byte 11 # DW_FORM_data1
356 .byte 56 # DW_AT_data_member_location
357 .byte 11 # DW_FORM_data1
358 .byte 0 # EOM(1)
359 .byte 0 # EOM(2)
360 .byte 0 # EOM(3)
361 .section .debug_info,"",@progbits
362 .Lcu_begin0:
363 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
364 .Ldebug_info_start0:
365 .short 5 # DWARF version number
366 .byte 1 # DWARF Unit Type
367 .byte 4 # Address Size (in bytes)
368 .long .debug_abbrev # Offset Into Abbrev. Section
369 .byte 1 # Abbrev [1] 0xc:0x148 DW_TAG_compile_unit
370 .byte 0 # DW_AT_producer
371 .short 26 # DW_AT_language
372 .byte 1 # DW_AT_name
373 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base
374 .long .Lline_table_start0 # DW_AT_stmt_list
375 .byte 2 # DW_AT_comp_dir
376 .byte 0 # DW_AT_low_pc
377 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
378 .long .Laddr_table_base0 # DW_AT_addr_base
379 .byte 2 # Abbrev [2] 0x23:0xa6 DW_TAG_subprogram
380 .byte 0 # DW_AT_low_pc
381 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
382 .byte 1 # DW_AT_frame_base
383 .byte 85
384 .byte 3 # DW_AT_linkage_name
385 .byte 4 # DW_AT_name
386 .byte 0 # DW_AT_decl_file
387 .byte 10 # DW_AT_decl_line
388 # DW_AT_external
389 .byte 3 # Abbrev [3] 0x2f:0xb DW_TAG_variable
390 .byte 2 # DW_AT_location
391 .byte 145
392 .byte 123
393 .byte 5 # DW_AT_name
394 .byte 0 # DW_AT_decl_file
395 .byte 11 # DW_AT_decl_line
396 .long 201 # DW_AT_type
397 .byte 3 # Abbrev [3] 0x3a:0xb DW_TAG_variable
398 .byte 2 # DW_AT_location
399 .byte 145
400 .byte 116
401 .byte 7 # DW_AT_name
402 .byte 0 # DW_AT_decl_file
403 .byte 12 # DW_AT_decl_line
404 .long 205 # DW_AT_type
405 .byte 3 # Abbrev [3] 0x45:0xb DW_TAG_variable
406 .byte 2 # DW_AT_location
407 .byte 145
408 .byte 112
409 .byte 8 # DW_AT_name
410 .byte 0 # DW_AT_decl_file
411 .byte 13 # DW_AT_decl_line
412 .long 210 # DW_AT_type
413 .byte 3 # Abbrev [3] 0x50:0xb DW_TAG_variable
414 .byte 2 # DW_AT_location
415 .byte 145
416 .byte 108
417 .byte 9 # DW_AT_name
418 .byte 0 # DW_AT_decl_file
419 .byte 14 # DW_AT_decl_line
420 .long 215 # DW_AT_type
421 .byte 3 # Abbrev [3] 0x5b:0xb DW_TAG_variable
422 .byte 2 # DW_AT_location
423 .byte 145
424 .byte 96
425 .byte 10 # DW_AT_name
426 .byte 0 # DW_AT_decl_file
427 .byte 15 # DW_AT_decl_line
428 .long 220 # DW_AT_type
429 .byte 3 # Abbrev [3] 0x66:0xb DW_TAG_variable
430 .byte 2 # DW_AT_location
431 .byte 145
432 .byte 92
433 .byte 4 # DW_AT_name
434 .byte 0 # DW_AT_decl_file
435 .byte 16 # DW_AT_decl_line
436 .long 247 # DW_AT_type
437 .byte 3 # Abbrev [3] 0x71:0xb DW_TAG_variable
438 .byte 2 # DW_AT_location
439 .byte 145
440 .byte 91
441 .byte 12 # DW_AT_name
442 .byte 0 # DW_AT_decl_file
443 .byte 17 # DW_AT_decl_line
444 .long 256 # DW_AT_type
445 .byte 3 # Abbrev [3] 0x7c:0xb DW_TAG_variable
446 .byte 2 # DW_AT_location
447 .byte 145
448 .byte 90
449 .byte 13 # DW_AT_name
450 .byte 0 # DW_AT_decl_file
451 .byte 18 # DW_AT_decl_line
452 .long 261 # DW_AT_type
453 .byte 3 # Abbrev [3] 0x87:0xb DW_TAG_variable
454 .byte 2 # DW_AT_location
455 .byte 145
456 .byte 84
457 .byte 14 # DW_AT_name
458 .byte 0 # DW_AT_decl_file
459 .byte 19 # DW_AT_decl_line
460 .long 266 # DW_AT_type
461 .byte 3 # Abbrev [3] 0x92:0xb DW_TAG_variable
462 .byte 2 # DW_AT_location
463 .byte 145
464 .byte 83
465 .byte 15 # DW_AT_name
466 .byte 0 # DW_AT_decl_file
467 .byte 21 # DW_AT_decl_line
468 .long 192 # DW_AT_type
469 .byte 3 # Abbrev [3] 0x9d:0xb DW_TAG_variable
470 .byte 2 # DW_AT_location
471 .byte 145
472 .byte 71
473 .byte 17 # DW_AT_name
474 .byte 0 # DW_AT_decl_file
475 .byte 22 # DW_AT_decl_line
476 .long 271 # DW_AT_type
477 .byte 3 # Abbrev [3] 0xa8:0xc DW_TAG_variable
478 .byte 3 # DW_AT_location
479 .byte 145
480 .ascii "\247}"
481 .byte 19 # DW_AT_name
482 .byte 0 # DW_AT_decl_file
483 .byte 23 # DW_AT_decl_line
484 .long 287 # DW_AT_type
485 .byte 3 # Abbrev [3] 0xb4:0xc DW_TAG_variable
486 .byte 3 # DW_AT_location
487 .byte 145
488 .ascii "\240}"
489 .byte 20 # DW_AT_name
490 .byte 0 # DW_AT_decl_file
491 .byte 24 # DW_AT_decl_line
492 .long 305 # DW_AT_type
493 .byte 4 # Abbrev [4] 0xc0:0x8 DW_TAG_typedef
494 .long 201 # DW_AT_type
495 .byte 16 # DW_AT_name
496 .byte 0 # DW_AT_decl_file
497 .byte 20 # DW_AT_decl_line
498 .byte 0 # End Of Children Mark
499 .byte 5 # Abbrev [5] 0xc9:0x4 DW_TAG_base_type
500 .byte 6 # DW_AT_name
501 .byte 6 # DW_AT_encoding
502 .byte 1 # DW_AT_byte_size
503 .byte 6 # Abbrev [6] 0xcd:0x5 DW_TAG_pointer_type
504 .long 201 # DW_AT_type
505 .byte 7 # Abbrev [7] 0xd2:0x5 DW_TAG_reference_type
506 .long 201 # DW_AT_type
507 .byte 8 # Abbrev [8] 0xd7:0x5 DW_TAG_rvalue_reference_type
508 .long 201 # DW_AT_type
509 .byte 9 # Abbrev [9] 0xdc:0x9 DW_TAG_ptr_to_member_type
510 .long 229 # DW_AT_type
511 .long 245 # DW_AT_containing_type
512 .byte 10 # Abbrev [10] 0xe5:0xb DW_TAG_subroutine_type
513 .long 201 # DW_AT_type
514 .byte 11 # Abbrev [11] 0xea:0x5 DW_TAG_formal_parameter
515 .long 240 # DW_AT_type
516 # DW_AT_artificial
517 .byte 0 # End Of Children Mark
518 .byte 6 # Abbrev [6] 0xf0:0x5 DW_TAG_pointer_type
519 .long 245 # DW_AT_type
520 .byte 12 # Abbrev [12] 0xf5:0x2 DW_TAG_structure_type
521 .byte 11 # DW_AT_name
522 # DW_AT_declaration
523 .byte 9 # Abbrev [9] 0xf7:0x9 DW_TAG_ptr_to_member_type
524 .long 201 # DW_AT_type
525 .long 245 # DW_AT_containing_type
526 .byte 13 # Abbrev [13] 0x100:0x5 DW_TAG_const_type
527 .long 201 # DW_AT_type
528 .byte 14 # Abbrev [14] 0x105:0x5 DW_TAG_volatile_type
529 .long 201 # DW_AT_type
530 .byte 15 # Abbrev [15] 0x10a:0x5 DW_TAG_restrict_type
531 .long 205 # DW_AT_type
532 .byte 16 # Abbrev [16] 0x10f:0xc DW_TAG_array_type
533 .long 201 # DW_AT_type
534 .byte 17 # Abbrev [17] 0x114:0x6 DW_TAG_subrange_type
535 .long 283 # DW_AT_type
536 .byte 12 # DW_AT_count
537 .byte 0 # End Of Children Mark
538 .byte 18 # Abbrev [18] 0x11b:0x4 DW_TAG_base_type
539 .byte 18 # DW_AT_name
540 .byte 8 # DW_AT_byte_size
541 .byte 7 # DW_AT_encoding
542 .byte 16 # Abbrev [16] 0x11f:0x12 DW_TAG_array_type
543 .long 201 # DW_AT_type
544 .byte 17 # Abbrev [17] 0x124:0x6 DW_TAG_subrange_type
545 .long 283 # DW_AT_type
546 .byte 12 # DW_AT_count
547 .byte 17 # Abbrev [17] 0x12a:0x6 DW_TAG_subrange_type
548 .long 283 # DW_AT_type
549 .byte 24 # DW_AT_count
550 .byte 0 # End Of Children Mark
551 .byte 4 # Abbrev [4] 0x131:0x8 DW_TAG_typedef
552 .long 313 # DW_AT_type
553 .byte 24 # DW_AT_name
554 .byte 0 # DW_AT_decl_file
555 .byte 8 # DW_AT_decl_line
556 .byte 19 # Abbrev [19] 0x139:0x16 DW_TAG_structure_type
557 .byte 5 # DW_AT_calling_convention
558 .byte 23 # DW_AT_name
559 .byte 4 # DW_AT_byte_size
560 .byte 0 # DW_AT_decl_file
561 .byte 4 # DW_AT_decl_line
562 .byte 20 # Abbrev [20] 0x13f:0x6 DW_TAG_template_type_parameter
563 .long 335 # DW_AT_type
564 .byte 22 # DW_AT_name
565 .byte 21 # Abbrev [21] 0x145:0x9 DW_TAG_member
566 .byte 20 # DW_AT_name
567 .long 335 # DW_AT_type
568 .byte 0 # DW_AT_decl_file
569 .byte 5 # DW_AT_decl_line
570 .byte 0 # DW_AT_data_member_location
571 .byte 0 # End Of Children Mark
572 .byte 5 # Abbrev [5] 0x14f:0x4 DW_TAG_base_type
573 .byte 21 # DW_AT_name
574 .byte 5 # DW_AT_encoding
575 .byte 4 # DW_AT_byte_size
576 .byte 0 # End Of Children Mark
577 .Ldebug_info_end0:
578 .section .debug_str_offsets,"",@progbits
579 .long 104 # Length of String Offsets Set
580 .short 5
581 .short 0
582 .Lstr_offsets_base0:
583 .section .debug_str,"MS",@progbits,1
584 .Linfo_string0:
585 .asciz "clang version 19.0.0git" # string offset=0
586 .Linfo_string1:
587 .asciz "frame-types.cpp" # string offset=107
588 .Linfo_string2:
589 .asciz "/tmp" # string offset=123
590 .Linfo_string3:
591 .asciz "_Z1fv" # string offset=128
592 .Linfo_string4:
593 .asciz "f" # string offset=134
594 .Linfo_string5:
595 .asciz "a" # string offset=136
596 .Linfo_string6:
597 .asciz "char" # string offset=138
598 .Linfo_string7:
599 .asciz "b" # string offset=143
600 .Linfo_string8:
601 .asciz "c" # string offset=145
602 .Linfo_string9:
603 .asciz "d" # string offset=147
604 .Linfo_string10:
605 .asciz "e" # string offset=149
606 .Linfo_string11:
607 .asciz "S" # string offset=151
608 .Linfo_string12:
609 .asciz "g" # string offset=153
610 .Linfo_string13:
611 .asciz "h" # string offset=155
612 .Linfo_string14:
613 .asciz "i" # string offset=157
614 .Linfo_string15:
615 .asciz "j" # string offset=159
616 .Linfo_string16:
617 .asciz "char_typedef" # string offset=161
618 .Linfo_string17:
619 .asciz "k" # string offset=174
620 .Linfo_string18:
621 .asciz "__ARRAY_SIZE_TYPE__" # string offset=176
622 .Linfo_string19:
623 .asciz "l" # string offset=196
624 .Linfo_string20:
625 .asciz "m" # string offset=198
626 .Linfo_string21:
627 .asciz "int" # string offset=200
628 .Linfo_string22:
629 .asciz "Y" # string offset=204
630 .Linfo_string23:
631 .asciz "Base<int>" # string offset=206
632 .Linfo_string24:
633 .asciz "Alias<int>" # string offset=216
634 .section .debug_str_offsets,"",@progbits
635 .long .Linfo_string0
636 .long .Linfo_string1
637 .long .Linfo_string2
638 .long .Linfo_string3
639 .long .Linfo_string4
640 .long .Linfo_string5
641 .long .Linfo_string6
642 .long .Linfo_string7
643 .long .Linfo_string8
644 .long .Linfo_string9
645 .long .Linfo_string10
646 .long .Linfo_string11
647 .long .Linfo_string12
648 .long .Linfo_string13
649 .long .Linfo_string14
650 .long .Linfo_string15
651 .long .Linfo_string16
652 .long .Linfo_string17
653 .long .Linfo_string18
654 .long .Linfo_string19
655 .long .Linfo_string20
656 .long .Linfo_string21
657 .long .Linfo_string22
658 .long .Linfo_string23
659 .long .Linfo_string24
660 .section .debug_addr,"",@progbits
661 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
662 .Ldebug_addr_start0:
663 .short 5 # DWARF version number
664 .byte 4 # Address size
665 .byte 0 # Segment selector size
666 .Laddr_table_base0:
667 .long .Lfunc_begin0
668 .Ldebug_addr_end0:
669 .ident "clang version 19.0.0git"
670 .section ".note.GNU-stack","",@progbits
671 .addrsig
672 .section .debug_line,"",@progbits
673 .Lline_table_start0: