xref: /llvm-project/bolt/test/X86/Inputs/dwarf5-debug-line-not-modified-helper.s (revision 66e943b1a9751db1611f6ba07e4c46899455d686)
1*66e943b1SAlexander Yermolovich# int foo() {
2*66e943b1SAlexander Yermolovich#   return 0;
3*66e943b1SAlexander Yermolovich# }
4*66e943b1SAlexander Yermolovich
5*66e943b1SAlexander Yermolovich	.text
6*66e943b1SAlexander Yermolovich	.file	"helper.cpp"
7*66e943b1SAlexander Yermolovich	.globl	_Z3foov                         # -- Begin function _Z3foov
8*66e943b1SAlexander Yermolovich	.p2align	4, 0x90
9*66e943b1SAlexander Yermolovich	.type	_Z3foov,@function
10*66e943b1SAlexander Yermolovich_Z3foov:                                # @_Z3foov
11*66e943b1SAlexander Yermolovich.Lfunc_begin0:
12*66e943b1SAlexander Yermolovich	.file	0 "/test" "helper.cpp" md5 0x95a4a33e7fe9423970d3c798fdf8ed43
13*66e943b1SAlexander Yermolovich	.loc	0 1 0                           # helper.cpp:1:0
14*66e943b1SAlexander Yermolovich	.cfi_startproc
15*66e943b1SAlexander Yermolovich# %bb.0:                                # %entry
16*66e943b1SAlexander Yermolovich	pushq	%rbp
17*66e943b1SAlexander Yermolovich	.cfi_def_cfa_offset 16
18*66e943b1SAlexander Yermolovich	.cfi_offset %rbp, -16
19*66e943b1SAlexander Yermolovich	movq	%rsp, %rbp
20*66e943b1SAlexander Yermolovich	.cfi_def_cfa_register %rbp
21*66e943b1SAlexander Yermolovich.Ltmp0:
22*66e943b1SAlexander Yermolovich	.loc	0 2 3 prologue_end              # helper.cpp:2:3
23*66e943b1SAlexander Yermolovich	xorl	%eax, %eax
24*66e943b1SAlexander Yermolovich	.loc	0 2 3 epilogue_begin is_stmt 0  # helper.cpp:2:3
25*66e943b1SAlexander Yermolovich	popq	%rbp
26*66e943b1SAlexander Yermolovich	.cfi_def_cfa %rsp, 8
27*66e943b1SAlexander Yermolovich	retq
28*66e943b1SAlexander Yermolovich.Ltmp1:
29*66e943b1SAlexander Yermolovich.Lfunc_end0:
30*66e943b1SAlexander Yermolovich	.size	_Z3foov, .Lfunc_end0-_Z3foov
31*66e943b1SAlexander Yermolovich	.cfi_endproc
32*66e943b1SAlexander Yermolovich                                        # -- End function
33*66e943b1SAlexander Yermolovich	.section	.debug_abbrev,"",@progbits
34*66e943b1SAlexander Yermolovich	.byte	1                               # Abbreviation Code
35*66e943b1SAlexander Yermolovich	.byte	17                              # DW_TAG_compile_unit
36*66e943b1SAlexander Yermolovich	.byte	1                               # DW_CHILDREN_yes
37*66e943b1SAlexander Yermolovich	.byte	37                              # DW_AT_producer
38*66e943b1SAlexander Yermolovich	.byte	37                              # DW_FORM_strx1
39*66e943b1SAlexander Yermolovich	.byte	19                              # DW_AT_language
40*66e943b1SAlexander Yermolovich	.byte	5                               # DW_FORM_data2
41*66e943b1SAlexander Yermolovich	.byte	3                               # DW_AT_name
42*66e943b1SAlexander Yermolovich	.byte	37                              # DW_FORM_strx1
43*66e943b1SAlexander Yermolovich	.byte	114                             # DW_AT_str_offsets_base
44*66e943b1SAlexander Yermolovich	.byte	23                              # DW_FORM_sec_offset
45*66e943b1SAlexander Yermolovich	.byte	16                              # DW_AT_stmt_list
46*66e943b1SAlexander Yermolovich	.byte	23                              # DW_FORM_sec_offset
47*66e943b1SAlexander Yermolovich	.byte	27                              # DW_AT_comp_dir
48*66e943b1SAlexander Yermolovich	.byte	37                              # DW_FORM_strx1
49*66e943b1SAlexander Yermolovich	.byte	17                              # DW_AT_low_pc
50*66e943b1SAlexander Yermolovich	.byte	27                              # DW_FORM_addrx
51*66e943b1SAlexander Yermolovich	.byte	18                              # DW_AT_high_pc
52*66e943b1SAlexander Yermolovich	.byte	6                               # DW_FORM_data4
53*66e943b1SAlexander Yermolovich	.byte	115                             # DW_AT_addr_base
54*66e943b1SAlexander Yermolovich	.byte	23                              # DW_FORM_sec_offset
55*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(1)
56*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(2)
57*66e943b1SAlexander Yermolovich	.byte	2                               # Abbreviation Code
58*66e943b1SAlexander Yermolovich	.byte	46                              # DW_TAG_subprogram
59*66e943b1SAlexander Yermolovich	.byte	0                               # DW_CHILDREN_no
60*66e943b1SAlexander Yermolovich	.byte	17                              # DW_AT_low_pc
61*66e943b1SAlexander Yermolovich	.byte	27                              # DW_FORM_addrx
62*66e943b1SAlexander Yermolovich	.byte	18                              # DW_AT_high_pc
63*66e943b1SAlexander Yermolovich	.byte	6                               # DW_FORM_data4
64*66e943b1SAlexander Yermolovich	.byte	64                              # DW_AT_frame_base
65*66e943b1SAlexander Yermolovich	.byte	24                              # DW_FORM_exprloc
66*66e943b1SAlexander Yermolovich	.byte	110                             # DW_AT_linkage_name
67*66e943b1SAlexander Yermolovich	.byte	37                              # DW_FORM_strx1
68*66e943b1SAlexander Yermolovich	.byte	3                               # DW_AT_name
69*66e943b1SAlexander Yermolovich	.byte	37                              # DW_FORM_strx1
70*66e943b1SAlexander Yermolovich	.byte	58                              # DW_AT_decl_file
71*66e943b1SAlexander Yermolovich	.byte	11                              # DW_FORM_data1
72*66e943b1SAlexander Yermolovich	.byte	59                              # DW_AT_decl_line
73*66e943b1SAlexander Yermolovich	.byte	11                              # DW_FORM_data1
74*66e943b1SAlexander Yermolovich	.byte	73                              # DW_AT_type
75*66e943b1SAlexander Yermolovich	.byte	19                              # DW_FORM_ref4
76*66e943b1SAlexander Yermolovich	.byte	63                              # DW_AT_external
77*66e943b1SAlexander Yermolovich	.byte	25                              # DW_FORM_flag_present
78*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(1)
79*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(2)
80*66e943b1SAlexander Yermolovich	.byte	3                               # Abbreviation Code
81*66e943b1SAlexander Yermolovich	.byte	36                              # DW_TAG_base_type
82*66e943b1SAlexander Yermolovich	.byte	0                               # DW_CHILDREN_no
83*66e943b1SAlexander Yermolovich	.byte	3                               # DW_AT_name
84*66e943b1SAlexander Yermolovich	.byte	37                              # DW_FORM_strx1
85*66e943b1SAlexander Yermolovich	.byte	62                              # DW_AT_encoding
86*66e943b1SAlexander Yermolovich	.byte	11                              # DW_FORM_data1
87*66e943b1SAlexander Yermolovich	.byte	11                              # DW_AT_byte_size
88*66e943b1SAlexander Yermolovich	.byte	11                              # DW_FORM_data1
89*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(1)
90*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(2)
91*66e943b1SAlexander Yermolovich	.byte	0                               # EOM(3)
92*66e943b1SAlexander Yermolovich	.section	.debug_info,"",@progbits
93*66e943b1SAlexander Yermolovich.Lcu_begin0:
94*66e943b1SAlexander Yermolovich	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
95*66e943b1SAlexander Yermolovich.Ldebug_info_start0:
96*66e943b1SAlexander Yermolovich	.short	5                               # DWARF version number
97*66e943b1SAlexander Yermolovich	.byte	1                               # DWARF Unit Type
98*66e943b1SAlexander Yermolovich	.byte	8                               # Address Size (in bytes)
99*66e943b1SAlexander Yermolovich	.long	.debug_abbrev                   # Offset Into Abbrev. Section
100*66e943b1SAlexander Yermolovich	.byte	1                               # Abbrev [1] 0xc:0x2c DW_TAG_compile_unit
101*66e943b1SAlexander Yermolovich	.byte	0                               # DW_AT_producer
102*66e943b1SAlexander Yermolovich	.short	33                              # DW_AT_language
103*66e943b1SAlexander Yermolovich	.byte	1                               # DW_AT_name
104*66e943b1SAlexander Yermolovich	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
105*66e943b1SAlexander Yermolovich	.long	.Lline_table_start0             # DW_AT_stmt_list
106*66e943b1SAlexander Yermolovich	.byte	2                               # DW_AT_comp_dir
107*66e943b1SAlexander Yermolovich	.byte	0                               # DW_AT_low_pc
108*66e943b1SAlexander Yermolovich	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
109*66e943b1SAlexander Yermolovich	.long	.Laddr_table_base0              # DW_AT_addr_base
110*66e943b1SAlexander Yermolovich	.byte	2                               # Abbrev [2] 0x23:0x10 DW_TAG_subprogram
111*66e943b1SAlexander Yermolovich	.byte	0                               # DW_AT_low_pc
112*66e943b1SAlexander Yermolovich	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
113*66e943b1SAlexander Yermolovich	.byte	1                               # DW_AT_frame_base
114*66e943b1SAlexander Yermolovich	.byte	86
115*66e943b1SAlexander Yermolovich	.byte	3                               # DW_AT_linkage_name
116*66e943b1SAlexander Yermolovich	.byte	4                               # DW_AT_name
117*66e943b1SAlexander Yermolovich	.byte	0                               # DW_AT_decl_file
118*66e943b1SAlexander Yermolovich	.byte	1                               # DW_AT_decl_line
119*66e943b1SAlexander Yermolovich	.long	51                              # DW_AT_type
120*66e943b1SAlexander Yermolovich                                        # DW_AT_external
121*66e943b1SAlexander Yermolovich	.byte	3                               # Abbrev [3] 0x33:0x4 DW_TAG_base_type
122*66e943b1SAlexander Yermolovich	.byte	5                               # DW_AT_name
123*66e943b1SAlexander Yermolovich	.byte	5                               # DW_AT_encoding
124*66e943b1SAlexander Yermolovich	.byte	4                               # DW_AT_byte_size
125*66e943b1SAlexander Yermolovich	.byte	0                               # End Of Children Mark
126*66e943b1SAlexander Yermolovich.Ldebug_info_end0:
127*66e943b1SAlexander Yermolovich	.section	.debug_str_offsets,"",@progbits
128*66e943b1SAlexander Yermolovich	.long	28                              # Length of String Offsets Set
129*66e943b1SAlexander Yermolovich	.short	5
130*66e943b1SAlexander Yermolovich	.short	0
131*66e943b1SAlexander Yermolovich.Lstr_offsets_base0:
132*66e943b1SAlexander Yermolovich	.section	.debug_str,"MS",@progbits,1
133*66e943b1SAlexander Yermolovich.Linfo_string0:
134*66e943b1SAlexander Yermolovich	.asciz	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git 640e07c49037cca41a1bfbeb916b569d8c950aea)" # string offset=0
135*66e943b1SAlexander Yermolovich.Linfo_string1:
136*66e943b1SAlexander Yermolovich	.asciz	"helper.cpp"                    # string offset=105
137*66e943b1SAlexander Yermolovich.Linfo_string2:
138*66e943b1SAlexander Yermolovich	.asciz	"/test" # string offset=116
139*66e943b1SAlexander Yermolovich.Linfo_string3:
140*66e943b1SAlexander Yermolovich	.asciz	"_Z3foov"                       # string offset=154
141*66e943b1SAlexander Yermolovich.Linfo_string4:
142*66e943b1SAlexander Yermolovich	.asciz	"foo"                           # string offset=162
143*66e943b1SAlexander Yermolovich.Linfo_string5:
144*66e943b1SAlexander Yermolovich	.asciz	"int"                           # string offset=166
145*66e943b1SAlexander Yermolovich	.section	.debug_str_offsets,"",@progbits
146*66e943b1SAlexander Yermolovich	.long	.Linfo_string0
147*66e943b1SAlexander Yermolovich	.long	.Linfo_string1
148*66e943b1SAlexander Yermolovich	.long	.Linfo_string2
149*66e943b1SAlexander Yermolovich	.long	.Linfo_string3
150*66e943b1SAlexander Yermolovich	.long	.Linfo_string4
151*66e943b1SAlexander Yermolovich	.long	.Linfo_string5
152*66e943b1SAlexander Yermolovich	.section	.debug_addr,"",@progbits
153*66e943b1SAlexander Yermolovich	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
154*66e943b1SAlexander Yermolovich.Ldebug_addr_start0:
155*66e943b1SAlexander Yermolovich	.short	5                               # DWARF version number
156*66e943b1SAlexander Yermolovich	.byte	8                               # Address size
157*66e943b1SAlexander Yermolovich	.byte	0                               # Segment selector size
158*66e943b1SAlexander Yermolovich.Laddr_table_base0:
159*66e943b1SAlexander Yermolovich	.quad	.Lfunc_begin0
160*66e943b1SAlexander Yermolovich.Ldebug_addr_end0:
161*66e943b1SAlexander Yermolovich	.ident	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git 640e07c49037cca41a1bfbeb916b569d8c950aea)"
162*66e943b1SAlexander Yermolovich	.section	".note.GNU-stack","",@progbits
163*66e943b1SAlexander Yermolovich	.addrsig
164*66e943b1SAlexander Yermolovich	.section	.debug_line,"",@progbits
165*66e943b1SAlexander Yermolovich.Lline_table_start0:
166