1 /* This testcase is part of GDB, the GNU debugger.
3 Copyright 2013-2024 Free Software Foundation, Inc.
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
18 /* This source file was generated by:
19 gcc -o gdb.arch/amd64-tailcall-noret.S gdb.arch/amd64-tailcall-noret.c -Wall -S -dA -O2 -g
22 .file "amd64-tailcall-noret.c"
25 .section .text.unlikely,"ax",@progbits
26 .type noret, @function
29 .file 1 "gdb.arch/amd64-tailcall-noret.c"
30 # gdb.arch/amd64-tailcall-noret.c:24
34 # BLOCK 2 freq:10000 seq:0
35 # PRED: ENTRY [100.0%] (fallthru)
38 .cfi_def_cfa_offset 16
39 # gdb.arch/amd64-tailcall-noret.c:25
49 .type mayret, @function
52 # gdb.arch/amd64-tailcall-noret.c:30
56 # BLOCK 2 freq:10000 seq:0
57 # PRED: ENTRY [100.0%] (fallthru)
58 # gdb.arch/amd64-tailcall-noret.c:31
62 # SUCC: 4 [0.0%] (can_fallthru) 3 [100.0%] (fallthru,can_fallthru)
64 # BLOCK 3 freq:9996 seq:1
65 # PRED: 2 [100.0%] (fallthru,can_fallthru)
69 # BLOCK 4 freq:4 seq:2
70 # PRED: 2 [0.0%] (can_fallthru)
72 # gdb.arch/amd64-tailcall-noret.c:30
76 .cfi_def_cfa_offset 16
77 # gdb.arch/amd64-tailcall-noret.c:32
85 .size mayret, .-mayret
87 .type tailcall, @function
90 # gdb.arch/amd64-tailcall-noret.c:37
94 # BLOCK 2 freq:10000 seq:0
95 # PRED: ENTRY [100.0%] (fallthru)
96 # gdb.arch/amd64-tailcall-noret.c:38
100 # SUCC: EXIT [100.0%] (ab,sibcall)
103 .size tailcall, .-tailcall
104 .section .text.startup,"ax",@progbits
107 .type main, @function
110 # gdb.arch/amd64-tailcall-noret.c:43
113 # BLOCK 2 freq:10000 seq:0
114 # PRED: ENTRY [100.0%] (fallthru)
117 .cfi_def_cfa_offset 16
118 # gdb.arch/amd64-tailcall-noret.c:44
123 # gdb.arch/amd64-tailcall-noret.c:46
128 .cfi_def_cfa_offset 8
129 # SUCC: EXIT [100.0%]
143 .file 2 "/usr/include/stdlib.h"
144 .section .debug_info,"",@progbits
146 .long 0x19d # Length of Compilation Unit Info
147 .value 0x2 # DWARF version number
148 .long .Ldebug_abbrev0 # Offset Into Abbrev. Section
149 .byte 0x8 # Pointer Size (in bytes)
150 .uleb128 0x1 # (DIE (0xb) DW_TAG_compile_unit)
151 .long .LASF14 # DW_AT_producer: "GNU C 4.7.3 20130221 (prerelease)"
152 .byte 0x1 # DW_AT_language
153 .long .LASF15 # DW_AT_name: "gdb.arch/amd64-tailcall-noret.c"
154 .long .LASF16 # DW_AT_comp_dir: ""
155 .long .Ldebug_ranges0+0 # DW_AT_ranges
156 .quad 0 # DW_AT_low_pc
157 .quad 0 # DW_AT_entry_pc
158 .long .Ldebug_line0 # DW_AT_stmt_list
159 .uleb128 0x2 # (DIE (0x31) DW_TAG_base_type)
160 .byte 0x8 # DW_AT_byte_size
161 .byte 0x7 # DW_AT_encoding
162 .long .LASF0 # DW_AT_name: "long unsigned int"
163 .uleb128 0x3 # (DIE (0x38) DW_TAG_base_type)
164 .byte 0x4 # DW_AT_byte_size
165 .byte 0x5 # DW_AT_encoding
166 .ascii "int\0" # DW_AT_name
167 .uleb128 0x2 # (DIE (0x3f) DW_TAG_base_type)
168 .byte 0x1 # DW_AT_byte_size
169 .byte 0x8 # DW_AT_encoding
170 .long .LASF1 # DW_AT_name: "unsigned char"
171 .uleb128 0x2 # (DIE (0x46) DW_TAG_base_type)
172 .byte 0x2 # DW_AT_byte_size
173 .byte 0x7 # DW_AT_encoding
174 .long .LASF2 # DW_AT_name: "short unsigned int"
175 .uleb128 0x2 # (DIE (0x4d) DW_TAG_base_type)
176 .byte 0x4 # DW_AT_byte_size
177 .byte 0x7 # DW_AT_encoding
178 .long .LASF3 # DW_AT_name: "unsigned int"
179 .uleb128 0x2 # (DIE (0x54) DW_TAG_base_type)
180 .byte 0x1 # DW_AT_byte_size
181 .byte 0x6 # DW_AT_encoding
182 .long .LASF4 # DW_AT_name: "signed char"
183 .uleb128 0x2 # (DIE (0x5b) DW_TAG_base_type)
184 .byte 0x2 # DW_AT_byte_size
185 .byte 0x5 # DW_AT_encoding
186 .long .LASF5 # DW_AT_name: "short int"
187 .uleb128 0x2 # (DIE (0x62) DW_TAG_base_type)
188 .byte 0x8 # DW_AT_byte_size
189 .byte 0x5 # DW_AT_encoding
190 .long .LASF6 # DW_AT_name: "long int"
191 .uleb128 0x2 # (DIE (0x69) DW_TAG_base_type)
192 .byte 0x8 # DW_AT_byte_size
193 .byte 0x7 # DW_AT_encoding
194 .long .LASF7 # DW_AT_name: "sizetype"
195 .uleb128 0x2 # (DIE (0x70) DW_TAG_base_type)
196 .byte 0x1 # DW_AT_byte_size
197 .byte 0x6 # DW_AT_encoding
198 .long .LASF8 # DW_AT_name: "char"
199 .uleb128 0x2 # (DIE (0x77) DW_TAG_base_type)
200 .byte 0x8 # DW_AT_byte_size
201 .byte 0x5 # DW_AT_encoding
202 .long .LASF9 # DW_AT_name: "long long int"
203 .uleb128 0x2 # (DIE (0x7e) DW_TAG_base_type)
204 .byte 0x8 # DW_AT_byte_size
205 .byte 0x7 # DW_AT_encoding
206 .long .LASF10 # DW_AT_name: "long long unsigned int"
207 .uleb128 0x4 # (DIE (0x85) DW_TAG_volatile_type)
208 .long 0x38 # DW_AT_type
209 .uleb128 0x5 # (DIE (0x8a) DW_TAG_subprogram)
210 .long .LASF11 # DW_AT_name: "noret"
211 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
212 .byte 0x17 # DW_AT_decl_line
213 .byte 0x1 # DW_AT_prototyped
214 .quad .LFB9 # DW_AT_low_pc
215 .quad .LFE9 # DW_AT_high_pc
216 .long .LLST0 # DW_AT_frame_base
217 .byte 0x1 # DW_AT_GNU_all_call_sites
218 .long 0xc7 # DW_AT_sibling
219 .uleb128 0x6 # (DIE (0xab) DW_TAG_formal_parameter)
220 .ascii "x\0" # DW_AT_name
221 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
222 .byte 0x17 # DW_AT_decl_line
223 .long 0x38 # DW_AT_type
224 .long .LLST1 # DW_AT_location
225 .uleb128 0x7 # (DIE (0xb8) DW_TAG_unspecified_parameters)
226 .uleb128 0x8 # (DIE (0xb9) DW_TAG_GNU_call_site)
227 .quad .LVL1 # DW_AT_low_pc
228 .long 0x195 # DW_AT_abstract_origin
229 .byte 0 # end of children of DIE 0x8a
230 .uleb128 0x5 # (DIE (0xc7) DW_TAG_subprogram)
231 .long .LASF12 # DW_AT_name: "mayret"
232 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
233 .byte 0x1d # DW_AT_decl_line
234 .byte 0x1 # DW_AT_prototyped
235 .quad .LFB10 # DW_AT_low_pc
236 .quad .LFE10 # DW_AT_high_pc
237 .long .LLST2 # DW_AT_frame_base
238 .byte 0x1 # DW_AT_GNU_all_call_sites
239 .long 0x103 # DW_AT_sibling
240 .uleb128 0x6 # (DIE (0xe8) DW_TAG_formal_parameter)
241 .ascii "x\0" # DW_AT_name
242 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
243 .byte 0x1d # DW_AT_decl_line
244 .long 0x38 # DW_AT_type
245 .long .LLST3 # DW_AT_location
246 .uleb128 0x8 # (DIE (0xf5) DW_TAG_GNU_call_site)
247 .quad .LVL3 # DW_AT_low_pc
248 .long 0x8a # DW_AT_abstract_origin
249 .byte 0 # end of children of DIE 0xc7
250 .uleb128 0x9 # (DIE (0x103) DW_TAG_subprogram)
251 .long .LASF13 # DW_AT_name: "tailcall"
252 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
253 .byte 0x24 # DW_AT_decl_line
254 .byte 0x1 # DW_AT_prototyped
255 .quad .LFB11 # DW_AT_low_pc
256 .quad .LFE11 # DW_AT_high_pc
257 .byte 0x2 # DW_AT_frame_base
258 .byte 0x77 # DW_OP_breg7
260 .byte 0x1 # DW_AT_GNU_all_call_sites
261 .long 0x147 # DW_AT_sibling
262 .uleb128 0x6 # (DIE (0x123) DW_TAG_formal_parameter)
263 .ascii "x\0" # DW_AT_name
264 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
265 .byte 0x24 # DW_AT_decl_line
266 .long 0x38 # DW_AT_type
267 .long .LLST4 # DW_AT_location
268 .uleb128 0xa # (DIE (0x130) DW_TAG_GNU_call_site)
269 .quad .LVL5 # DW_AT_low_pc
270 .byte 0x1 # DW_AT_GNU_tail_call
271 .long 0xc7 # DW_AT_abstract_origin
272 .uleb128 0xb # (DIE (0x13e) DW_TAG_GNU_call_site_parameter)
273 .byte 0x1 # DW_AT_location
274 .byte 0x55 # DW_OP_reg5
275 .byte 0x3 # DW_AT_GNU_call_site_value
276 .byte 0xf3 # DW_OP_GNU_entry_value
278 .byte 0x55 # DW_OP_reg5
279 .byte 0 # end of children of DIE 0x130
280 .byte 0 # end of children of DIE 0x103
281 .uleb128 0xc # (DIE (0x147) DW_TAG_subprogram)
282 .byte 0x1 # DW_AT_external
283 .long .LASF17 # DW_AT_name: "main"
284 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
285 .byte 0x2a # DW_AT_decl_line
286 .byte 0x1 # DW_AT_prototyped
287 .long 0x38 # DW_AT_type
288 .quad .LFB12 # DW_AT_low_pc
289 .quad .LFE12 # DW_AT_high_pc
290 .long .LLST5 # DW_AT_frame_base
291 .byte 0x1 # DW_AT_GNU_all_call_sites
292 .long 0x181 # DW_AT_sibling
293 .uleb128 0xd # (DIE (0x16d) DW_TAG_GNU_call_site)
294 .quad .LVL6 # DW_AT_low_pc
295 .long 0x103 # DW_AT_abstract_origin
296 .uleb128 0xb # (DIE (0x17a) DW_TAG_GNU_call_site_parameter)
297 .byte 0x1 # DW_AT_location
298 .byte 0x55 # DW_OP_reg5
299 .byte 0x1 # DW_AT_GNU_call_site_value
300 .byte 0x31 # DW_OP_lit1
301 .byte 0 # end of children of DIE 0x16d
302 .byte 0 # end of children of DIE 0x147
303 .uleb128 0xe # (DIE (0x181) DW_TAG_variable)
304 .ascii "v\0" # DW_AT_name
305 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-noret.c)
306 .byte 0x14 # DW_AT_decl_line
307 .long 0x85 # DW_AT_type
308 .byte 0x1 # DW_AT_external
309 .byte 0x9 # DW_AT_location
310 .byte 0x3 # DW_OP_addr
312 .uleb128 0xf # (DIE (0x195) DW_TAG_subprogram)
313 .byte 0x1 # DW_AT_external
314 .long .LASF18 # DW_AT_name: "abort"
315 .byte 0x2 # DW_AT_decl_file (/usr/include/stdlib.h)
316 .value 0x202 # DW_AT_decl_line
317 .byte 0x1 # DW_AT_prototyped
318 .byte 0x1 # DW_AT_declaration
319 .byte 0 # end of children of DIE 0xb
320 .section .debug_abbrev,"",@progbits
322 .uleb128 0x1 # (abbrev code)
323 .uleb128 0x11 # (TAG: DW_TAG_compile_unit)
324 .byte 0x1 # DW_children_yes
325 .uleb128 0x25 # (DW_AT_producer)
326 .uleb128 0xe # (DW_FORM_strp)
327 .uleb128 0x13 # (DW_AT_language)
328 .uleb128 0xb # (DW_FORM_data1)
329 .uleb128 0x3 # (DW_AT_name)
330 .uleb128 0xe # (DW_FORM_strp)
331 .uleb128 0x1b # (DW_AT_comp_dir)
332 .uleb128 0xe # (DW_FORM_strp)
333 .uleb128 0x55 # (DW_AT_ranges)
334 .uleb128 0x6 # (DW_FORM_data4)
335 .uleb128 0x11 # (DW_AT_low_pc)
336 .uleb128 0x1 # (DW_FORM_addr)
337 .uleb128 0x52 # (DW_AT_entry_pc)
338 .uleb128 0x1 # (DW_FORM_addr)
339 .uleb128 0x10 # (DW_AT_stmt_list)
340 .uleb128 0x6 # (DW_FORM_data4)
343 .uleb128 0x2 # (abbrev code)
344 .uleb128 0x24 # (TAG: DW_TAG_base_type)
345 .byte 0 # DW_children_no
346 .uleb128 0xb # (DW_AT_byte_size)
347 .uleb128 0xb # (DW_FORM_data1)
348 .uleb128 0x3e # (DW_AT_encoding)
349 .uleb128 0xb # (DW_FORM_data1)
350 .uleb128 0x3 # (DW_AT_name)
351 .uleb128 0xe # (DW_FORM_strp)
354 .uleb128 0x3 # (abbrev code)
355 .uleb128 0x24 # (TAG: DW_TAG_base_type)
356 .byte 0 # DW_children_no
357 .uleb128 0xb # (DW_AT_byte_size)
358 .uleb128 0xb # (DW_FORM_data1)
359 .uleb128 0x3e # (DW_AT_encoding)
360 .uleb128 0xb # (DW_FORM_data1)
361 .uleb128 0x3 # (DW_AT_name)
362 .uleb128 0x8 # (DW_FORM_string)
365 .uleb128 0x4 # (abbrev code)
366 .uleb128 0x35 # (TAG: DW_TAG_volatile_type)
367 .byte 0 # DW_children_no
368 .uleb128 0x49 # (DW_AT_type)
369 .uleb128 0x13 # (DW_FORM_ref4)
372 .uleb128 0x5 # (abbrev code)
373 .uleb128 0x2e # (TAG: DW_TAG_subprogram)
374 .byte 0x1 # DW_children_yes
375 .uleb128 0x3 # (DW_AT_name)
376 .uleb128 0xe # (DW_FORM_strp)
377 .uleb128 0x3a # (DW_AT_decl_file)
378 .uleb128 0xb # (DW_FORM_data1)
379 .uleb128 0x3b # (DW_AT_decl_line)
380 .uleb128 0xb # (DW_FORM_data1)
381 .uleb128 0x27 # (DW_AT_prototyped)
382 .uleb128 0xc # (DW_FORM_flag)
383 .uleb128 0x11 # (DW_AT_low_pc)
384 .uleb128 0x1 # (DW_FORM_addr)
385 .uleb128 0x12 # (DW_AT_high_pc)
386 .uleb128 0x1 # (DW_FORM_addr)
387 .uleb128 0x40 # (DW_AT_frame_base)
388 .uleb128 0x6 # (DW_FORM_data4)
389 .uleb128 0x2117 # (DW_AT_GNU_all_call_sites)
390 .uleb128 0xc # (DW_FORM_flag)
391 .uleb128 0x1 # (DW_AT_sibling)
392 .uleb128 0x13 # (DW_FORM_ref4)
395 .uleb128 0x6 # (abbrev code)
396 .uleb128 0x5 # (TAG: DW_TAG_formal_parameter)
397 .byte 0 # DW_children_no
398 .uleb128 0x3 # (DW_AT_name)
399 .uleb128 0x8 # (DW_FORM_string)
400 .uleb128 0x3a # (DW_AT_decl_file)
401 .uleb128 0xb # (DW_FORM_data1)
402 .uleb128 0x3b # (DW_AT_decl_line)
403 .uleb128 0xb # (DW_FORM_data1)
404 .uleb128 0x49 # (DW_AT_type)
405 .uleb128 0x13 # (DW_FORM_ref4)
406 .uleb128 0x2 # (DW_AT_location)
407 .uleb128 0x6 # (DW_FORM_data4)
410 .uleb128 0x7 # (abbrev code)
411 .uleb128 0x18 # (TAG: DW_TAG_unspecified_parameters)
412 .byte 0 # DW_children_no
415 .uleb128 0x8 # (abbrev code)
416 .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site)
417 .byte 0 # DW_children_no
418 .uleb128 0x11 # (DW_AT_low_pc)
419 .uleb128 0x1 # (DW_FORM_addr)
420 .uleb128 0x31 # (DW_AT_abstract_origin)
421 .uleb128 0x13 # (DW_FORM_ref4)
424 .uleb128 0x9 # (abbrev code)
425 .uleb128 0x2e # (TAG: DW_TAG_subprogram)
426 .byte 0x1 # DW_children_yes
427 .uleb128 0x3 # (DW_AT_name)
428 .uleb128 0xe # (DW_FORM_strp)
429 .uleb128 0x3a # (DW_AT_decl_file)
430 .uleb128 0xb # (DW_FORM_data1)
431 .uleb128 0x3b # (DW_AT_decl_line)
432 .uleb128 0xb # (DW_FORM_data1)
433 .uleb128 0x27 # (DW_AT_prototyped)
434 .uleb128 0xc # (DW_FORM_flag)
435 .uleb128 0x11 # (DW_AT_low_pc)
436 .uleb128 0x1 # (DW_FORM_addr)
437 .uleb128 0x12 # (DW_AT_high_pc)
438 .uleb128 0x1 # (DW_FORM_addr)
439 .uleb128 0x40 # (DW_AT_frame_base)
440 .uleb128 0xa # (DW_FORM_block1)
441 .uleb128 0x2117 # (DW_AT_GNU_all_call_sites)
442 .uleb128 0xc # (DW_FORM_flag)
443 .uleb128 0x1 # (DW_AT_sibling)
444 .uleb128 0x13 # (DW_FORM_ref4)
447 .uleb128 0xa # (abbrev code)
448 .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site)
449 .byte 0x1 # DW_children_yes
450 .uleb128 0x11 # (DW_AT_low_pc)
451 .uleb128 0x1 # (DW_FORM_addr)
452 .uleb128 0x2115 # (DW_AT_GNU_tail_call)
453 .uleb128 0xc # (DW_FORM_flag)
454 .uleb128 0x31 # (DW_AT_abstract_origin)
455 .uleb128 0x13 # (DW_FORM_ref4)
458 .uleb128 0xb # (abbrev code)
459 .uleb128 0x410a # (TAG: DW_TAG_GNU_call_site_parameter)
460 .byte 0 # DW_children_no
461 .uleb128 0x2 # (DW_AT_location)
462 .uleb128 0xa # (DW_FORM_block1)
463 .uleb128 0x2111 # (DW_AT_GNU_call_site_value)
464 .uleb128 0xa # (DW_FORM_block1)
467 .uleb128 0xc # (abbrev code)
468 .uleb128 0x2e # (TAG: DW_TAG_subprogram)
469 .byte 0x1 # DW_children_yes
470 .uleb128 0x3f # (DW_AT_external)
471 .uleb128 0xc # (DW_FORM_flag)
472 .uleb128 0x3 # (DW_AT_name)
473 .uleb128 0xe # (DW_FORM_strp)
474 .uleb128 0x3a # (DW_AT_decl_file)
475 .uleb128 0xb # (DW_FORM_data1)
476 .uleb128 0x3b # (DW_AT_decl_line)
477 .uleb128 0xb # (DW_FORM_data1)
478 .uleb128 0x27 # (DW_AT_prototyped)
479 .uleb128 0xc # (DW_FORM_flag)
480 .uleb128 0x49 # (DW_AT_type)
481 .uleb128 0x13 # (DW_FORM_ref4)
482 .uleb128 0x11 # (DW_AT_low_pc)
483 .uleb128 0x1 # (DW_FORM_addr)
484 .uleb128 0x12 # (DW_AT_high_pc)
485 .uleb128 0x1 # (DW_FORM_addr)
486 .uleb128 0x40 # (DW_AT_frame_base)
487 .uleb128 0x6 # (DW_FORM_data4)
488 .uleb128 0x2117 # (DW_AT_GNU_all_call_sites)
489 .uleb128 0xc # (DW_FORM_flag)
490 .uleb128 0x1 # (DW_AT_sibling)
491 .uleb128 0x13 # (DW_FORM_ref4)
494 .uleb128 0xd # (abbrev code)
495 .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site)
496 .byte 0x1 # DW_children_yes
497 .uleb128 0x11 # (DW_AT_low_pc)
498 .uleb128 0x1 # (DW_FORM_addr)
499 .uleb128 0x31 # (DW_AT_abstract_origin)
500 .uleb128 0x13 # (DW_FORM_ref4)
503 .uleb128 0xe # (abbrev code)
504 .uleb128 0x34 # (TAG: DW_TAG_variable)
505 .byte 0 # DW_children_no
506 .uleb128 0x3 # (DW_AT_name)
507 .uleb128 0x8 # (DW_FORM_string)
508 .uleb128 0x3a # (DW_AT_decl_file)
509 .uleb128 0xb # (DW_FORM_data1)
510 .uleb128 0x3b # (DW_AT_decl_line)
511 .uleb128 0xb # (DW_FORM_data1)
512 .uleb128 0x49 # (DW_AT_type)
513 .uleb128 0x13 # (DW_FORM_ref4)
514 .uleb128 0x3f # (DW_AT_external)
515 .uleb128 0xc # (DW_FORM_flag)
516 .uleb128 0x2 # (DW_AT_location)
517 .uleb128 0xa # (DW_FORM_block1)
520 .uleb128 0xf # (abbrev code)
521 .uleb128 0x2e # (TAG: DW_TAG_subprogram)
522 .byte 0 # DW_children_no
523 .uleb128 0x3f # (DW_AT_external)
524 .uleb128 0xc # (DW_FORM_flag)
525 .uleb128 0x3 # (DW_AT_name)
526 .uleb128 0xe # (DW_FORM_strp)
527 .uleb128 0x3a # (DW_AT_decl_file)
528 .uleb128 0xb # (DW_FORM_data1)
529 .uleb128 0x3b # (DW_AT_decl_line)
530 .uleb128 0x5 # (DW_FORM_data2)
531 .uleb128 0x27 # (DW_AT_prototyped)
532 .uleb128 0xc # (DW_FORM_flag)
533 .uleb128 0x3c # (DW_AT_declaration)
534 .uleb128 0xc # (DW_FORM_flag)
538 .section .debug_loc,"",@progbits
541 .quad .LFB9 # Location list begin address (*.LLST0)
542 .quad .LCFI0 # Location list end address (*.LLST0)
543 .value 0x2 # Location expression size
544 .byte 0x77 # DW_OP_breg7
546 .quad .LCFI0 # Location list begin address (*.LLST0)
547 .quad .LFE9 # Location list end address (*.LLST0)
548 .value 0x2 # Location expression size
549 .byte 0x77 # DW_OP_breg7
551 .quad 0 # Location list terminator begin (*.LLST0)
552 .quad 0 # Location list terminator end (*.LLST0)
554 .quad .LVL0 # Location list begin address (*.LLST1)
555 .quad .LVL1-1 # Location list end address (*.LLST1)
556 .value 0x1 # Location expression size
557 .byte 0x55 # DW_OP_reg5
558 .quad .LVL1-1 # Location list begin address (*.LLST1)
559 .quad .LFE9 # Location list end address (*.LLST1)
560 .value 0x4 # Location expression size
561 .byte 0xf3 # DW_OP_GNU_entry_value
563 .byte 0x55 # DW_OP_reg5
564 .byte 0x9f # DW_OP_stack_value
565 .quad 0 # Location list terminator begin (*.LLST1)
566 .quad 0 # Location list terminator end (*.LLST1)
568 .quad .LFB10 # Location list begin address (*.LLST2)
569 .quad .LCFI1 # Location list end address (*.LLST2)
570 .value 0x2 # Location expression size
571 .byte 0x77 # DW_OP_breg7
573 .quad .LCFI1 # Location list begin address (*.LLST2)
574 .quad .LFE10 # Location list end address (*.LLST2)
575 .value 0x2 # Location expression size
576 .byte 0x77 # DW_OP_breg7
578 .quad 0 # Location list terminator begin (*.LLST2)
579 .quad 0 # Location list terminator end (*.LLST2)
581 .quad .LVL2 # Location list begin address (*.LLST3)
582 .quad .LVL3-1 # Location list end address (*.LLST3)
583 .value 0x1 # Location expression size
584 .byte 0x55 # DW_OP_reg5
585 .quad .LVL3-1 # Location list begin address (*.LLST3)
586 .quad .LFE10 # Location list end address (*.LLST3)
587 .value 0x4 # Location expression size
588 .byte 0xf3 # DW_OP_GNU_entry_value
590 .byte 0x55 # DW_OP_reg5
591 .byte 0x9f # DW_OP_stack_value
592 .quad 0 # Location list terminator begin (*.LLST3)
593 .quad 0 # Location list terminator end (*.LLST3)
595 .quad .LVL4 # Location list begin address (*.LLST4)
596 .quad .LVL5-1 # Location list end address (*.LLST4)
597 .value 0x1 # Location expression size
598 .byte 0x55 # DW_OP_reg5
599 .quad .LVL5-1 # Location list begin address (*.LLST4)
600 .quad .LFE11 # Location list end address (*.LLST4)
601 .value 0x4 # Location expression size
602 .byte 0xf3 # DW_OP_GNU_entry_value
604 .byte 0x55 # DW_OP_reg5
605 .byte 0x9f # DW_OP_stack_value
606 .quad 0 # Location list terminator begin (*.LLST4)
607 .quad 0 # Location list terminator end (*.LLST4)
609 .quad .LFB12 # Location list begin address (*.LLST5)
610 .quad .LCFI2 # Location list end address (*.LLST5)
611 .value 0x2 # Location expression size
612 .byte 0x77 # DW_OP_breg7
614 .quad .LCFI2 # Location list begin address (*.LLST5)
615 .quad .LCFI3 # Location list end address (*.LLST5)
616 .value 0x2 # Location expression size
617 .byte 0x77 # DW_OP_breg7
619 .quad .LCFI3 # Location list begin address (*.LLST5)
620 .quad .LFE12 # Location list end address (*.LLST5)
621 .value 0x2 # Location expression size
622 .byte 0x77 # DW_OP_breg7
624 .quad 0 # Location list terminator begin (*.LLST5)
625 .quad 0 # Location list terminator end (*.LLST5)
626 .section .debug_aranges,"",@progbits
627 .long 0x4c # Length of Address Ranges Info
628 .value 0x2 # DWARF Version
629 .long .Ldebug_info0 # Offset of Compilation Unit Info
630 .byte 0x8 # Size of Address
631 .byte 0 # Size of Segment Descriptor
632 .value 0 # Pad to 16 byte boundary
634 .quad .Ltext0 # Address
635 .quad .Letext0-.Ltext0 # Length
636 .quad .LFB9 # Address
637 .quad .LFE9-.LFB9 # Length
638 .quad .LFB12 # Address
639 .quad .LFE12-.LFB12 # Length
642 .section .debug_ranges,"",@progbits
644 .quad .Ltext0 # Offset 0
646 .quad .LFB9 # Offset 0x10
648 .quad .LFB12 # Offset 0x20
652 .section .debug_line,"",@progbits
654 .section .debug_str,"MS",@progbits,1
656 .string "long long int"
658 .string "GNU C 4.7.3 20130221 (prerelease)"
660 .string "unsigned int"
664 .string "long unsigned int"
666 .string "long long unsigned int"
672 .string "unsigned char"
680 .string "short unsigned int"
682 .string "signed char"
692 .string "gdb.arch/amd64-tailcall-noret.c"
693 .ident "GCC: (GNU) 4.7.3 20130221 (prerelease)"
694 .section .note.GNU-stack,"",@progbits