xref: /llvm-project/llvm/test/tools/llvm-dwp/Inputs/overflow/main_v5.s (revision 53a483cee801a207bd851d94a8ee8aebfc3db963)
1*53a483ceSzhuna# Note: This file is compiled from the following code, for
2*53a483ceSzhuna# 		the purpose of creating an overflowed dwo section.
3*53a483ceSzhuna#       The code is not further modified after being compiled.
4*53a483ceSzhuna#
5*53a483ceSzhuna# clang -g -S -gsplit-dwarf -gdwarf-5 main.c
6*53a483ceSzhuna#
7*53a483ceSzhuna# #include <stdio.h>
8*53a483ceSzhuna#
9*53a483ceSzhuna# void hello();
10*53a483ceSzhuna#
11*53a483ceSzhuna# int main() {
12*53a483ceSzhuna#     hello();
13*53a483ceSzhuna#     return 0;
14*53a483ceSzhuna# }
15*53a483ceSzhuna
16*53a483ceSzhuna	.text
17*53a483ceSzhuna	.file	"main.c"
18*53a483ceSzhuna	.globl	main                            # -- Begin function main
19*53a483ceSzhuna	.p2align	4, 0x90
20*53a483ceSzhuna	.type	main,@function
21*53a483ceSzhunamain:                                   # @main
22*53a483ceSzhuna.Lfunc_begin0:
23*53a483ceSzhuna	.file	0 "/xxxx/xxxxxxxxxx/xxxxxxxx/hello" "main.c" md5 0x77ee8a574e83e137b0f31f877848b7ec
24*53a483ceSzhuna	.loc	0 5 0                           # main.c:5:0
25*53a483ceSzhuna	.cfi_startproc
26*53a483ceSzhuna# %bb.0:                                # %entry
27*53a483ceSzhuna	pushq	%rbp
28*53a483ceSzhuna	.cfi_def_cfa_offset 16
29*53a483ceSzhuna	.cfi_offset %rbp, -16
30*53a483ceSzhuna	movq	%rsp, %rbp
31*53a483ceSzhuna	.cfi_def_cfa_register %rbp
32*53a483ceSzhuna	subq	$16, %rsp
33*53a483ceSzhuna	movl	$0, -4(%rbp)
34*53a483ceSzhuna.Ltmp0:
35*53a483ceSzhuna	.loc	0 6 5 prologue_end              # main.c:6:5
36*53a483ceSzhuna	movb	$0, %al
37*53a483ceSzhuna	callq	hello
38*53a483ceSzhuna	xorl	%eax, %eax
39*53a483ceSzhuna	.loc	0 7 5                           # main.c:7:5
40*53a483ceSzhuna	addq	$16, %rsp
41*53a483ceSzhuna	popq	%rbp
42*53a483ceSzhuna	.cfi_def_cfa %rsp, 8
43*53a483ceSzhuna	retq
44*53a483ceSzhuna.Ltmp1:
45*53a483ceSzhuna.Lfunc_end0:
46*53a483ceSzhuna	.size	main, .Lfunc_end0-main
47*53a483ceSzhuna	.cfi_endproc
48*53a483ceSzhuna                                        # -- End function
49*53a483ceSzhuna	.section	.debug_abbrev,"",@progbits
50*53a483ceSzhuna	.byte	1                               # Abbreviation Code
51*53a483ceSzhuna	.byte	74                              # DW_TAG_skeleton_unit
52*53a483ceSzhuna	.byte	0                               # DW_CHILDREN_no
53*53a483ceSzhuna	.byte	16                              # DW_AT_stmt_list
54*53a483ceSzhuna	.byte	23                              # DW_FORM_sec_offset
55*53a483ceSzhuna	.byte	114                             # DW_AT_str_offsets_base
56*53a483ceSzhuna	.byte	23                              # DW_FORM_sec_offset
57*53a483ceSzhuna	.byte	27                              # DW_AT_comp_dir
58*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
59*53a483ceSzhuna	.ascii	"\264B"                         # DW_AT_GNU_pubnames
60*53a483ceSzhuna	.byte	25                              # DW_FORM_flag_present
61*53a483ceSzhuna	.byte	118                             # DW_AT_dwo_name
62*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
63*53a483ceSzhuna	.byte	17                              # DW_AT_low_pc
64*53a483ceSzhuna	.byte	27                              # DW_FORM_addrx
65*53a483ceSzhuna	.byte	18                              # DW_AT_high_pc
66*53a483ceSzhuna	.byte	6                               # DW_FORM_data4
67*53a483ceSzhuna	.byte	115                             # DW_AT_addr_base
68*53a483ceSzhuna	.byte	23                              # DW_FORM_sec_offset
69*53a483ceSzhuna	.byte	0                               # EOM(1)
70*53a483ceSzhuna	.byte	0                               # EOM(2)
71*53a483ceSzhuna	.byte	0                               # EOM(3)
72*53a483ceSzhuna	.section	.debug_info,"",@progbits
73*53a483ceSzhuna.Lcu_begin0:
74*53a483ceSzhuna	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
75*53a483ceSzhuna.Ldebug_info_start0:
76*53a483ceSzhuna	.short	5                               # DWARF version number
77*53a483ceSzhuna	.byte	4                               # DWARF Unit Type
78*53a483ceSzhuna	.byte	8                               # Address Size (in bytes)
79*53a483ceSzhuna	.long	.debug_abbrev                   # Offset Into Abbrev. Section
80*53a483ceSzhuna	.quad	-346972125991005518
81*53a483ceSzhuna	.byte	1                               # Abbrev [1] 0x14:0x14 DW_TAG_skeleton_unit
82*53a483ceSzhuna	.long	.Lline_table_start0             # DW_AT_stmt_list
83*53a483ceSzhuna	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
84*53a483ceSzhuna	.byte	0                               # DW_AT_comp_dir
85*53a483ceSzhuna                                        # DW_AT_GNU_pubnames
86*53a483ceSzhuna	.byte	1                               # DW_AT_dwo_name
87*53a483ceSzhuna	.byte	0                               # DW_AT_low_pc
88*53a483ceSzhuna	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
89*53a483ceSzhuna	.long	.Laddr_table_base0              # DW_AT_addr_base
90*53a483ceSzhuna.Ldebug_info_end0:
91*53a483ceSzhuna	.section	.debug_str_offsets,"",@progbits
92*53a483ceSzhuna	.long	12
93*53a483ceSzhuna	.short	5
94*53a483ceSzhuna	.short	0
95*53a483ceSzhuna.Lstr_offsets_base0:
96*53a483ceSzhuna	.section	.debug_str,"MS",@progbits,1
97*53a483ceSzhuna.Lskel_string0:
98*53a483ceSzhuna	.asciz	"/xxxx/xxxxxxxxxx/xxxxxxxx/hello" # string offset=0
99*53a483ceSzhuna.Lskel_string1:
100*53a483ceSzhuna	.asciz	"main.dwo"                      # string offset=32
101*53a483ceSzhuna	.section	.debug_str_offsets,"",@progbits
102*53a483ceSzhuna	.long	.Lskel_string0
103*53a483ceSzhuna	.long	.Lskel_string1
104*53a483ceSzhuna	.section	.debug_str_offsets.dwo,"e",@progbits
105*53a483ceSzhuna	.long	24
106*53a483ceSzhuna	.short	5
107*53a483ceSzhuna	.short	0
108*53a483ceSzhuna	.section	.debug_str.dwo,"eMS",@progbits,1
109*53a483ceSzhuna.Linfo_string0:
110*53a483ceSzhuna	.asciz	"main"                          # string offset=0
111*53a483ceSzhuna.Linfo_string1:
112*53a483ceSzhuna	.asciz	"int"                           # string offset=5
113*53a483ceSzhuna.Linfo_string2:
114*53a483ceSzhuna	.asciz	"clang version 11.1.0 (https://github.com/llvm/llvm-project.git 1a0dc1e010bf5c8034bd4a53340fc0dc3e90549a)" # string offset=9
115*53a483ceSzhuna.Linfo_string3:
116*53a483ceSzhuna	.asciz	"main.c"                        # string offset=114
117*53a483ceSzhuna.Linfo_string4:
118*53a483ceSzhuna	.asciz	"main.dwo"                      # string offset=121
119*53a483ceSzhuna	.section	.debug_str_offsets.dwo,"e",@progbits
120*53a483ceSzhuna	.long	0
121*53a483ceSzhuna	.long	5
122*53a483ceSzhuna	.long	9
123*53a483ceSzhuna	.long	114
124*53a483ceSzhuna	.long	121
125*53a483ceSzhuna	.section	.debug_info.dwo,"e",@progbits
126*53a483ceSzhuna	.long	.Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit
127*53a483ceSzhuna.Ldebug_info_dwo_start0:
128*53a483ceSzhuna	.short	5                               # DWARF version number
129*53a483ceSzhuna	.byte	5                               # DWARF Unit Type
130*53a483ceSzhuna	.byte	8                               # Address Size (in bytes)
131*53a483ceSzhuna	.long	0                               # Offset Into Abbrev. Section
132*53a483ceSzhuna	.quad	-346972125991005518
133*53a483ceSzhuna	.byte	1                               # Abbrev [1] 0x14:0x1a DW_TAG_compile_unit
134*53a483ceSzhuna	.byte	2                               # DW_AT_producer
135*53a483ceSzhuna	.short	12                              # DW_AT_language
136*53a483ceSzhuna	.byte	3                               # DW_AT_name
137*53a483ceSzhuna	.byte	4                               # DW_AT_dwo_name
138*53a483ceSzhuna	.byte	2                               # Abbrev [2] 0x1a:0xf DW_TAG_subprogram
139*53a483ceSzhuna	.byte	0                               # DW_AT_low_pc
140*53a483ceSzhuna	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
141*53a483ceSzhuna	.byte	1                               # DW_AT_frame_base
142*53a483ceSzhuna	.byte	86
143*53a483ceSzhuna	.byte	0                               # DW_AT_name
144*53a483ceSzhuna	.byte	0                               # DW_AT_decl_file
145*53a483ceSzhuna	.byte	5                               # DW_AT_decl_line
146*53a483ceSzhuna	.long	41                              # DW_AT_type
147*53a483ceSzhuna                                        # DW_AT_external
148*53a483ceSzhuna	.byte	3                               # Abbrev [3] 0x29:0x4 DW_TAG_base_type
149*53a483ceSzhuna	.byte	1                               # DW_AT_name
150*53a483ceSzhuna	.byte	5                               # DW_AT_encoding
151*53a483ceSzhuna	.byte	4                               # DW_AT_byte_size
152*53a483ceSzhuna	.byte	0                               # End Of Children Mark
153*53a483ceSzhuna	.fill   4294967233
154*53a483ceSzhuna.Ldebug_info_dwo_end0:
155*53a483ceSzhuna	.section	.debug_abbrev.dwo,"e",@progbits
156*53a483ceSzhuna	.byte	1                               # Abbreviation Code
157*53a483ceSzhuna	.byte	17                              # DW_TAG_compile_unit
158*53a483ceSzhuna	.byte	1                               # DW_CHILDREN_yes
159*53a483ceSzhuna	.byte	37                              # DW_AT_producer
160*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
161*53a483ceSzhuna	.byte	19                              # DW_AT_language
162*53a483ceSzhuna	.byte	5                               # DW_FORM_data2
163*53a483ceSzhuna	.byte	3                               # DW_AT_name
164*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
165*53a483ceSzhuna	.byte	118                             # DW_AT_dwo_name
166*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
167*53a483ceSzhuna	.byte	0                               # EOM(1)
168*53a483ceSzhuna	.byte	0                               # EOM(2)
169*53a483ceSzhuna	.byte	2                               # Abbreviation Code
170*53a483ceSzhuna	.byte	46                              # DW_TAG_subprogram
171*53a483ceSzhuna	.byte	0                               # DW_CHILDREN_no
172*53a483ceSzhuna	.byte	17                              # DW_AT_low_pc
173*53a483ceSzhuna	.byte	27                              # DW_FORM_addrx
174*53a483ceSzhuna	.byte	18                              # DW_AT_high_pc
175*53a483ceSzhuna	.byte	6                               # DW_FORM_data4
176*53a483ceSzhuna	.byte	64                              # DW_AT_frame_base
177*53a483ceSzhuna	.byte	24                              # DW_FORM_exprloc
178*53a483ceSzhuna	.byte	3                               # DW_AT_name
179*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
180*53a483ceSzhuna	.byte	58                              # DW_AT_decl_file
181*53a483ceSzhuna	.byte	11                              # DW_FORM_data1
182*53a483ceSzhuna	.byte	59                              # DW_AT_decl_line
183*53a483ceSzhuna	.byte	11                              # DW_FORM_data1
184*53a483ceSzhuna	.byte	73                              # DW_AT_type
185*53a483ceSzhuna	.byte	19                              # DW_FORM_ref4
186*53a483ceSzhuna	.byte	63                              # DW_AT_external
187*53a483ceSzhuna	.byte	25                              # DW_FORM_flag_present
188*53a483ceSzhuna	.byte	0                               # EOM(1)
189*53a483ceSzhuna	.byte	0                               # EOM(2)
190*53a483ceSzhuna	.byte	3                               # Abbreviation Code
191*53a483ceSzhuna	.byte	36                              # DW_TAG_base_type
192*53a483ceSzhuna	.byte	0                               # DW_CHILDREN_no
193*53a483ceSzhuna	.byte	3                               # DW_AT_name
194*53a483ceSzhuna	.byte	37                              # DW_FORM_strx1
195*53a483ceSzhuna	.byte	62                              # DW_AT_encoding
196*53a483ceSzhuna	.byte	11                              # DW_FORM_data1
197*53a483ceSzhuna	.byte	11                              # DW_AT_byte_size
198*53a483ceSzhuna	.byte	11                              # DW_FORM_data1
199*53a483ceSzhuna	.byte	0                               # EOM(1)
200*53a483ceSzhuna	.byte	0                               # EOM(2)
201*53a483ceSzhuna	.byte	0                               # EOM(3)
202*53a483ceSzhuna	.section	.debug_addr,"",@progbits
203*53a483ceSzhuna	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
204*53a483ceSzhuna.Ldebug_addr_start0:
205*53a483ceSzhuna	.short	5                               # DWARF version number
206*53a483ceSzhuna	.byte	8                               # Address size
207*53a483ceSzhuna	.byte	0                               # Segment selector size
208*53a483ceSzhuna.Laddr_table_base0:
209*53a483ceSzhuna	.quad	.Lfunc_begin0
210*53a483ceSzhuna.Ldebug_addr_end0:
211*53a483ceSzhuna	.section	.debug_gnu_pubnames,"",@progbits
212*53a483ceSzhuna	.long	.LpubNames_end0-.LpubNames_begin0 # Length of Public Names Info
213*53a483ceSzhuna.LpubNames_begin0:
214*53a483ceSzhuna	.short	2                               # DWARF Version
215*53a483ceSzhuna	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
216*53a483ceSzhuna	.long	40                              # Compilation Unit Length
217*53a483ceSzhuna	.long	26                              # DIE offset
218*53a483ceSzhuna	.byte	48                              # Attributes: FUNCTION, EXTERNAL
219*53a483ceSzhuna	.asciz	"main"                          # External Name
220*53a483ceSzhuna	.long	0                               # End Mark
221*53a483ceSzhuna.LpubNames_end0:
222*53a483ceSzhuna	.section	.debug_gnu_pubtypes,"",@progbits
223*53a483ceSzhuna	.long	.LpubTypes_end0-.LpubTypes_begin0 # Length of Public Types Info
224*53a483ceSzhuna.LpubTypes_begin0:
225*53a483ceSzhuna	.short	2                               # DWARF Version
226*53a483ceSzhuna	.long	.Lcu_begin0                     # Offset of Compilation Unit Info
227*53a483ceSzhuna	.long	40                              # Compilation Unit Length
228*53a483ceSzhuna	.long	41                              # DIE offset
229*53a483ceSzhuna	.byte	144                             # Attributes: TYPE, STATIC
230*53a483ceSzhuna	.asciz	"int"                           # External Name
231*53a483ceSzhuna	.long	0                               # End Mark
232*53a483ceSzhuna.LpubTypes_end0:
233*53a483ceSzhuna	.ident	"clang version 11.1.0 (https://github.com/llvm/llvm-project.git 1a0dc1e010bf5c8034bd4a53340fc0dc3e90549a)"
234*53a483ceSzhuna	.section	".note.GNU-stack","",@progbits
235*53a483ceSzhuna	.addrsig
236*53a483ceSzhuna	.addrsig_sym hello
237*53a483ceSzhuna	.section	.debug_line,"",@progbits
238*53a483ceSzhuna.Lline_table_start0:
239