xref: /llvm-project/bolt/test/X86/Inputs/dwarf5-types-helper2.s (revision c33536e9c3068ae45f34f6e1c562d51cb8aa702a)
1	.text
2	.file	"helper2.cpp"
3	.globl	_Z4foo2v                        # -- Begin function _Z4foo2v
4	.p2align	4, 0x90
5	.type	_Z4foo2v,@function
6_Z4foo2v:                               # @_Z4foo2v
7.Lfunc_begin0:
8	.file	0 "dwarf5-types-split-mono-test" "helper2.cpp" md5 0x73e58154f484ef31eae619abace4005e
9	.loc	0 11 0                          # helper2.cpp:11:0
10	.cfi_startproc
11# %bb.0:                                # %entry
12	pushq	%rbp
13	.cfi_def_cfa_offset 16
14	.cfi_offset %rbp, -16
15	movq	%rsp, %rbp
16	.cfi_def_cfa_register %rbp
17.Ltmp0:
18	.loc	0 14 3 prologue_end             # helper2.cpp:14:3
19	xorl	%eax, %eax
20	.loc	0 14 3 epilogue_begin is_stmt 0 # helper2.cpp:14:3
21	popq	%rbp
22	.cfi_def_cfa %rsp, 8
23	retq
24.Ltmp1:
25.Lfunc_end0:
26	.size	_Z4foo2v, .Lfunc_end0-_Z4foo2v
27	.cfi_endproc
28                                        # -- End function
29	.section	.debug_info,"G",@progbits,10328350931784810499,comdat
30	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
31.Ldebug_info_start0:
32	.short	5                               # DWARF version number
33	.byte	2                               # DWARF Unit Type
34	.byte	8                               # Address Size (in bytes)
35	.long	.debug_abbrev                   # Offset Into Abbrev. Section
36	.quad	-8118393141924741117            # Type Signature
37	.long	35                              # Type DIE Offset
38	.byte	1                               # Abbrev [1] 0x18:0x37 DW_TAG_type_unit
39	.short	33                              # DW_AT_language
40	.long	.Lline_table_start0             # DW_AT_stmt_list
41	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
42	.byte	2                               # Abbrev [2] 0x23:0x22 DW_TAG_structure_type
43	.byte	5                               # DW_AT_calling_convention
44	.byte	11                              # DW_AT_name
45	.byte	24                              # DW_AT_byte_size
46	.byte	0                               # DW_AT_decl_file
47	.byte	1                               # DW_AT_decl_line
48	.byte	3                               # Abbrev [3] 0x29:0x9 DW_TAG_member
49	.byte	7                               # DW_AT_name
50	.long	69                              # DW_AT_type
51	.byte	0                               # DW_AT_decl_file
52	.byte	2                               # DW_AT_decl_line
53	.byte	0                               # DW_AT_data_member_location
54	.byte	3                               # Abbrev [3] 0x32:0x9 DW_TAG_member
55	.byte	9                               # DW_AT_name
56	.long	69                              # DW_AT_type
57	.byte	0                               # DW_AT_decl_file
58	.byte	3                               # DW_AT_decl_line
59	.byte	8                               # DW_AT_data_member_location
60	.byte	3                               # Abbrev [3] 0x3b:0x9 DW_TAG_member
61	.byte	10                              # DW_AT_name
62	.long	69                              # DW_AT_type
63	.byte	0                               # DW_AT_decl_file
64	.byte	4                               # DW_AT_decl_line
65	.byte	16                              # DW_AT_data_member_location
66	.byte	0                               # End Of Children Mark
67	.byte	4                               # Abbrev [4] 0x45:0x5 DW_TAG_pointer_type
68	.long	74                              # DW_AT_type
69	.byte	5                               # Abbrev [5] 0x4a:0x4 DW_TAG_base_type
70	.byte	8                               # DW_AT_name
71	.byte	6                               # DW_AT_encoding
72	.byte	1                               # DW_AT_byte_size
73	.byte	0                               # End Of Children Mark
74.Ldebug_info_end0:
75	.section	.debug_info,"G",@progbits,16677756278370493230,comdat
76	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit
77.Ldebug_info_start1:
78	.short	5                               # DWARF version number
79	.byte	2                               # DWARF Unit Type
80	.byte	8                               # Address Size (in bytes)
81	.long	.debug_abbrev                   # Offset Into Abbrev. Section
82	.quad	-1768987795339058386            # Type Signature
83	.long	35                              # Type DIE Offset
84	.byte	1                               # Abbrev [1] 0x18:0x2e DW_TAG_type_unit
85	.short	33                              # DW_AT_language
86	.long	.Lline_table_start0             # DW_AT_stmt_list
87	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
88	.byte	2                               # Abbrev [2] 0x23:0x19 DW_TAG_structure_type
89	.byte	5                               # DW_AT_calling_convention
90	.byte	13                              # DW_AT_name
91	.byte	16                              # DW_AT_byte_size
92	.byte	0                               # DW_AT_decl_file
93	.byte	6                               # DW_AT_decl_line
94	.byte	3                               # Abbrev [3] 0x29:0x9 DW_TAG_member
95	.byte	7                               # DW_AT_name
96	.long	60                              # DW_AT_type
97	.byte	0                               # DW_AT_decl_file
98	.byte	7                               # DW_AT_decl_line
99	.byte	0                               # DW_AT_data_member_location
100	.byte	3                               # Abbrev [3] 0x32:0x9 DW_TAG_member
101	.byte	9                               # DW_AT_name
102	.long	60                              # DW_AT_type
103	.byte	0                               # DW_AT_decl_file
104	.byte	8                               # DW_AT_decl_line
105	.byte	8                               # DW_AT_data_member_location
106	.byte	0                               # End Of Children Mark
107	.byte	4                               # Abbrev [4] 0x3c:0x5 DW_TAG_pointer_type
108	.long	65                              # DW_AT_type
109	.byte	5                               # Abbrev [5] 0x41:0x4 DW_TAG_base_type
110	.byte	8                               # DW_AT_name
111	.byte	6                               # DW_AT_encoding
112	.byte	1                               # DW_AT_byte_size
113	.byte	0                               # End Of Children Mark
114.Ldebug_info_end1:
115	.section	.debug_abbrev,"",@progbits
116	.byte	1                               # Abbreviation Code
117	.byte	65                              # DW_TAG_type_unit
118	.byte	1                               # DW_CHILDREN_yes
119	.byte	19                              # DW_AT_language
120	.byte	5                               # DW_FORM_data2
121	.byte	16                              # DW_AT_stmt_list
122	.byte	23                              # DW_FORM_sec_offset
123	.byte	114                             # DW_AT_str_offsets_base
124	.byte	23                              # DW_FORM_sec_offset
125	.byte	0                               # EOM(1)
126	.byte	0                               # EOM(2)
127	.byte	2                               # Abbreviation Code
128	.byte	19                              # DW_TAG_structure_type
129	.byte	1                               # DW_CHILDREN_yes
130	.byte	54                              # DW_AT_calling_convention
131	.byte	11                              # DW_FORM_data1
132	.byte	3                               # DW_AT_name
133	.byte	37                              # DW_FORM_strx1
134	.byte	11                              # DW_AT_byte_size
135	.byte	11                              # DW_FORM_data1
136	.byte	58                              # DW_AT_decl_file
137	.byte	11                              # DW_FORM_data1
138	.byte	59                              # DW_AT_decl_line
139	.byte	11                              # DW_FORM_data1
140	.byte	0                               # EOM(1)
141	.byte	0                               # EOM(2)
142	.byte	3                               # Abbreviation Code
143	.byte	13                              # DW_TAG_member
144	.byte	0                               # DW_CHILDREN_no
145	.byte	3                               # DW_AT_name
146	.byte	37                              # DW_FORM_strx1
147	.byte	73                              # DW_AT_type
148	.byte	19                              # DW_FORM_ref4
149	.byte	58                              # DW_AT_decl_file
150	.byte	11                              # DW_FORM_data1
151	.byte	59                              # DW_AT_decl_line
152	.byte	11                              # DW_FORM_data1
153	.byte	56                              # DW_AT_data_member_location
154	.byte	11                              # DW_FORM_data1
155	.byte	0                               # EOM(1)
156	.byte	0                               # EOM(2)
157	.byte	4                               # Abbreviation Code
158	.byte	15                              # DW_TAG_pointer_type
159	.byte	0                               # DW_CHILDREN_no
160	.byte	73                              # DW_AT_type
161	.byte	19                              # DW_FORM_ref4
162	.byte	0                               # EOM(1)
163	.byte	0                               # EOM(2)
164	.byte	5                               # Abbreviation Code
165	.byte	36                              # DW_TAG_base_type
166	.byte	0                               # DW_CHILDREN_no
167	.byte	3                               # DW_AT_name
168	.byte	37                              # DW_FORM_strx1
169	.byte	62                              # DW_AT_encoding
170	.byte	11                              # DW_FORM_data1
171	.byte	11                              # DW_AT_byte_size
172	.byte	11                              # DW_FORM_data1
173	.byte	0                               # EOM(1)
174	.byte	0                               # EOM(2)
175	.byte	6                               # Abbreviation Code
176	.byte	17                              # DW_TAG_compile_unit
177	.byte	1                               # DW_CHILDREN_yes
178	.byte	37                              # DW_AT_producer
179	.byte	37                              # DW_FORM_strx1
180	.byte	19                              # DW_AT_language
181	.byte	5                               # DW_FORM_data2
182	.byte	3                               # DW_AT_name
183	.byte	37                              # DW_FORM_strx1
184	.byte	114                             # DW_AT_str_offsets_base
185	.byte	23                              # DW_FORM_sec_offset
186	.byte	16                              # DW_AT_stmt_list
187	.byte	23                              # DW_FORM_sec_offset
188	.byte	27                              # DW_AT_comp_dir
189	.byte	37                              # DW_FORM_strx1
190	.byte	17                              # DW_AT_low_pc
191	.byte	27                              # DW_FORM_addrx
192	.byte	18                              # DW_AT_high_pc
193	.byte	6                               # DW_FORM_data4
194	.byte	115                             # DW_AT_addr_base
195	.byte	23                              # DW_FORM_sec_offset
196	.byte	0                               # EOM(1)
197	.byte	0                               # EOM(2)
198	.byte	7                               # Abbreviation Code
199	.byte	46                              # DW_TAG_subprogram
200	.byte	1                               # DW_CHILDREN_yes
201	.byte	17                              # DW_AT_low_pc
202	.byte	27                              # DW_FORM_addrx
203	.byte	18                              # DW_AT_high_pc
204	.byte	6                               # DW_FORM_data4
205	.byte	64                              # DW_AT_frame_base
206	.byte	24                              # DW_FORM_exprloc
207	.byte	110                             # DW_AT_linkage_name
208	.byte	37                              # DW_FORM_strx1
209	.byte	3                               # DW_AT_name
210	.byte	37                              # DW_FORM_strx1
211	.byte	58                              # DW_AT_decl_file
212	.byte	11                              # DW_FORM_data1
213	.byte	59                              # DW_AT_decl_line
214	.byte	11                              # DW_FORM_data1
215	.byte	73                              # DW_AT_type
216	.byte	19                              # DW_FORM_ref4
217	.byte	63                              # DW_AT_external
218	.byte	25                              # DW_FORM_flag_present
219	.byte	0                               # EOM(1)
220	.byte	0                               # EOM(2)
221	.byte	8                               # Abbreviation Code
222	.byte	52                              # DW_TAG_variable
223	.byte	0                               # DW_CHILDREN_no
224	.byte	2                               # DW_AT_location
225	.byte	24                              # DW_FORM_exprloc
226	.byte	3                               # DW_AT_name
227	.byte	37                              # DW_FORM_strx1
228	.byte	58                              # DW_AT_decl_file
229	.byte	11                              # DW_FORM_data1
230	.byte	59                              # DW_AT_decl_line
231	.byte	11                              # DW_FORM_data1
232	.byte	73                              # DW_AT_type
233	.byte	19                              # DW_FORM_ref4
234	.byte	0                               # EOM(1)
235	.byte	0                               # EOM(2)
236	.byte	9                               # Abbreviation Code
237	.byte	19                              # DW_TAG_structure_type
238	.byte	0                               # DW_CHILDREN_no
239	.byte	60                              # DW_AT_declaration
240	.byte	25                              # DW_FORM_flag_present
241	.byte	105                             # DW_AT_signature
242	.byte	32                              # DW_FORM_ref_sig8
243	.byte	0                               # EOM(1)
244	.byte	0                               # EOM(2)
245	.byte	0                               # EOM(3)
246	.section	.debug_info,"",@progbits
247.Lcu_begin0:
248	.long	.Ldebug_info_end2-.Ldebug_info_start2 # Length of Unit
249.Ldebug_info_start2:
250	.short	5                               # DWARF version number
251	.byte	1                               # DWARF Unit Type
252	.byte	8                               # Address Size (in bytes)
253	.long	.debug_abbrev                   # Offset Into Abbrev. Section
254	.byte	6                               # Abbrev [6] 0xc:0x55 DW_TAG_compile_unit
255	.byte	0                               # DW_AT_producer
256	.short	33                              # DW_AT_language
257	.byte	1                               # DW_AT_name
258	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base
259	.long	.Lline_table_start0             # DW_AT_stmt_list
260	.byte	2                               # DW_AT_comp_dir
261	.byte	0                               # DW_AT_low_pc
262	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
263	.long	.Laddr_table_base0              # DW_AT_addr_base
264	.byte	7                               # Abbrev [7] 0x23:0x27 DW_TAG_subprogram
265	.byte	0                               # DW_AT_low_pc
266	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
267	.byte	1                               # DW_AT_frame_base
268	.byte	86
269	.byte	3                               # DW_AT_linkage_name
270	.byte	4                               # DW_AT_name
271	.byte	0                               # DW_AT_decl_file
272	.byte	11                              # DW_AT_decl_line
273	.long	74                              # DW_AT_type
274                                        # DW_AT_external
275	.byte	8                               # Abbrev [8] 0x33:0xb DW_TAG_variable
276	.byte	2                               # DW_AT_location
277	.byte	145
278	.byte	104
279	.byte	6                               # DW_AT_name
280	.byte	0                               # DW_AT_decl_file
281	.byte	12                              # DW_AT_decl_line
282	.long	78                              # DW_AT_type
283	.byte	8                               # Abbrev [8] 0x3e:0xb DW_TAG_variable
284	.byte	2                               # DW_AT_location
285	.byte	145
286	.byte	88
287	.byte	12                              # DW_AT_name
288	.byte	0                               # DW_AT_decl_file
289	.byte	13                              # DW_AT_decl_line
290	.long	87                              # DW_AT_type
291	.byte	0                               # End Of Children Mark
292	.byte	5                               # Abbrev [5] 0x4a:0x4 DW_TAG_base_type
293	.byte	5                               # DW_AT_name
294	.byte	5                               # DW_AT_encoding
295	.byte	4                               # DW_AT_byte_size
296	.byte	9                               # Abbrev [9] 0x4e:0x9 DW_TAG_structure_type
297                                        # DW_AT_declaration
298	.quad	-8118393141924741117            # DW_AT_signature
299	.byte	9                               # Abbrev [9] 0x57:0x9 DW_TAG_structure_type
300                                        # DW_AT_declaration
301	.quad	-1768987795339058386            # DW_AT_signature
302	.byte	0                               # End Of Children Mark
303.Ldebug_info_end2:
304	.section	.debug_str_offsets,"",@progbits
305	.long	60                              # Length of String Offsets Set
306	.short	5
307	.short	0
308.Lstr_offsets_base0:
309	.section	.debug_str,"MS",@progbits,1
310.Linfo_string0:
311	.asciz	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git b1465cd49efcbc114a75220b153f5a055ce7911f)" # string offset=0
312.Linfo_string1:
313	.asciz	"helper2.cpp"                   # string offset=105
314.Linfo_string2:
315	.asciz	"dwarf5-types-split-mono-test" # string offset=117
316.Linfo_string3:
317	.asciz	"_Z4foo2v"                      # string offset=184
318.Linfo_string4:
319	.asciz	"foo2"                          # string offset=193
320.Linfo_string5:
321	.asciz	"int"                           # string offset=198
322.Linfo_string6:
323	.asciz	"f"                             # string offset=202
324.Linfo_string7:
325	.asciz	"c1"                            # string offset=204
326.Linfo_string8:
327	.asciz	"char"                          # string offset=207
328.Linfo_string9:
329	.asciz	"c2"                            # string offset=212
330.Linfo_string10:
331	.asciz	"c3"                            # string offset=215
332.Linfo_string11:
333	.asciz	"Foo2b"                         # string offset=218
334.Linfo_string12:
335	.asciz	"f2"                            # string offset=224
336.Linfo_string13:
337	.asciz	"Foo3b"                         # string offset=227
338	.section	.debug_str_offsets,"",@progbits
339	.long	.Linfo_string0
340	.long	.Linfo_string1
341	.long	.Linfo_string2
342	.long	.Linfo_string3
343	.long	.Linfo_string4
344	.long	.Linfo_string5
345	.long	.Linfo_string6
346	.long	.Linfo_string7
347	.long	.Linfo_string8
348	.long	.Linfo_string9
349	.long	.Linfo_string10
350	.long	.Linfo_string11
351	.long	.Linfo_string12
352	.long	.Linfo_string13
353	.section	.debug_addr,"",@progbits
354	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
355.Ldebug_addr_start0:
356	.short	5                               # DWARF version number
357	.byte	8                               # Address size
358	.byte	0                               # Segment selector size
359.Laddr_table_base0:
360	.quad	.Lfunc_begin0
361.Ldebug_addr_end0:
362	.ident	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git b1465cd49efcbc114a75220b153f5a055ce7911f)"
363	.section	".note.GNU-stack","",@progbits
364	.addrsig
365	.section	.debug_line,"",@progbits
366.Lline_table_start0:
367