1# helper1.cpp
2# struct Foo3a {
3#   char *c1;
4#   char *c2;
5#   char *c3;
6# };
7# struct Foo4 {
8#   char *c1;
9#   char *c2;
10# };
11#
12# int foo2() {
13#   Foo3a f;
14#   Foo4 f2;
15#   return 0;
16# }
17
18# helper2.cpp
19# struct Foo4a {
20#  char *c1;
21#  char *c2;
22#  char *c3;
23# };
24# struct Foo5 {
25#   char *c1;
26#   char *c2;
27# };
28#
29# int foo3() {
30#   Foo4a f;
31#   Foo5 f2;
32#   return 0;
33# }
34
35
36
37	.text
38	.file	"llvm-link"
39	.globl	_Z4foo2v                        # -- Begin function _Z4foo2v
40	.p2align	4, 0x90
41	.type	_Z4foo2v,@function
42_Z4foo2v:                               # @_Z4foo2v
43.Lfunc_begin0:
44	.file	1 "/dwarf5-dwarf4-types-forward-cross-reference-test" "helper1.cpp"
45	.loc	1 11 0                          # helper1.cpp:11:0
46	.cfi_startproc
47# %bb.0:                                # %entry
48	pushq	%rbp
49	.cfi_def_cfa_offset 16
50	.cfi_offset %rbp, -16
51	movq	%rsp, %rbp
52	.cfi_def_cfa_register %rbp
53.Ltmp0:
54	.loc	1 14 3 prologue_end             # helper1.cpp:14:3
55	xorl	%eax, %eax
56	.loc	1 14 3 epilogue_begin is_stmt 0 # helper1.cpp:14:3
57	popq	%rbp
58	.cfi_def_cfa %rsp, 8
59	retq
60.Ltmp1:
61.Lfunc_end0:
62	.size	_Z4foo2v, .Lfunc_end0-_Z4foo2v
63	.cfi_endproc
64                                        # -- End function
65	.globl	_Z4foo3v                        # -- Begin function _Z4foo3v
66	.p2align	4, 0x90
67	.type	_Z4foo3v,@function
68_Z4foo3v:                               # @_Z4foo3v
69.Lfunc_begin1:
70	.file	2 "/dwarf5-dwarf4-types-forward-cross-reference-test" "helper2.cpp"
71	.loc	2 11 0 is_stmt 1                # helper2.cpp:11:0
72	.cfi_startproc
73# %bb.0:                                # %entry
74	pushq	%rbp
75	.cfi_def_cfa_offset 16
76	.cfi_offset %rbp, -16
77	movq	%rsp, %rbp
78	.cfi_def_cfa_register %rbp
79.Ltmp2:
80	.loc	2 14 3 prologue_end             # helper2.cpp:14:3
81	xorl	%eax, %eax
82	.loc	2 14 3 epilogue_begin is_stmt 0 # helper2.cpp:14:3
83	popq	%rbp
84	.cfi_def_cfa %rsp, 8
85	retq
86.Ltmp3:
87.Lfunc_end1:
88	.size	_Z4foo3v, .Lfunc_end1-_Z4foo3v
89	.cfi_endproc
90                                        # -- End function
91	.section	.debug_types,"G",@progbits,10693860647081617285,comdat
92	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
93.Ldebug_info_start0:
94	.short	4                               # DWARF version number
95	.long	.debug_abbrev                   # Offset Into Abbrev. Section
96	.byte	8                               # Address Size (in bytes)
97	.quad	-7752883426627934331            # Type Signature
98	.long	30                              # Type DIE Offset
99	.byte	1                               # Abbrev [1] 0x17:0x42 DW_TAG_type_unit
100	.short	33                              # DW_AT_language
101	.long	.Lline_table_start0             # DW_AT_stmt_list
102	.byte	2                               # Abbrev [2] 0x1e:0x2e DW_TAG_structure_type
103	.byte	5                               # DW_AT_calling_convention
104	.long	.Linfo_string14                 # DW_AT_name
105	.byte	24                              # DW_AT_byte_size
106	.byte	1                               # DW_AT_decl_file
107	.byte	1                               # DW_AT_decl_line
108	.byte	3                               # Abbrev [3] 0x27:0xc DW_TAG_member
109	.long	.Linfo_string10                 # DW_AT_name
110	.long	76                              # DW_AT_type
111	.byte	1                               # DW_AT_decl_file
112	.byte	2                               # DW_AT_decl_line
113	.byte	0                               # DW_AT_data_member_location
114	.byte	3                               # Abbrev [3] 0x33:0xc DW_TAG_member
115	.long	.Linfo_string12                 # DW_AT_name
116	.long	76                              # DW_AT_type
117	.byte	1                               # DW_AT_decl_file
118	.byte	3                               # DW_AT_decl_line
119	.byte	8                               # DW_AT_data_member_location
120	.byte	3                               # Abbrev [3] 0x3f:0xc DW_TAG_member
121	.long	.Linfo_string13                 # DW_AT_name
122	.long	76                              # DW_AT_type
123	.byte	1                               # DW_AT_decl_file
124	.byte	4                               # DW_AT_decl_line
125	.byte	16                              # DW_AT_data_member_location
126	.byte	0                               # End Of Children Mark
127	.byte	4                               # Abbrev [4] 0x4c:0x5 DW_TAG_pointer_type
128	.long	81                              # DW_AT_type
129	.byte	5                               # Abbrev [5] 0x51:0x7 DW_TAG_base_type
130	.long	.Linfo_string11                 # DW_AT_name
131	.byte	6                               # DW_AT_encoding
132	.byte	1                               # DW_AT_byte_size
133	.byte	0                               # End Of Children Mark
134.Ldebug_info_end0:
135	.section	.debug_types,"G",@progbits,17604755499357858397,comdat
136	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit
137.Ldebug_info_start1:
138	.short	4                               # DWARF version number
139	.long	.debug_abbrev                   # Offset Into Abbrev. Section
140	.byte	8                               # Address Size (in bytes)
141	.quad	-841988574351693219             # Type Signature
142	.long	30                              # Type DIE Offset
143	.byte	1                               # Abbrev [1] 0x17:0x36 DW_TAG_type_unit
144	.short	33                              # DW_AT_language
145	.long	.Lline_table_start0             # DW_AT_stmt_list
146	.byte	2                               # Abbrev [2] 0x1e:0x22 DW_TAG_structure_type
147	.byte	5                               # DW_AT_calling_convention
148	.long	.Linfo_string16                 # DW_AT_name
149	.byte	16                              # DW_AT_byte_size
150	.byte	1                               # DW_AT_decl_file
151	.byte	6                               # DW_AT_decl_line
152	.byte	3                               # Abbrev [3] 0x27:0xc DW_TAG_member
153	.long	.Linfo_string10                 # DW_AT_name
154	.long	64                              # DW_AT_type
155	.byte	1                               # DW_AT_decl_file
156	.byte	7                               # DW_AT_decl_line
157	.byte	0                               # DW_AT_data_member_location
158	.byte	3                               # Abbrev [3] 0x33:0xc DW_TAG_member
159	.long	.Linfo_string12                 # DW_AT_name
160	.long	64                              # DW_AT_type
161	.byte	1                               # DW_AT_decl_file
162	.byte	8                               # DW_AT_decl_line
163	.byte	8                               # DW_AT_data_member_location
164	.byte	0                               # End Of Children Mark
165	.byte	4                               # Abbrev [4] 0x40:0x5 DW_TAG_pointer_type
166	.long	69                              # DW_AT_type
167	.byte	5                               # Abbrev [5] 0x45:0x7 DW_TAG_base_type
168	.long	.Linfo_string11                 # DW_AT_name
169	.byte	6                               # DW_AT_encoding
170	.byte	1                               # DW_AT_byte_size
171	.byte	0                               # End Of Children Mark
172.Ldebug_info_end1:
173	.section	.debug_types,"G",@progbits,10955924554604642151,comdat
174	.long	.Ldebug_info_end2-.Ldebug_info_start2 # Length of Unit
175.Ldebug_info_start2:
176	.short	4                               # DWARF version number
177	.long	.debug_abbrev                   # Offset Into Abbrev. Section
178	.byte	8                               # Address Size (in bytes)
179	.quad	-7490819519104909465            # Type Signature
180	.long	30                              # Type DIE Offset
181	.byte	1                               # Abbrev [1] 0x17:0x42 DW_TAG_type_unit
182	.short	33                              # DW_AT_language
183	.long	.Lline_table_start0             # DW_AT_stmt_list
184	.byte	2                               # Abbrev [2] 0x1e:0x2e DW_TAG_structure_type
185	.byte	5                               # DW_AT_calling_convention
186	.long	.Linfo_string17                 # DW_AT_name
187	.byte	24                              # DW_AT_byte_size
188	.byte	2                               # DW_AT_decl_file
189	.byte	1                               # DW_AT_decl_line
190	.byte	3                               # Abbrev [3] 0x27:0xc DW_TAG_member
191	.long	.Linfo_string10                 # DW_AT_name
192	.long	76                              # DW_AT_type
193	.byte	2                               # DW_AT_decl_file
194	.byte	2                               # DW_AT_decl_line
195	.byte	0                               # DW_AT_data_member_location
196	.byte	3                               # Abbrev [3] 0x33:0xc DW_TAG_member
197	.long	.Linfo_string12                 # DW_AT_name
198	.long	76                              # DW_AT_type
199	.byte	2                               # DW_AT_decl_file
200	.byte	3                               # DW_AT_decl_line
201	.byte	8                               # DW_AT_data_member_location
202	.byte	3                               # Abbrev [3] 0x3f:0xc DW_TAG_member
203	.long	.Linfo_string13                 # DW_AT_name
204	.long	76                              # DW_AT_type
205	.byte	2                               # DW_AT_decl_file
206	.byte	4                               # DW_AT_decl_line
207	.byte	16                              # DW_AT_data_member_location
208	.byte	0                               # End Of Children Mark
209	.byte	4                               # Abbrev [4] 0x4c:0x5 DW_TAG_pointer_type
210	.long	81                              # DW_AT_type
211	.byte	5                               # Abbrev [5] 0x51:0x7 DW_TAG_base_type
212	.long	.Linfo_string11                 # DW_AT_name
213	.byte	6                               # DW_AT_encoding
214	.byte	1                               # DW_AT_byte_size
215	.byte	0                               # End Of Children Mark
216.Ldebug_info_end2:
217	.section	.debug_types,"G",@progbits,5738727807022258601,comdat
218	.long	.Ldebug_info_end3-.Ldebug_info_start3 # Length of Unit
219.Ldebug_info_start3:
220	.short	4                               # DWARF version number
221	.long	.debug_abbrev                   # Offset Into Abbrev. Section
222	.byte	8                               # Address Size (in bytes)
223	.quad	5738727807022258601             # Type Signature
224	.long	30                              # Type DIE Offset
225	.byte	1                               # Abbrev [1] 0x17:0x36 DW_TAG_type_unit
226	.short	33                              # DW_AT_language
227	.long	.Lline_table_start0             # DW_AT_stmt_list
228	.byte	2                               # Abbrev [2] 0x1e:0x22 DW_TAG_structure_type
229	.byte	5                               # DW_AT_calling_convention
230	.long	.Linfo_string18                 # DW_AT_name
231	.byte	16                              # DW_AT_byte_size
232	.byte	2                               # DW_AT_decl_file
233	.byte	6                               # DW_AT_decl_line
234	.byte	3                               # Abbrev [3] 0x27:0xc DW_TAG_member
235	.long	.Linfo_string10                 # DW_AT_name
236	.long	64                              # DW_AT_type
237	.byte	2                               # DW_AT_decl_file
238	.byte	7                               # DW_AT_decl_line
239	.byte	0                               # DW_AT_data_member_location
240	.byte	3                               # Abbrev [3] 0x33:0xc DW_TAG_member
241	.long	.Linfo_string12                 # DW_AT_name
242	.long	64                              # DW_AT_type
243	.byte	2                               # DW_AT_decl_file
244	.byte	8                               # DW_AT_decl_line
245	.byte	8                               # DW_AT_data_member_location
246	.byte	0                               # End Of Children Mark
247	.byte	4                               # Abbrev [4] 0x40:0x5 DW_TAG_pointer_type
248	.long	69                              # DW_AT_type
249	.byte	5                               # Abbrev [5] 0x45:0x7 DW_TAG_base_type
250	.long	.Linfo_string11                 # DW_AT_name
251	.byte	6                               # DW_AT_encoding
252	.byte	1                               # DW_AT_byte_size
253	.byte	0                               # End Of Children Mark
254.Ldebug_info_end3:
255	.section	.debug_abbrev,"",@progbits
256	.byte	1                               # Abbreviation Code
257	.byte	65                              # DW_TAG_type_unit
258	.byte	1                               # DW_CHILDREN_yes
259	.byte	19                              # DW_AT_language
260	.byte	5                               # DW_FORM_data2
261	.byte	16                              # DW_AT_stmt_list
262	.byte	23                              # DW_FORM_sec_offset
263	.byte	0                               # EOM(1)
264	.byte	0                               # EOM(2)
265	.byte	2                               # Abbreviation Code
266	.byte	19                              # DW_TAG_structure_type
267	.byte	1                               # DW_CHILDREN_yes
268	.byte	54                              # DW_AT_calling_convention
269	.byte	11                              # DW_FORM_data1
270	.byte	3                               # DW_AT_name
271	.byte	14                              # DW_FORM_strp
272	.byte	11                              # DW_AT_byte_size
273	.byte	11                              # DW_FORM_data1
274	.byte	58                              # DW_AT_decl_file
275	.byte	11                              # DW_FORM_data1
276	.byte	59                              # DW_AT_decl_line
277	.byte	11                              # DW_FORM_data1
278	.byte	0                               # EOM(1)
279	.byte	0                               # EOM(2)
280	.byte	3                               # Abbreviation Code
281	.byte	13                              # DW_TAG_member
282	.byte	0                               # DW_CHILDREN_no
283	.byte	3                               # DW_AT_name
284	.byte	14                              # DW_FORM_strp
285	.byte	73                              # DW_AT_type
286	.byte	19                              # DW_FORM_ref4
287	.byte	58                              # DW_AT_decl_file
288	.byte	11                              # DW_FORM_data1
289	.byte	59                              # DW_AT_decl_line
290	.byte	11                              # DW_FORM_data1
291	.byte	56                              # DW_AT_data_member_location
292	.byte	11                              # DW_FORM_data1
293	.byte	0                               # EOM(1)
294	.byte	0                               # EOM(2)
295	.byte	4                               # Abbreviation Code
296	.byte	15                              # DW_TAG_pointer_type
297	.byte	0                               # DW_CHILDREN_no
298	.byte	73                              # DW_AT_type
299	.byte	19                              # DW_FORM_ref4
300	.byte	0                               # EOM(1)
301	.byte	0                               # EOM(2)
302	.byte	5                               # Abbreviation Code
303	.byte	36                              # DW_TAG_base_type
304	.byte	0                               # DW_CHILDREN_no
305	.byte	3                               # DW_AT_name
306	.byte	14                              # DW_FORM_strp
307	.byte	62                              # DW_AT_encoding
308	.byte	11                              # DW_FORM_data1
309	.byte	11                              # DW_AT_byte_size
310	.byte	11                              # DW_FORM_data1
311	.byte	0                               # EOM(1)
312	.byte	0                               # EOM(2)
313	.byte	6                               # Abbreviation Code
314	.byte	17                              # DW_TAG_compile_unit
315	.byte	1                               # DW_CHILDREN_yes
316	.byte	37                              # DW_AT_producer
317	.byte	14                              # DW_FORM_strp
318	.byte	19                              # DW_AT_language
319	.byte	5                               # DW_FORM_data2
320	.byte	3                               # DW_AT_name
321	.byte	14                              # DW_FORM_strp
322	.byte	16                              # DW_AT_stmt_list
323	.byte	23                              # DW_FORM_sec_offset
324	.byte	27                              # DW_AT_comp_dir
325	.byte	14                              # DW_FORM_strp
326	.byte	17                              # DW_AT_low_pc
327	.byte	1                               # DW_FORM_addr
328	.byte	18                              # DW_AT_high_pc
329	.byte	6                               # DW_FORM_data4
330	.byte	0                               # EOM(1)
331	.byte	0                               # EOM(2)
332	.byte	7                               # Abbreviation Code
333	.byte	46                              # DW_TAG_subprogram
334	.byte	1                               # DW_CHILDREN_yes
335	.byte	17                              # DW_AT_low_pc
336	.byte	1                               # DW_FORM_addr
337	.byte	18                              # DW_AT_high_pc
338	.byte	6                               # DW_FORM_data4
339	.byte	64                              # DW_AT_frame_base
340	.byte	24                              # DW_FORM_exprloc
341	.byte	110                             # DW_AT_linkage_name
342	.byte	14                              # DW_FORM_strp
343	.byte	3                               # DW_AT_name
344	.byte	14                              # DW_FORM_strp
345	.byte	58                              # DW_AT_decl_file
346	.byte	11                              # DW_FORM_data1
347	.byte	59                              # DW_AT_decl_line
348	.byte	11                              # DW_FORM_data1
349	.byte	73                              # DW_AT_type
350	.byte	19                              # DW_FORM_ref4
351	.byte	63                              # DW_AT_external
352	.byte	25                              # DW_FORM_flag_present
353	.byte	0                               # EOM(1)
354	.byte	0                               # EOM(2)
355	.byte	8                               # Abbreviation Code
356	.byte	52                              # DW_TAG_variable
357	.byte	0                               # DW_CHILDREN_no
358	.byte	2                               # DW_AT_location
359	.byte	24                              # DW_FORM_exprloc
360	.byte	3                               # DW_AT_name
361	.byte	14                              # DW_FORM_strp
362	.byte	58                              # DW_AT_decl_file
363	.byte	11                              # DW_FORM_data1
364	.byte	59                              # DW_AT_decl_line
365	.byte	11                              # DW_FORM_data1
366	.byte	73                              # DW_AT_type
367	.byte	19                              # DW_FORM_ref4
368	.byte	0                               # EOM(1)
369	.byte	0                               # EOM(2)
370	.byte	9                               # Abbreviation Code
371	.byte	19                              # DW_TAG_structure_type
372	.byte	0                               # DW_CHILDREN_no
373	.byte	60                              # DW_AT_declaration
374	.byte	25                              # DW_FORM_flag_present
375	.byte	105                             # DW_AT_signature
376	.byte	32                              # DW_FORM_ref_sig8
377	.byte	0                               # EOM(1)
378	.byte	0                               # EOM(2)
379	.byte	10                               # Abbreviation Code
380	.byte	52                              # DW_TAG_variable
381	.byte	0                               # DW_CHILDREN_no
382	.byte	2                               # DW_AT_location
383	.byte	24                              # DW_FORM_exprloc
384	.byte	3                               # DW_AT_name
385	.byte	14                              # DW_FORM_strp
386	.byte	58                              # DW_AT_decl_file
387	.byte	11                              # DW_FORM_data1
388	.byte	59                              # DW_AT_decl_line
389	.byte	11                              # DW_FORM_data1
390	.byte	73                              # DW_AT_type
391	.byte	16                              # DW_FORM_ref_addr
392	.byte	0                               # EOM(1)
393	.byte	0                               # EOM(2)
394	.byte	0                               # EOM(3)
395	.section	.debug_info,"",@progbits
396.Lcu_begin0:
397	.long	.Ldebug_info_end4-.Ldebug_info_start4 # Length of Unit
398.Ldebug_info_start4:
399	.short	4                               # DWARF version number
400	.long	.debug_abbrev                   # Offset Into Abbrev. Section
401	.byte	8                               # Address Size (in bytes)
402	.byte	6                               # Abbrev [6] 0xb:0x73 DW_TAG_compile_unit
403	.long	.Linfo_string0                  # DW_AT_producer
404	.short	33                              # DW_AT_language
405	.long	.Linfo_string1                  # DW_AT_name
406	.long	.Lline_table_start0             # DW_AT_stmt_list
407	.long	.Linfo_string2                  # DW_AT_comp_dir
408	.quad	.Lfunc_begin0                   # DW_AT_low_pc
409	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
410	.byte	7                               # Abbrev [7] 0x2a:0x3a DW_TAG_subprogram
411	.quad	.Lfunc_begin0                   # DW_AT_low_pc
412	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc
413	.byte	1                               # DW_AT_frame_base
414	.byte	86
415	.long	.Linfo_string4                  # DW_AT_linkage_name
416	.long	.Linfo_string5                  # DW_AT_name
417	.byte	1                               # DW_AT_decl_file
418	.byte	11                              # DW_AT_decl_line
419	.long	100                             # DW_AT_type
420                                        # DW_AT_external
421	.byte	8                               # Abbrev [8] 0x47:0xe DW_TAG_variable
422	.byte	2                               # DW_AT_location
423	.byte	145
424	.byte	104
425	.long	.Linfo_string9                  # DW_AT_name
426	.byte	1                               # DW_AT_decl_file
427	.byte	12                              # DW_AT_decl_line
428	.long	107                             # DW_AT_type
429	.byte	10                              # Abbrev [10] 0x55:0xe DW_TAG_variable <-- Manually modified s/8/10
430	.byte	2                               # DW_AT_location
431	.byte	145
432	.byte	88
433	.long	.Linfo_string15                 # DW_AT_name
434	.byte	1                               # DW_AT_decl_file
435	.byte	13                              # DW_AT_decl_line
436	.long	.Lmanual_label                  # DW_AT_type
437	.byte	0                               # End Of Children Mark
438	.byte	5                               # Abbrev [5] 0x64:0x7 DW_TAG_base_type
439	.long	.Linfo_string6                  # DW_AT_name
440	.byte	5                               # DW_AT_encoding
441	.byte	4                               # DW_AT_byte_size
442.Lmanual_label_forward:
443	.byte	9                               # Abbrev [9] 0x6b:0x9 DW_TAG_structure_type
444                                        # DW_AT_declaration
445	.quad	-7752883426627934331            # DW_AT_signature
446	.byte	9                               # Abbrev [9] 0x74:0x9 DW_TAG_structure_type
447                                        # DW_AT_declaration
448	.quad	-841988574351693219             # DW_AT_signature
449	.byte	0                               # End Of Children Mark
450.Ldebug_info_end4:
451.Lcu_begin1:
452	.long	.Ldebug_info_end5-.Ldebug_info_start5 # Length of Unit
453.Ldebug_info_start5:
454	.short	4                               # DWARF version number
455	.long	.debug_abbrev                   # Offset Into Abbrev. Section
456	.byte	8                               # Address Size (in bytes)
457	.byte	6                               # Abbrev [6] 0xb:0x73 DW_TAG_compile_unit
458	.long	.Linfo_string0                  # DW_AT_producer
459	.short	33                              # DW_AT_language
460	.long	.Linfo_string3                  # DW_AT_name
461	.long	.Lline_table_start0             # DW_AT_stmt_list
462	.long	.Linfo_string2                  # DW_AT_comp_dir
463	.quad	.Lfunc_begin1                   # DW_AT_low_pc
464	.long	.Lfunc_end1-.Lfunc_begin1       # DW_AT_high_pc
465	.byte	7                               # Abbrev [7] 0x2a:0x3a DW_TAG_subprogram
466	.quad	.Lfunc_begin1                   # DW_AT_low_pc
467	.long	.Lfunc_end1-.Lfunc_begin1       # DW_AT_high_pc
468	.byte	1                               # DW_AT_frame_base
469	.byte	86
470	.long	.Linfo_string7                  # DW_AT_linkage_name
471	.long	.Linfo_string8                  # DW_AT_name
472	.byte	2                               # DW_AT_decl_file
473	.byte	11                              # DW_AT_decl_line
474	.long	100                             # DW_AT_type
475                                        # DW_AT_external
476	.byte	8                               # Abbrev [8] 0x47:0xe DW_TAG_variable
477	.byte	2                               # DW_AT_location
478	.byte	145
479	.byte	104
480	.long	.Linfo_string9                  # DW_AT_name
481	.byte	2                               # DW_AT_decl_file
482	.byte	12                              # DW_AT_decl_line
483	.long	107                             # DW_AT_type
484	.byte	10                              # Abbrev [10] 0x55:0xe DW_TAG_variable <-- Manually modified s/8/10
485	.byte	2                               # DW_AT_location
486	.byte	145
487	.byte	88
488	.long	.Linfo_string15                 # DW_AT_name
489	.byte	2                               # DW_AT_decl_file
490	.byte	13                              # DW_AT_decl_line
491	.long	.Lmanual_label_forward                             # DW_AT_type
492	.byte	0                               # End Of Children Mark
493	.byte	5                               # Abbrev [5] 0x64:0x7 DW_TAG_base_type
494	.long	.Linfo_string6                  # DW_AT_name
495	.byte	5                               # DW_AT_encoding
496	.byte	4                               # DW_AT_byte_size
497.Lmanual_label:
498	.byte	9                               # Abbrev [9] 0x6b:0x9 DW_TAG_structure_type
499                                        # DW_AT_declaration
500	.quad	-7490819519104909465            # DW_AT_signature
501	.byte	9                               # Abbrev [9] 0x74:0x9 DW_TAG_structure_type
502                                        # DW_AT_declaration
503	.quad	5738727807022258601             # DW_AT_signature
504	.byte	0                               # End Of Children Mark
505.Ldebug_info_end5:
506	.section	.debug_str,"MS",@progbits,1
507.Linfo_string0:
508	.asciz	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git 73027ae39b1492e5b6033358a13b86d7d1e781ae)" # string offset=0
509.Linfo_string1:
510	.asciz	"helper1.cpp"                   # string offset=105
511.Linfo_string2:
512	.asciz	"/dwarf5-dwarf4-types-forward-cross-reference-test" # string offset=117
513.Linfo_string3:
514	.asciz	"helper2.cpp"                   # string offset=204
515.Linfo_string4:
516	.asciz	"_Z4foo2v"                      # string offset=216
517.Linfo_string5:
518	.asciz	"foo2"                          # string offset=225
519.Linfo_string6:
520	.asciz	"int"                           # string offset=230
521.Linfo_string7:
522	.asciz	"_Z4foo3v"                      # string offset=234
523.Linfo_string8:
524	.asciz	"foo3"                          # string offset=243
525.Linfo_string9:
526	.asciz	"f"                             # string offset=248
527.Linfo_string10:
528	.asciz	"c1"                            # string offset=250
529.Linfo_string11:
530	.asciz	"char"                          # string offset=253
531.Linfo_string12:
532	.asciz	"c2"                            # string offset=258
533.Linfo_string13:
534	.asciz	"c3"                            # string offset=261
535.Linfo_string14:
536	.asciz	"Foo3a"                         # string offset=264
537.Linfo_string15:
538	.asciz	"f2"                            # string offset=270
539.Linfo_string16:
540	.asciz	"Foo4"                          # string offset=273
541.Linfo_string17:
542	.asciz	"Foo4a"                         # string offset=278
543.Linfo_string18:
544	.asciz	"Foo5"                          # string offset=284
545	.ident	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git 73027ae39b1492e5b6033358a13b86d7d1e781ae)"
546	.ident	"clang version 17.0.0 (https://github.com/llvm/llvm-project.git 73027ae39b1492e5b6033358a13b86d7d1e781ae)"
547	.section	".note.GNU-stack","",@progbits
548	.addrsig
549	.section	.debug_line,"",@progbits
550.Lline_table_start0:
551