brintos

brintos / llvm-project-archived public Read only

0
0
Text · 41.0 KiB · dda065b Raw
896 lines · plain
1# REQUIRES: x862# RUN: rm -rf %t && split-file %s %t && cd %t3# RUN: llvm-mc -filetype=obj -triple=x86_64 a.tu.s -o a.tu.o4# RUN: llvm-mc -filetype=obj -triple=x86_64 a.foreign-tu.s -o a.foreign-tu.o5# RUN: llvm-mc -filetype=obj -triple=x86_64 b.s -o b.o6 7# RUN: ld.lld --debug-names a.tu.o b.o -o out0 2>&1 | FileCheck --check-prefix=WARN %s8# RUN: llvm-dwarfdump --debug-names out0 | FileCheck --check-prefix=DWARF %s9 10# WARN: warning: a.tu.o:(.debug_names): type units are not implemented11 12# DWARF:        CU count: 213# DWARF-NEXT:   Local TU count: 014# DWARF-NEXT:   Foreign TU count: 015# DWARF:      Compilation Unit offsets [16# DWARF-NEXT:    CU[0]:17# DWARF-SAME:           0x0000002a18# DWARF-NEXT:    CU[1]:19# DWARF-SAME:           0x0000006a20# DWARF-NEXT:  ]21# DWARF:        String: {{.*}} "t1"22# DWARF-NEXT:   Entry @ 0x8f {23# DWARF-NEXT:     Abbrev: 0x224# DWARF-NEXT:     Tag: DW_TAG_structure_type25# DWARF-NEXT:     DW_IDX_type_unit: 0x0026# DWARF-NEXT:     DW_IDX_die_offset: 0x0000002327# DWARF-NEXT:     DW_IDX_parent: <parent not indexed>28# DWARF-NEXT:     DW_IDX_compile_unit: 0x0029# DWARF-NEXT:   }30# DWARF-NEXT:   Entry @ 0x96 {31# DWARF-NEXT:     Abbrev: 0x132# DWARF-NEXT:     Tag: DW_TAG_structure_type33# DWARF-NEXT:     DW_IDX_die_offset: 0x0000003634# DWARF-NEXT:     DW_IDX_parent: <parent not indexed>35# DWARF-NEXT:     DW_IDX_compile_unit: 0x0036# DWARF-NEXT:   }37# DWARF-NEXT:   Entry @ 0x9c {38# DWARF-NEXT:     Abbrev: 0x139# DWARF-NEXT:     Tag: DW_TAG_structure_type40# DWARF-NEXT:     DW_IDX_die_offset: 0x0000002941# DWARF-NEXT:     DW_IDX_parent: <parent not indexed>42# DWARF-NEXT:     DW_IDX_compile_unit: 0x0143# DWARF-NEXT:   }44 45# RUN: ld.lld --debug-names a.foreign-tu.o b.o -o out1 2>&1 | FileCheck %s --check-prefix=WARN246# RUN: llvm-dwarfdump --debug-names out1 | FileCheck --check-prefix=DWARF2 %s47 48# WARN2: warning: a.foreign-tu.o:(.debug_names): type units are not implemented49 50# DWARF2:        CU count: 251# DWARF2-NEXT:   Local TU count: 052# DWARF2-NEXT:   Foreign TU count: 053# DWARF2:      Compilation Unit offsets [54# DWARF2-NEXT:    CU[0]:55# DWARF2-SAME:           0x0000000056# DWARF2-NEXT:    CU[1]:57# DWARF2-SAME:           0x0000002858# DWARF2-NEXT:  ]59 60.ifdef GEN61#--- a.cc62struct t1 {};63extern "C" void _start(t1) {}64#--- b.cc65struct t1 { } vb;66#--- gen67echo '#--- a.tu.s'68clang --target=x86_64-linux -S -O1 -g -gpubnames -fdebug-types-section a.cc -o -69echo '#--- a.foreign-tu.s'70clang --target=x86_64-linux -S -O1 -g -gpubnames -fdebug-types-section -gsplit-dwarf a.cc -o -71echo '#--- b.s'72clang --target=x86_64-linux -S -O1 -g -gpubnames b.cc -o -73.endif74#--- a.tu.s75	.text76	.file	"a.cc"77	.globl	_start                          # -- Begin function _start78	.p2align	4, 0x9079	.type	_start,@function80_start:                                 # @_start81.Lfunc_begin0:82	.file	0 "/proc/self/cwd" "a.cc" md5 0x6835f89a7d36054002b51e54e47d852e83	.cfi_startproc84# %bb.0:                                # %entry85	.loc	0 2 29 prologue_end             # a.cc:2:2986	retq87.Ltmp0:88.Lfunc_end0:89	.size	_start, .Lfunc_end0-_start90	.cfi_endproc91                                        # -- End function92	.section	.debug_info,"G",@progbits,14297044602779165170,comdat93.Ltu_begin0:94	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit95.Ldebug_info_start0:96	.short	5                               # DWARF version number97	.byte	2                               # DWARF Unit Type98	.byte	8                               # Address Size (in bytes)99	.long	.debug_abbrev                   # Offset Into Abbrev. Section100	.quad	-4149699470930386446            # Type Signature101	.long	35                              # Type DIE Offset102	.byte	1                               # Abbrev [1] 0x18:0x12 DW_TAG_type_unit103	.short	33                              # DW_AT_language104	.long	.Lline_table_start0             # DW_AT_stmt_list105	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base106	.byte	2                               # Abbrev [2] 0x23:0x6 DW_TAG_structure_type107	.byte	5                               # DW_AT_calling_convention108	.byte	4                               # DW_AT_name109	.byte	1                               # DW_AT_byte_size110	.byte	0                               # DW_AT_decl_file111	.byte	1                               # DW_AT_decl_line112	.byte	0                               # End Of Children Mark113.Ldebug_info_end0:114	.section	.debug_abbrev,"",@progbits115	.byte	1                               # Abbreviation Code116	.byte	65                              # DW_TAG_type_unit117	.byte	1                               # DW_CHILDREN_yes118	.byte	19                              # DW_AT_language119	.byte	5                               # DW_FORM_data2120	.byte	16                              # DW_AT_stmt_list121	.byte	23                              # DW_FORM_sec_offset122	.byte	114                             # DW_AT_str_offsets_base123	.byte	23                              # DW_FORM_sec_offset124	.byte	0                               # EOM(1)125	.byte	0                               # EOM(2)126	.byte	2                               # Abbreviation Code127	.byte	19                              # DW_TAG_structure_type128	.byte	0                               # DW_CHILDREN_no129	.byte	54                              # DW_AT_calling_convention130	.byte	11                              # DW_FORM_data1131	.byte	3                               # DW_AT_name132	.byte	37                              # DW_FORM_strx1133	.byte	11                              # DW_AT_byte_size134	.byte	11                              # DW_FORM_data1135	.byte	58                              # DW_AT_decl_file136	.byte	11                              # DW_FORM_data1137	.byte	59                              # DW_AT_decl_line138	.byte	11                              # DW_FORM_data1139	.byte	0                               # EOM(1)140	.byte	0                               # EOM(2)141	.byte	3                               # Abbreviation Code142	.byte	17                              # DW_TAG_compile_unit143	.byte	1                               # DW_CHILDREN_yes144	.byte	37                              # DW_AT_producer145	.byte	37                              # DW_FORM_strx1146	.byte	19                              # DW_AT_language147	.byte	5                               # DW_FORM_data2148	.byte	3                               # DW_AT_name149	.byte	37                              # DW_FORM_strx1150	.byte	114                             # DW_AT_str_offsets_base151	.byte	23                              # DW_FORM_sec_offset152	.byte	16                              # DW_AT_stmt_list153	.byte	23                              # DW_FORM_sec_offset154	.byte	27                              # DW_AT_comp_dir155	.byte	37                              # DW_FORM_strx1156	.byte	17                              # DW_AT_low_pc157	.byte	27                              # DW_FORM_addrx158	.byte	18                              # DW_AT_high_pc159	.byte	6                               # DW_FORM_data4160	.byte	115                             # DW_AT_addr_base161	.byte	23                              # DW_FORM_sec_offset162	.byte	0                               # EOM(1)163	.byte	0                               # EOM(2)164	.byte	4                               # Abbreviation Code165	.byte	46                              # DW_TAG_subprogram166	.byte	1                               # DW_CHILDREN_yes167	.byte	17                              # DW_AT_low_pc168	.byte	27                              # DW_FORM_addrx169	.byte	18                              # DW_AT_high_pc170	.byte	6                               # DW_FORM_data4171	.byte	64                              # DW_AT_frame_base172	.byte	24                              # DW_FORM_exprloc173	.byte	122                             # DW_AT_call_all_calls174	.byte	25                              # DW_FORM_flag_present175	.byte	3                               # DW_AT_name176	.byte	37                              # DW_FORM_strx1177	.byte	58                              # DW_AT_decl_file178	.byte	11                              # DW_FORM_data1179	.byte	59                              # DW_AT_decl_line180	.byte	11                              # DW_FORM_data1181	.byte	63                              # DW_AT_external182	.byte	25                              # DW_FORM_flag_present183	.byte	0                               # EOM(1)184	.byte	0                               # EOM(2)185	.byte	5                               # Abbreviation Code186	.byte	5                               # DW_TAG_formal_parameter187	.byte	0                               # DW_CHILDREN_no188	.byte	58                              # DW_AT_decl_file189	.byte	11                              # DW_FORM_data1190	.byte	59                              # DW_AT_decl_line191	.byte	11                              # DW_FORM_data1192	.byte	73                              # DW_AT_type193	.byte	19                              # DW_FORM_ref4194	.byte	0                               # EOM(1)195	.byte	0                               # EOM(2)196	.byte	6                               # Abbreviation Code197	.byte	19                              # DW_TAG_structure_type198	.byte	0                               # DW_CHILDREN_no199	.byte	60                              # DW_AT_declaration200	.byte	25                              # DW_FORM_flag_present201	.byte	105                             # DW_AT_signature202	.byte	32                              # DW_FORM_ref_sig8203	.byte	0                               # EOM(1)204	.byte	0                               # EOM(2)205	.byte	0                               # EOM(3)206	.section	.debug_info,"",@progbits207.Lcu_begin0:208	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit209.Ldebug_info_start1:210	.short	5                               # DWARF version number211	.byte	1                               # DWARF Unit Type212	.byte	8                               # Address Size (in bytes)213	.long	.debug_abbrev                   # Offset Into Abbrev. Section214	.byte	3                               # Abbrev [3] 0xc:0x34 DW_TAG_compile_unit215	.byte	0                               # DW_AT_producer216	.short	33                              # DW_AT_language217	.byte	1                               # DW_AT_name218	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base219	.long	.Lline_table_start0             # DW_AT_stmt_list220	.byte	2                               # DW_AT_comp_dir221	.byte	0                               # DW_AT_low_pc222	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc223	.long	.Laddr_table_base0              # DW_AT_addr_base224	.byte	4                               # Abbrev [4] 0x23:0x13 DW_TAG_subprogram225	.byte	0                               # DW_AT_low_pc226	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc227	.byte	1                               # DW_AT_frame_base228	.byte	87229                                        # DW_AT_call_all_calls230	.byte	3                               # DW_AT_name231	.byte	0                               # DW_AT_decl_file232	.byte	2                               # DW_AT_decl_line233                                        # DW_AT_external234	.byte	5                               # Abbrev [5] 0x2e:0x7 DW_TAG_formal_parameter235	.byte	0                               # DW_AT_decl_file236	.byte	2                               # DW_AT_decl_line237	.long	54                              # DW_AT_type238	.byte	0                               # End Of Children Mark239	.byte	6                               # Abbrev [6] 0x36:0x9 DW_TAG_structure_type240                                        # DW_AT_declaration241	.quad	-4149699470930386446            # DW_AT_signature242	.byte	0                               # End Of Children Mark243.Ldebug_info_end1:244	.section	.debug_str_offsets,"",@progbits245	.long	24                              # Length of String Offsets Set246	.short	5247	.short	0248.Lstr_offsets_base0:249	.section	.debug_str,"MS",@progbits,1250.Linfo_string0:251	.byte	0                               # string offset=0252.Linfo_string1:253	.asciz	"a.cc"                          # string offset=1254.Linfo_string2:255	.asciz	"/proc/self/cwd"                # string offset=6256.Linfo_string3:257	.asciz	"_start"                        # string offset=21258.Linfo_string4:259	.asciz	"t1"                            # string offset=28260	.section	.debug_str_offsets,"",@progbits261	.long	.Linfo_string0262	.long	.Linfo_string1263	.long	.Linfo_string2264	.long	.Linfo_string3265	.long	.Linfo_string4266	.section	.debug_addr,"",@progbits267	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution268.Ldebug_addr_start0:269	.short	5                               # DWARF version number270	.byte	8                               # Address size271	.byte	0                               # Segment selector size272.Laddr_table_base0:273	.quad	.Lfunc_begin0274.Ldebug_addr_end0:275	.section	.debug_names,"",@progbits276	.long	.Lnames_end0-.Lnames_start0     # Header: unit length277.Lnames_start0:278	.short	5                               # Header: version279	.short	0                               # Header: padding280	.long	1                               # Header: compilation unit count281	.long	1                               # Header: local type unit count282	.long	0                               # Header: foreign type unit count283	.long	2                               # Header: bucket count284	.long	2                               # Header: name count285	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size286	.long	8                               # Header: augmentation string size287	.ascii	"LLVM0700"                      # Header: augmentation string288	.long	.Lcu_begin0                     # Compilation unit 0289	.long	.Ltu_begin0                     # Type unit 0290	.long	1                               # Bucket 0291	.long	0                               # Bucket 1292	.long	5863786                         # Hash in Bucket 0293	.long	-304389582                      # Hash in Bucket 0294	.long	.Linfo_string4                  # String in Bucket 0: t1295	.long	.Linfo_string3                  # String in Bucket 0: _start296	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 0297	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 0298.Lnames_abbrev_start0:299	.byte	1                               # Abbrev code300	.byte	19                              # DW_TAG_structure_type301	.byte	2                               # DW_IDX_type_unit302	.byte	11                              # DW_FORM_data1303	.byte	3                               # DW_IDX_die_offset304	.byte	19                              # DW_FORM_ref4305	.byte	4                               # DW_IDX_parent306	.byte	25                              # DW_FORM_flag_present307	.byte	0                               # End of abbrev308	.byte	0                               # End of abbrev309	.byte	2                               # Abbrev code310	.byte	19                              # DW_TAG_structure_type311	.byte	3                               # DW_IDX_die_offset312	.byte	19                              # DW_FORM_ref4313	.byte	4                               # DW_IDX_parent314	.byte	25                              # DW_FORM_flag_present315	.byte	0                               # End of abbrev316	.byte	0                               # End of abbrev317	.byte	3                               # Abbrev code318	.byte	46                              # DW_TAG_subprogram319	.byte	3                               # DW_IDX_die_offset320	.byte	19                              # DW_FORM_ref4321	.byte	4                               # DW_IDX_parent322	.byte	25                              # DW_FORM_flag_present323	.byte	0                               # End of abbrev324	.byte	0                               # End of abbrev325	.byte	0                               # End of abbrev list326.Lnames_abbrev_end0:327.Lnames_entries0:328.Lnames1:329.L1:330	.byte	1                               # Abbreviation code331	.byte	0                               # DW_IDX_type_unit332	.long	35                              # DW_IDX_die_offset333.L0:                                    # DW_IDX_parent334	.byte	2                               # Abbreviation code335	.long	54                              # DW_IDX_die_offset336	.byte	0                               # DW_IDX_parent337                                        # End of list: t1338.Lnames0:339	.byte	3                               # Abbreviation code340	.long	35                              # DW_IDX_die_offset341	.byte	0                               # DW_IDX_parent342                                        # End of list: _start343	.p2align	2, 0x0344.Lnames_end0:345	.section	".note.GNU-stack","",@progbits346	.addrsig347	.section	.debug_line,"",@progbits348.Lline_table_start0:349#--- a.foreign-tu.s350	.text351	.file	"a.cc"352	.globl	_start                          # -- Begin function _start353	.p2align	4, 0x90354	.type	_start,@function355_start:                                 # @_start356.Lfunc_begin0:357	.file	0 "/proc/self/cwd" "a.cc" md5 0x6835f89a7d36054002b51e54e47d852e358	.cfi_startproc359# %bb.0:                                # %entry360	.loc	0 2 29 prologue_end             # a.cc:2:29361	retq362.Ltmp0:363.Lfunc_end0:364	.size	_start, .Lfunc_end0-_start365	.cfi_endproc366                                        # -- End function367	.section	.debug_info.dwo,"e",@progbits368	.long	.Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit369.Ldebug_info_dwo_start0:370	.short	5                               # DWARF version number371	.byte	6                               # DWARF Unit Type372	.byte	8                               # Address Size (in bytes)373	.long	0                               # Offset Into Abbrev. Section374	.quad	-4149699470930386446            # Type Signature375	.long	33                              # Type DIE Offset376	.byte	1                               # Abbrev [1] 0x18:0x10 DW_TAG_type_unit377	.short	33                              # DW_AT_language378	.byte	1                               # DW_AT_comp_dir379	.byte	2                               # DW_AT_dwo_name380	.long	0                               # DW_AT_stmt_list381	.byte	2                               # Abbrev [2] 0x21:0x6 DW_TAG_structure_type382	.byte	5                               # DW_AT_calling_convention383	.byte	3                               # DW_AT_name384	.byte	1                               # DW_AT_byte_size385	.byte	0                               # DW_AT_decl_file386	.byte	1                               # DW_AT_decl_line387	.byte	0                               # End Of Children Mark388.Ldebug_info_dwo_end0:389	.section	.debug_abbrev,"",@progbits390	.byte	1                               # Abbreviation Code391	.byte	74                              # DW_TAG_skeleton_unit392	.byte	0                               # DW_CHILDREN_no393	.byte	16                              # DW_AT_stmt_list394	.byte	23                              # DW_FORM_sec_offset395	.byte	114                             # DW_AT_str_offsets_base396	.byte	23                              # DW_FORM_sec_offset397	.byte	27                              # DW_AT_comp_dir398	.byte	37                              # DW_FORM_strx1399	.byte	118                             # DW_AT_dwo_name400	.byte	37                              # DW_FORM_strx1401	.byte	17                              # DW_AT_low_pc402	.byte	27                              # DW_FORM_addrx403	.byte	18                              # DW_AT_high_pc404	.byte	6                               # DW_FORM_data4405	.byte	115                             # DW_AT_addr_base406	.byte	23                              # DW_FORM_sec_offset407	.byte	0                               # EOM(1)408	.byte	0                               # EOM(2)409	.byte	0                               # EOM(3)410	.section	.debug_info,"",@progbits411.Lcu_begin0:412	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit413.Ldebug_info_start0:414	.short	5                               # DWARF version number415	.byte	4                               # DWARF Unit Type416	.byte	8                               # Address Size (in bytes)417	.long	.debug_abbrev                   # Offset Into Abbrev. Section418	.quad	-2763464185488304260419	.byte	1                               # Abbrev [1] 0x14:0x14 DW_TAG_skeleton_unit420	.long	.Lline_table_start0             # DW_AT_stmt_list421	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base422	.byte	0                               # DW_AT_comp_dir423	.byte	1                               # DW_AT_dwo_name424	.byte	0                               # DW_AT_low_pc425	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc426	.long	.Laddr_table_base0              # DW_AT_addr_base427.Ldebug_info_end0:428	.section	.debug_str_offsets,"",@progbits429	.long	12                              # Length of String Offsets Set430	.short	5431	.short	0432.Lstr_offsets_base0:433	.section	.debug_str,"MS",@progbits,1434.Lskel_string0:435	.asciz	"/proc/self/cwd"                # string offset=0436.Lskel_string1:437	.asciz	"_start"                        # string offset=15438.Lskel_string2:439	.asciz	"t1"                            # string offset=22440.Lskel_string3:441	.asciz	"a.dwo"                         # string offset=25442	.section	.debug_str_offsets,"",@progbits443	.long	.Lskel_string0444	.long	.Lskel_string3445	.section	.debug_str_offsets.dwo,"e",@progbits446	.long	28                              # Length of String Offsets Set447	.short	5448	.short	0449	.section	.debug_str.dwo,"eMS",@progbits,1450.Linfo_string0:451	.asciz	"_start"                        # string offset=0452.Linfo_string1:453	.asciz	"/proc/self/cwd"                # string offset=7454.Linfo_string2:455	.asciz	"a.dwo"                         # string offset=22456.Linfo_string3:457	.asciz	"t1"                            # string offset=28458.Linfo_string4:459	.byte	0                               # string offset=31460.Linfo_string5:461	.asciz	"a.cc"                          # string offset=32462	.section	.debug_str_offsets.dwo,"e",@progbits463	.long	0464	.long	7465	.long	22466	.long	28467	.long	31468	.long	32469	.section	.debug_info.dwo,"e",@progbits470	.long	.Ldebug_info_dwo_end1-.Ldebug_info_dwo_start1 # Length of Unit471.Ldebug_info_dwo_start1:472	.short	5                               # DWARF version number473	.byte	5                               # DWARF Unit Type474	.byte	8                               # Address Size (in bytes)475	.long	0                               # Offset Into Abbrev. Section476	.quad	-2763464185488304260477	.byte	3                               # Abbrev [3] 0x14:0x23 DW_TAG_compile_unit478	.byte	4                               # DW_AT_producer479	.short	33                              # DW_AT_language480	.byte	5                               # DW_AT_name481	.byte	2                               # DW_AT_dwo_name482	.byte	4                               # Abbrev [4] 0x1a:0x13 DW_TAG_subprogram483	.byte	0                               # DW_AT_low_pc484	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc485	.byte	1                               # DW_AT_frame_base486	.byte	87487                                        # DW_AT_call_all_calls488	.byte	0                               # DW_AT_name489	.byte	0                               # DW_AT_decl_file490	.byte	2                               # DW_AT_decl_line491                                        # DW_AT_external492	.byte	5                               # Abbrev [5] 0x25:0x7 DW_TAG_formal_parameter493	.byte	0                               # DW_AT_decl_file494	.byte	2                               # DW_AT_decl_line495	.long	45                              # DW_AT_type496	.byte	0                               # End Of Children Mark497	.byte	6                               # Abbrev [6] 0x2d:0x9 DW_TAG_structure_type498                                        # DW_AT_declaration499	.quad	-4149699470930386446            # DW_AT_signature500	.byte	0                               # End Of Children Mark501.Ldebug_info_dwo_end1:502	.section	.debug_abbrev.dwo,"e",@progbits503	.byte	1                               # Abbreviation Code504	.byte	65                              # DW_TAG_type_unit505	.byte	1                               # DW_CHILDREN_yes506	.byte	19                              # DW_AT_language507	.byte	5                               # DW_FORM_data2508	.byte	27                              # DW_AT_comp_dir509	.byte	37                              # DW_FORM_strx1510	.byte	118                             # DW_AT_dwo_name511	.byte	37                              # DW_FORM_strx1512	.byte	16                              # DW_AT_stmt_list513	.byte	23                              # DW_FORM_sec_offset514	.byte	0                               # EOM(1)515	.byte	0                               # EOM(2)516	.byte	2                               # Abbreviation Code517	.byte	19                              # DW_TAG_structure_type518	.byte	0                               # DW_CHILDREN_no519	.byte	54                              # DW_AT_calling_convention520	.byte	11                              # DW_FORM_data1521	.byte	3                               # DW_AT_name522	.byte	37                              # DW_FORM_strx1523	.byte	11                              # DW_AT_byte_size524	.byte	11                              # DW_FORM_data1525	.byte	58                              # DW_AT_decl_file526	.byte	11                              # DW_FORM_data1527	.byte	59                              # DW_AT_decl_line528	.byte	11                              # DW_FORM_data1529	.byte	0                               # EOM(1)530	.byte	0                               # EOM(2)531	.byte	3                               # Abbreviation Code532	.byte	17                              # DW_TAG_compile_unit533	.byte	1                               # DW_CHILDREN_yes534	.byte	37                              # DW_AT_producer535	.byte	37                              # DW_FORM_strx1536	.byte	19                              # DW_AT_language537	.byte	5                               # DW_FORM_data2538	.byte	3                               # DW_AT_name539	.byte	37                              # DW_FORM_strx1540	.byte	118                             # DW_AT_dwo_name541	.byte	37                              # DW_FORM_strx1542	.byte	0                               # EOM(1)543	.byte	0                               # EOM(2)544	.byte	4                               # Abbreviation Code545	.byte	46                              # DW_TAG_subprogram546	.byte	1                               # DW_CHILDREN_yes547	.byte	17                              # DW_AT_low_pc548	.byte	27                              # DW_FORM_addrx549	.byte	18                              # DW_AT_high_pc550	.byte	6                               # DW_FORM_data4551	.byte	64                              # DW_AT_frame_base552	.byte	24                              # DW_FORM_exprloc553	.byte	122                             # DW_AT_call_all_calls554	.byte	25                              # DW_FORM_flag_present555	.byte	3                               # DW_AT_name556	.byte	37                              # DW_FORM_strx1557	.byte	58                              # DW_AT_decl_file558	.byte	11                              # DW_FORM_data1559	.byte	59                              # DW_AT_decl_line560	.byte	11                              # DW_FORM_data1561	.byte	63                              # DW_AT_external562	.byte	25                              # DW_FORM_flag_present563	.byte	0                               # EOM(1)564	.byte	0                               # EOM(2)565	.byte	5                               # Abbreviation Code566	.byte	5                               # DW_TAG_formal_parameter567	.byte	0                               # DW_CHILDREN_no568	.byte	58                              # DW_AT_decl_file569	.byte	11                              # DW_FORM_data1570	.byte	59                              # DW_AT_decl_line571	.byte	11                              # DW_FORM_data1572	.byte	73                              # DW_AT_type573	.byte	19                              # DW_FORM_ref4574	.byte	0                               # EOM(1)575	.byte	0                               # EOM(2)576	.byte	6                               # Abbreviation Code577	.byte	19                              # DW_TAG_structure_type578	.byte	0                               # DW_CHILDREN_no579	.byte	60                              # DW_AT_declaration580	.byte	25                              # DW_FORM_flag_present581	.byte	105                             # DW_AT_signature582	.byte	32                              # DW_FORM_ref_sig8583	.byte	0                               # EOM(1)584	.byte	0                               # EOM(2)585	.byte	0                               # EOM(3)586	.section	.debug_line.dwo,"e",@progbits587.Ltmp1:588	.long	.Ldebug_line_end0-.Ldebug_line_start0 # unit length589.Ldebug_line_start0:590	.short	5591	.byte	8592	.byte	0593	.long	.Lprologue_end0-.Lprologue_start0594.Lprologue_start0:595	.byte	1596	.byte	1597	.byte	1598	.byte	-5599	.byte	14600	.byte	1601	.byte	1602	.byte	1603	.byte	8604	.byte	1605	.ascii	"/proc/self/cwd"606	.byte	0607	.byte	3608	.byte	1609	.byte	8610	.byte	2611	.byte	15612	.byte	5613	.byte	30614	.byte	1615	.ascii	"a.cc"616	.byte	0617	.byte	0618	.byte	0x68, 0x35, 0xf8, 0x9a619	.byte	0x7d, 0x36, 0x05, 0x40620	.byte	0x02, 0xb5, 0x1e, 0x54621	.byte	0xe4, 0x7d, 0x85, 0x2e622.Lprologue_end0:623.Ldebug_line_end0:624	.section	.debug_addr,"",@progbits625	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution626.Ldebug_addr_start0:627	.short	5                               # DWARF version number628	.byte	8                               # Address size629	.byte	0                               # Segment selector size630.Laddr_table_base0:631	.quad	.Lfunc_begin0632.Ldebug_addr_end0:633	.section	.debug_names,"",@progbits634	.long	.Lnames_end0-.Lnames_start0     # Header: unit length635.Lnames_start0:636	.short	5                               # Header: version637	.short	0                               # Header: padding638	.long	1                               # Header: compilation unit count639	.long	0                               # Header: local type unit count640	.long	1                               # Header: foreign type unit count641	.long	2                               # Header: bucket count642	.long	2                               # Header: name count643	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size644	.long	8                               # Header: augmentation string size645	.ascii	"LLVM0700"                      # Header: augmentation string646	.long	.Lcu_begin0                     # Compilation unit 0647	.quad	-4149699470930386446            # Type unit 0648	.long	1                               # Bucket 0649	.long	0                               # Bucket 1650	.long	5863786                         # Hash in Bucket 0651	.long	-304389582                      # Hash in Bucket 0652	.long	.Lskel_string2                  # String in Bucket 0: t1653	.long	.Lskel_string1                  # String in Bucket 0: _start654	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 0655	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 0656.Lnames_abbrev_start0:657	.byte	1                               # Abbrev code658	.byte	19                              # DW_TAG_structure_type659	.byte	2                               # DW_IDX_type_unit660	.byte	11                              # DW_FORM_data1661	.byte	3                               # DW_IDX_die_offset662	.byte	19                              # DW_FORM_ref4663	.byte	4                               # DW_IDX_parent664	.byte	25                              # DW_FORM_flag_present665	.byte	0                               # End of abbrev666	.byte	0                               # End of abbrev667	.byte	2                               # Abbrev code668	.byte	19                              # DW_TAG_structure_type669	.byte	3                               # DW_IDX_die_offset670	.byte	19                              # DW_FORM_ref4671	.byte	4                               # DW_IDX_parent672	.byte	25                              # DW_FORM_flag_present673	.byte	0                               # End of abbrev674	.byte	0                               # End of abbrev675	.byte	3                               # Abbrev code676	.byte	46                              # DW_TAG_subprogram677	.byte	3                               # DW_IDX_die_offset678	.byte	19                              # DW_FORM_ref4679	.byte	4                               # DW_IDX_parent680	.byte	25                              # DW_FORM_flag_present681	.byte	0                               # End of abbrev682	.byte	0                               # End of abbrev683	.byte	0                               # End of abbrev list684.Lnames_abbrev_end0:685.Lnames_entries0:686.Lnames1:687.L2:688	.byte	1                               # Abbreviation code689	.byte	0                               # DW_IDX_type_unit690	.long	33                              # DW_IDX_die_offset691.L1:                                    # DW_IDX_parent692	.byte	2                               # Abbreviation code693	.long	45                              # DW_IDX_die_offset694	.byte	0                               # DW_IDX_parent695                                        # End of list: t1696.Lnames0:697.L0:698	.byte	3                               # Abbreviation code699	.long	26                              # DW_IDX_die_offset700	.byte	0                               # DW_IDX_parent701                                        # End of list: _start702	.p2align	2, 0x0703.Lnames_end0:704	.section	".note.GNU-stack","",@progbits705	.addrsig706	.section	.debug_line,"",@progbits707.Lline_table_start0:708#--- b.s709	.text710	.file	"b.cc"711	.file	0 "/proc/self/cwd" "b.cc" md5 0xe69190c4224a66c796605e3a1324674b712	.type	vb,@object                      # @vb713	.bss714	.globl	vb715vb:716	.zero	1717	.size	vb, 1718 719	.section	.debug_abbrev,"",@progbits720	.byte	1                               # Abbreviation Code721	.byte	17                              # DW_TAG_compile_unit722	.byte	1                               # DW_CHILDREN_yes723	.byte	37                              # DW_AT_producer724	.byte	37                              # DW_FORM_strx1725	.byte	19                              # DW_AT_language726	.byte	5                               # DW_FORM_data2727	.byte	3                               # DW_AT_name728	.byte	37                              # DW_FORM_strx1729	.byte	114                             # DW_AT_str_offsets_base730	.byte	23                              # DW_FORM_sec_offset731	.byte	16                              # DW_AT_stmt_list732	.byte	23                              # DW_FORM_sec_offset733	.byte	27                              # DW_AT_comp_dir734	.byte	37                              # DW_FORM_strx1735	.byte	115                             # DW_AT_addr_base736	.byte	23                              # DW_FORM_sec_offset737	.byte	0                               # EOM(1)738	.byte	0                               # EOM(2)739	.byte	2                               # Abbreviation Code740	.byte	52                              # DW_TAG_variable741	.byte	0                               # DW_CHILDREN_no742	.byte	3                               # DW_AT_name743	.byte	37                              # DW_FORM_strx1744	.byte	73                              # DW_AT_type745	.byte	19                              # DW_FORM_ref4746	.byte	63                              # DW_AT_external747	.byte	25                              # DW_FORM_flag_present748	.byte	58                              # DW_AT_decl_file749	.byte	11                              # DW_FORM_data1750	.byte	59                              # DW_AT_decl_line751	.byte	11                              # DW_FORM_data1752	.byte	2                               # DW_AT_location753	.byte	24                              # DW_FORM_exprloc754	.byte	0                               # EOM(1)755	.byte	0                               # EOM(2)756	.byte	3                               # Abbreviation Code757	.byte	19                              # DW_TAG_structure_type758	.byte	0                               # DW_CHILDREN_no759	.byte	54                              # DW_AT_calling_convention760	.byte	11                              # DW_FORM_data1761	.byte	3                               # DW_AT_name762	.byte	37                              # DW_FORM_strx1763	.byte	11                              # DW_AT_byte_size764	.byte	11                              # DW_FORM_data1765	.byte	58                              # DW_AT_decl_file766	.byte	11                              # DW_FORM_data1767	.byte	59                              # DW_AT_decl_line768	.byte	11                              # DW_FORM_data1769	.byte	0                               # EOM(1)770	.byte	0                               # EOM(2)771	.byte	0                               # EOM(3)772	.section	.debug_info,"",@progbits773.Lcu_begin0:774	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit775.Ldebug_info_start0:776	.short	5                               # DWARF version number777	.byte	1                               # DWARF Unit Type778	.byte	8                               # Address Size (in bytes)779	.long	.debug_abbrev                   # Offset Into Abbrev. Section780	.byte	1                               # Abbrev [1] 0xc:0x24 DW_TAG_compile_unit781	.byte	0                               # DW_AT_producer782	.short	33                              # DW_AT_language783	.byte	1                               # DW_AT_name784	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base785	.long	.Lline_table_start0             # DW_AT_stmt_list786	.byte	2                               # DW_AT_comp_dir787	.long	.Laddr_table_base0              # DW_AT_addr_base788	.byte	2                               # Abbrev [2] 0x1e:0xb DW_TAG_variable789	.byte	3                               # DW_AT_name790	.long	41                              # DW_AT_type791                                        # DW_AT_external792	.byte	0                               # DW_AT_decl_file793	.byte	1                               # DW_AT_decl_line794	.byte	2                               # DW_AT_location795	.byte	161796	.byte	0797	.byte	3                               # Abbrev [3] 0x29:0x6 DW_TAG_structure_type798	.byte	5                               # DW_AT_calling_convention799	.byte	4                               # DW_AT_name800	.byte	1                               # DW_AT_byte_size801	.byte	0                               # DW_AT_decl_file802	.byte	1                               # DW_AT_decl_line803	.byte	0                               # End Of Children Mark804.Ldebug_info_end0:805	.section	.debug_str_offsets,"",@progbits806	.long	24                              # Length of String Offsets Set807	.short	5808	.short	0809.Lstr_offsets_base0:810	.section	.debug_str,"MS",@progbits,1811.Linfo_string0:812	.byte	0                               # string offset=0813.Linfo_string1:814	.asciz	"b.cc"                          # string offset=1815.Linfo_string2:816	.asciz	"/proc/self/cwd"                # string offset=6817.Linfo_string3:818	.asciz	"vb"                            # string offset=21819.Linfo_string4:820	.asciz	"t1"                            # string offset=24821	.section	.debug_str_offsets,"",@progbits822	.long	.Linfo_string0823	.long	.Linfo_string1824	.long	.Linfo_string2825	.long	.Linfo_string3826	.long	.Linfo_string4827	.section	.debug_addr,"",@progbits828	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution829.Ldebug_addr_start0:830	.short	5                               # DWARF version number831	.byte	8                               # Address size832	.byte	0                               # Segment selector size833.Laddr_table_base0:834	.quad	vb835.Ldebug_addr_end0:836	.section	.debug_names,"",@progbits837	.long	.Lnames_end0-.Lnames_start0     # Header: unit length838.Lnames_start0:839	.short	5                               # Header: version840	.short	0                               # Header: padding841	.long	1                               # Header: compilation unit count842	.long	0                               # Header: local type unit count843	.long	0                               # Header: foreign type unit count844	.long	2                               # Header: bucket count845	.long	2                               # Header: name count846	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size847	.long	8                               # Header: augmentation string size848	.ascii	"LLVM0700"                      # Header: augmentation string849	.long	.Lcu_begin0                     # Compilation unit 0850	.long	1                               # Bucket 0851	.long	2                               # Bucket 1852	.long	5863786                         # Hash in Bucket 0853	.long	5863901                         # Hash in Bucket 1854	.long	.Linfo_string4                  # String in Bucket 0: t1855	.long	.Linfo_string3                  # String in Bucket 1: vb856	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 0857	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 1858.Lnames_abbrev_start0:859	.byte	1                               # Abbrev code860	.byte	19                              # DW_TAG_structure_type861	.byte	3                               # DW_IDX_die_offset862	.byte	19                              # DW_FORM_ref4863	.byte	4                               # DW_IDX_parent864	.byte	25                              # DW_FORM_flag_present865	.byte	0                               # End of abbrev866	.byte	0                               # End of abbrev867	.byte	2                               # Abbrev code868	.byte	52                              # DW_TAG_variable869	.byte	3                               # DW_IDX_die_offset870	.byte	19                              # DW_FORM_ref4871	.byte	4                               # DW_IDX_parent872	.byte	25                              # DW_FORM_flag_present873	.byte	0                               # End of abbrev874	.byte	0                               # End of abbrev875	.byte	0                               # End of abbrev list876.Lnames_abbrev_end0:877.Lnames_entries0:878.Lnames0:879.L1:880	.byte	1                               # Abbreviation code881	.long	41                              # DW_IDX_die_offset882	.byte	0                               # DW_IDX_parent883                                        # End of list: t1884.Lnames1:885.L0:886	.byte	2                               # Abbreviation code887	.long	30                              # DW_IDX_die_offset888	.byte	0                               # DW_IDX_parent889                                        # End of list: vb890	.p2align	2, 0x0891.Lnames_end0:892	.section	".note.GNU-stack","",@progbits893	.addrsig894	.section	.debug_line,"",@progbits895.Lline_table_start0:896