Home | History | Annotate | Line # | Download | only in gdb.btrace
      1 /* This testcase is part of GDB, the GNU debugger.
      2 
      3    Copyright 2013-2024 Free Software Foundation, Inc.
      4 
      5    Contributed by Intel Corp. <markus.t.metzger (at) intel.com>
      6 
      7    This program is free software; you can redistribute it and/or modify
      8    it under the terms of the GNU General Public License as published by
      9    the Free Software Foundation; either version 3 of the License, or
     10    (at your option) any later version.
     11 
     12    This program is distributed in the hope that it will be useful,
     13    but WITHOUT ANY WARRANTY; without even the implied warranty of
     14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15    GNU General Public License for more details.
     16 
     17    You should have received a copy of the GNU General Public License
     18    along with this program.  If not, see <http://www.gnu.org/licenses/>.
     19 
     20 
     21    This file has been generated using:
     22    gcc -S -dA -g record_goto.c -o i686-record_goto.S  */
     23 
     24 	.file	"record_goto.c"
     25 	.text
     26 .Ltext0:
     27 	.globl	fun1
     28 	.type	fun1, @function
     29 fun1:
     30 .LFB0:
     31 	.file 1 "record_goto.c"
     32 	# record_goto.c:22
     33 	.loc 1 22 0
     34 	.cfi_startproc
     35 # BLOCK 2 seq:0
     36 # PRED: ENTRY (FALLTHRU)
     37 	pushl	%ebp
     38 	.cfi_def_cfa_offset 8
     39 	.cfi_offset 5, -8
     40 	movl	%esp, %ebp
     41 	.cfi_def_cfa_register 5
     42 	# record_goto.c:23
     43 	.loc 1 23 0
     44 	popl	%ebp
     45 	.cfi_restore 5
     46 	.cfi_def_cfa 4, 4
     47 # SUCC: EXIT [100.0%]
     48 	ret
     49 	.cfi_endproc
     50 .LFE0:
     51 	.size	fun1, .-fun1
     52 	.globl	fun2
     53 	.type	fun2, @function
     54 fun2:
     55 .LFB1:
     56 	# record_goto.c:27
     57 	.loc 1 27 0
     58 	.cfi_startproc
     59 # BLOCK 2 seq:0
     60 # PRED: ENTRY (FALLTHRU)
     61 	pushl	%ebp
     62 	.cfi_def_cfa_offset 8
     63 	.cfi_offset 5, -8
     64 	movl	%esp, %ebp
     65 	.cfi_def_cfa_register 5
     66 	# record_goto.c:28
     67 	.loc 1 28 0
     68 	call	fun1
     69 	# record_goto.c:29
     70 	.loc 1 29 0
     71 	popl	%ebp
     72 	.cfi_restore 5
     73 	.cfi_def_cfa 4, 4
     74 # SUCC: EXIT [100.0%]
     75 	ret
     76 	.cfi_endproc
     77 .LFE1:
     78 	.size	fun2, .-fun2
     79 	.globl	fun3
     80 	.type	fun3, @function
     81 fun3:
     82 .LFB2:
     83 	# record_goto.c:33
     84 	.loc 1 33 0
     85 	.cfi_startproc
     86 # BLOCK 2 seq:0
     87 # PRED: ENTRY (FALLTHRU)
     88 	pushl	%ebp
     89 	.cfi_def_cfa_offset 8
     90 	.cfi_offset 5, -8
     91 	movl	%esp, %ebp
     92 	.cfi_def_cfa_register 5
     93 	# record_goto.c:34
     94 	.loc 1 34 0
     95 	call	fun1
     96 	# record_goto.c:35
     97 	.loc 1 35 0
     98 	call	fun2
     99 	# record_goto.c:36
    100 	.loc 1 36 0
    101 	popl	%ebp
    102 	.cfi_restore 5
    103 	.cfi_def_cfa 4, 4
    104 # SUCC: EXIT [100.0%]
    105 	ret
    106 	.cfi_endproc
    107 .LFE2:
    108 	.size	fun3, .-fun3
    109 	.globl	fun4
    110 	.type	fun4, @function
    111 fun4:
    112 .LFB3:
    113 	# record_goto.c:40
    114 	.loc 1 40 0
    115 	.cfi_startproc
    116 # BLOCK 2 seq:0
    117 # PRED: ENTRY (FALLTHRU)
    118 	pushl	%ebp
    119 	.cfi_def_cfa_offset 8
    120 	.cfi_offset 5, -8
    121 	movl	%esp, %ebp
    122 	.cfi_def_cfa_register 5
    123 	# record_goto.c:41
    124 	.loc 1 41 0
    125 	call	fun1
    126 	# record_goto.c:42
    127 	.loc 1 42 0
    128 	call	fun2
    129 	# record_goto.c:43
    130 	.loc 1 43 0
    131 	call	fun3
    132 	# record_goto.c:44
    133 	.loc 1 44 0
    134 	popl	%ebp
    135 	.cfi_restore 5
    136 	.cfi_def_cfa 4, 4
    137 # SUCC: EXIT [100.0%]
    138 	ret
    139 	.cfi_endproc
    140 .LFE3:
    141 	.size	fun4, .-fun4
    142 	.globl	main
    143 	.type	main, @function
    144 main:
    145 .LFB4:
    146 	# record_goto.c:48
    147 	.loc 1 48 0
    148 	.cfi_startproc
    149 # BLOCK 2 seq:0
    150 # PRED: ENTRY (FALLTHRU)
    151 	pushl	%ebp
    152 	.cfi_def_cfa_offset 8
    153 	.cfi_offset 5, -8
    154 	movl	%esp, %ebp
    155 	.cfi_def_cfa_register 5
    156 	# record_goto.c:49
    157 	.loc 1 49 0
    158 	call	fun4
    159 	# record_goto.c:50
    160 	.loc 1 50 0
    161 	movl	$0, %eax
    162 	# record_goto.c:51
    163 	.loc 1 51 0
    164 	popl	%ebp
    165 	.cfi_restore 5
    166 	.cfi_def_cfa 4, 4
    167 # SUCC: EXIT [100.0%]
    168 	ret
    169 	.cfi_endproc
    170 .LFE4:
    171 	.size	main, .-main
    172 .Letext0:
    173 	.section	.debug_info,"",@progbits
    174 .Ldebug_info0:
    175 	.long	0x82	# Length of Compilation Unit Info
    176 	.value	0x4	# DWARF version number
    177 	.long	.Ldebug_abbrev0	# Offset Into Abbrev. Section
    178 	.byte	0x4	# Pointer Size (in bytes)
    179 	.uleb128 0x1	# (DIE (0xb) DW_TAG_compile_unit)
    180 	.long	.LASF4	# DW_AT_producer: "GNU C 4.8.3 20140911 (Red Hat 4.8.3-7) -mtune=generic -march=i686 -g"
    181 	.byte	0x1	# DW_AT_language
    182 	.long	.LASF5	# DW_AT_name: "record_goto.c"
    183 	.long	.LASF6	# DW_AT_comp_dir: ""
    184 	.long	.Ltext0	# DW_AT_low_pc
    185 	.long	.Letext0-.Ltext0	# DW_AT_high_pc
    186 	.long	.Ldebug_line0	# DW_AT_stmt_list
    187 	.uleb128 0x2	# (DIE (0x25) DW_TAG_subprogram)
    188 			# DW_AT_external
    189 	.long	.LASF0	# DW_AT_name: "fun1"
    190 	.byte	0x1	# DW_AT_decl_file (record_goto.c)
    191 	.byte	0x15	# DW_AT_decl_line
    192 			# DW_AT_prototyped
    193 	.long	.LFB0	# DW_AT_low_pc
    194 	.long	.LFE0-.LFB0	# DW_AT_high_pc
    195 	.uleb128 0x1	# DW_AT_frame_base
    196 	.byte	0x9c	# DW_OP_call_frame_cfa
    197 			# DW_AT_GNU_all_call_sites
    198 	.uleb128 0x3	# (DIE (0x36) DW_TAG_subprogram)
    199 			# DW_AT_external
    200 	.long	.LASF1	# DW_AT_name: "fun2"
    201 	.byte	0x1	# DW_AT_decl_file (record_goto.c)
    202 	.byte	0x1a	# DW_AT_decl_line
    203 			# DW_AT_prototyped
    204 	.long	.LFB1	# DW_AT_low_pc
    205 	.long	.LFE1-.LFB1	# DW_AT_high_pc
    206 	.uleb128 0x1	# DW_AT_frame_base
    207 	.byte	0x9c	# DW_OP_call_frame_cfa
    208 			# DW_AT_GNU_all_tail_call_sites
    209 	.uleb128 0x3	# (DIE (0x47) DW_TAG_subprogram)
    210 			# DW_AT_external
    211 	.long	.LASF2	# DW_AT_name: "fun3"
    212 	.byte	0x1	# DW_AT_decl_file (record_goto.c)
    213 	.byte	0x20	# DW_AT_decl_line
    214 			# DW_AT_prototyped
    215 	.long	.LFB2	# DW_AT_low_pc
    216 	.long	.LFE2-.LFB2	# DW_AT_high_pc
    217 	.uleb128 0x1	# DW_AT_frame_base
    218 	.byte	0x9c	# DW_OP_call_frame_cfa
    219 			# DW_AT_GNU_all_tail_call_sites
    220 	.uleb128 0x3	# (DIE (0x58) DW_TAG_subprogram)
    221 			# DW_AT_external
    222 	.long	.LASF3	# DW_AT_name: "fun4"
    223 	.byte	0x1	# DW_AT_decl_file (record_goto.c)
    224 	.byte	0x27	# DW_AT_decl_line
    225 			# DW_AT_prototyped
    226 	.long	.LFB3	# DW_AT_low_pc
    227 	.long	.LFE3-.LFB3	# DW_AT_high_pc
    228 	.uleb128 0x1	# DW_AT_frame_base
    229 	.byte	0x9c	# DW_OP_call_frame_cfa
    230 			# DW_AT_GNU_all_tail_call_sites
    231 	.uleb128 0x4	# (DIE (0x69) DW_TAG_subprogram)
    232 			# DW_AT_external
    233 	.long	.LASF7	# DW_AT_name: "main"
    234 	.byte	0x1	# DW_AT_decl_file (record_goto.c)
    235 	.byte	0x2f	# DW_AT_decl_line
    236 			# DW_AT_prototyped
    237 	.long	0x7e	# DW_AT_type
    238 	.long	.LFB4	# DW_AT_low_pc
    239 	.long	.LFE4-.LFB4	# DW_AT_high_pc
    240 	.uleb128 0x1	# DW_AT_frame_base
    241 	.byte	0x9c	# DW_OP_call_frame_cfa
    242 			# DW_AT_GNU_all_tail_call_sites
    243 	.uleb128 0x5	# (DIE (0x7e) DW_TAG_base_type)
    244 	.byte	0x4	# DW_AT_byte_size
    245 	.byte	0x5	# DW_AT_encoding
    246 	.ascii "int\0"	# DW_AT_name
    247 	.byte	0	# end of children of DIE 0xb
    248 	.section	.debug_abbrev,"",@progbits
    249 .Ldebug_abbrev0:
    250 	.uleb128 0x1	# (abbrev code)
    251 	.uleb128 0x11	# (TAG: DW_TAG_compile_unit)
    252 	.byte	0x1	# DW_children_yes
    253 	.uleb128 0x25	# (DW_AT_producer)
    254 	.uleb128 0xe	# (DW_FORM_strp)
    255 	.uleb128 0x13	# (DW_AT_language)
    256 	.uleb128 0xb	# (DW_FORM_data1)
    257 	.uleb128 0x3	# (DW_AT_name)
    258 	.uleb128 0xe	# (DW_FORM_strp)
    259 	.uleb128 0x1b	# (DW_AT_comp_dir)
    260 	.uleb128 0xe	# (DW_FORM_strp)
    261 	.uleb128 0x11	# (DW_AT_low_pc)
    262 	.uleb128 0x1	# (DW_FORM_addr)
    263 	.uleb128 0x12	# (DW_AT_high_pc)
    264 	.uleb128 0x6	# (DW_FORM_data4)
    265 	.uleb128 0x10	# (DW_AT_stmt_list)
    266 	.uleb128 0x17	# (DW_FORM_sec_offset)
    267 	.byte	0
    268 	.byte	0
    269 	.uleb128 0x2	# (abbrev code)
    270 	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
    271 	.byte	0	# DW_children_no
    272 	.uleb128 0x3f	# (DW_AT_external)
    273 	.uleb128 0x19	# (DW_FORM_flag_present)
    274 	.uleb128 0x3	# (DW_AT_name)
    275 	.uleb128 0xe	# (DW_FORM_strp)
    276 	.uleb128 0x3a	# (DW_AT_decl_file)
    277 	.uleb128 0xb	# (DW_FORM_data1)
    278 	.uleb128 0x3b	# (DW_AT_decl_line)
    279 	.uleb128 0xb	# (DW_FORM_data1)
    280 	.uleb128 0x27	# (DW_AT_prototyped)
    281 	.uleb128 0x19	# (DW_FORM_flag_present)
    282 	.uleb128 0x11	# (DW_AT_low_pc)
    283 	.uleb128 0x1	# (DW_FORM_addr)
    284 	.uleb128 0x12	# (DW_AT_high_pc)
    285 	.uleb128 0x6	# (DW_FORM_data4)
    286 	.uleb128 0x40	# (DW_AT_frame_base)
    287 	.uleb128 0x18	# (DW_FORM_exprloc)
    288 	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
    289 	.uleb128 0x19	# (DW_FORM_flag_present)
    290 	.byte	0
    291 	.byte	0
    292 	.uleb128 0x3	# (abbrev code)
    293 	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
    294 	.byte	0	# DW_children_no
    295 	.uleb128 0x3f	# (DW_AT_external)
    296 	.uleb128 0x19	# (DW_FORM_flag_present)
    297 	.uleb128 0x3	# (DW_AT_name)
    298 	.uleb128 0xe	# (DW_FORM_strp)
    299 	.uleb128 0x3a	# (DW_AT_decl_file)
    300 	.uleb128 0xb	# (DW_FORM_data1)
    301 	.uleb128 0x3b	# (DW_AT_decl_line)
    302 	.uleb128 0xb	# (DW_FORM_data1)
    303 	.uleb128 0x27	# (DW_AT_prototyped)
    304 	.uleb128 0x19	# (DW_FORM_flag_present)
    305 	.uleb128 0x11	# (DW_AT_low_pc)
    306 	.uleb128 0x1	# (DW_FORM_addr)
    307 	.uleb128 0x12	# (DW_AT_high_pc)
    308 	.uleb128 0x6	# (DW_FORM_data4)
    309 	.uleb128 0x40	# (DW_AT_frame_base)
    310 	.uleb128 0x18	# (DW_FORM_exprloc)
    311 	.uleb128 0x2116	# (DW_AT_GNU_all_tail_call_sites)
    312 	.uleb128 0x19	# (DW_FORM_flag_present)
    313 	.byte	0
    314 	.byte	0
    315 	.uleb128 0x4	# (abbrev code)
    316 	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
    317 	.byte	0	# DW_children_no
    318 	.uleb128 0x3f	# (DW_AT_external)
    319 	.uleb128 0x19	# (DW_FORM_flag_present)
    320 	.uleb128 0x3	# (DW_AT_name)
    321 	.uleb128 0xe	# (DW_FORM_strp)
    322 	.uleb128 0x3a	# (DW_AT_decl_file)
    323 	.uleb128 0xb	# (DW_FORM_data1)
    324 	.uleb128 0x3b	# (DW_AT_decl_line)
    325 	.uleb128 0xb	# (DW_FORM_data1)
    326 	.uleb128 0x27	# (DW_AT_prototyped)
    327 	.uleb128 0x19	# (DW_FORM_flag_present)
    328 	.uleb128 0x49	# (DW_AT_type)
    329 	.uleb128 0x13	# (DW_FORM_ref4)
    330 	.uleb128 0x11	# (DW_AT_low_pc)
    331 	.uleb128 0x1	# (DW_FORM_addr)
    332 	.uleb128 0x12	# (DW_AT_high_pc)
    333 	.uleb128 0x6	# (DW_FORM_data4)
    334 	.uleb128 0x40	# (DW_AT_frame_base)
    335 	.uleb128 0x18	# (DW_FORM_exprloc)
    336 	.uleb128 0x2116	# (DW_AT_GNU_all_tail_call_sites)
    337 	.uleb128 0x19	# (DW_FORM_flag_present)
    338 	.byte	0
    339 	.byte	0
    340 	.uleb128 0x5	# (abbrev code)
    341 	.uleb128 0x24	# (TAG: DW_TAG_base_type)
    342 	.byte	0	# DW_children_no
    343 	.uleb128 0xb	# (DW_AT_byte_size)
    344 	.uleb128 0xb	# (DW_FORM_data1)
    345 	.uleb128 0x3e	# (DW_AT_encoding)
    346 	.uleb128 0xb	# (DW_FORM_data1)
    347 	.uleb128 0x3	# (DW_AT_name)
    348 	.uleb128 0x8	# (DW_FORM_string)
    349 	.byte	0
    350 	.byte	0
    351 	.byte	0
    352 	.section	.debug_aranges,"",@progbits
    353 	.long	0x1c	# Length of Address Ranges Info
    354 	.value	0x2	# DWARF Version
    355 	.long	.Ldebug_info0	# Offset of Compilation Unit Info
    356 	.byte	0x4	# Size of Address
    357 	.byte	0	# Size of Segment Descriptor
    358 	.value	0	# Pad to 8 byte boundary
    359 	.value	0
    360 	.long	.Ltext0	# Address
    361 	.long	.Letext0-.Ltext0	# Length
    362 	.long	0
    363 	.long	0
    364 	.section	.debug_line,"",@progbits
    365 .Ldebug_line0:
    366 	.section	.debug_str,"MS",@progbits,1
    367 .LASF3:
    368 	.string	"fun4"
    369 .LASF4:
    370 	.string	"GNU C 4.8.3 20140911 (Red Hat 4.8.3-7) -mtune=generic -march=i686 -g"
    371 .LASF7:
    372 	.string	"main"
    373 .LASF1:
    374 	.string	"fun2"
    375 .LASF5:
    376 	.string	"record_goto.c"
    377 .LASF0:
    378 	.string	"fun1"
    379 .LASF6:
    380 	.string	""
    381 .LASF2:
    382 	.string	"fun3"
    383 	.ident	"GCC: (GNU) 4.8.3 20140911 (Red Hat 4.8.3-7)"
    384 	.section	.note.GNU-stack,"",@progbits
    385