brintos

brintos / llvm-project-archived public Read only

0
0
Text · 36.0 KiB · 78fcdc2 Raw
790 lines · plain
1# REQUIRES: x862## Test name indexes that contain multiple CU offsets due to LTO.3 4# RUN: rm -rf %t && split-file %s %t && cd %t5# RUN: llvm-mc -filetype=obj -triple=x86_64 %S/Inputs/debug-names-a.s -o a.o6# RUN: llvm-mc -filetype=obj -triple=x86_64 bcd.s -o bcd.o7# RUN: llvm-mc -filetype=obj -triple=x86_64 ef.s -o ef.o8# RUN: ld.lld --debug-names a.o bcd.o ef.o -o out9# RUN: llvm-dwarfdump --debug-info --debug-names out | FileCheck %s --check-prefix=DWARF10 11## Place the multiple CU offsets in the second name index in an input file.12# RUN: ld.lld -r a.o bcd.o -o abcd.o13# RUN: ld.lld --debug-names abcd.o ef.o -o out14# RUN: llvm-dwarfdump --debug-info --debug-names out | FileCheck %s --check-prefix=DWARF15 16# DWARF:      [[CU0:0x[^:]+]]: Compile Unit17# DWARF:      [[CU1:0x[^:]+]]: Compile Unit18# DWARF:      [[CU2:0x[^:]+]]: Compile Unit19# DWARF:      [[CU3:0x[^:]+]]: Compile Unit20# DWARF:      [[CU4:0x[^:]+]]: Compile Unit21# DWARF:      [[CU5:0x[^:]+]]: Compile Unit22# DWARF:      Compilation Unit offsets [23# DWARF-NEXT:   CU[0]: [[CU0]]24# DWARF-NEXT:   CU[1]: [[CU1]]25# DWARF-NEXT:   CU[2]: [[CU2]]26# DWARF-NEXT:   CU[3]: [[CU3]]27# DWARF-NEXT:   CU[4]: [[CU4]]28# DWARF-NEXT:   CU[5]: [[CU5]]29# DWARF-NEXT: ]30# DWARF:        String: {{.*}} "vc"31# DWARF:          DW_IDX_compile_unit: 0x0232# DWARF:        String: {{.*}} "vd"33# DWARF:          DW_IDX_die_offset:34# DWARF-SAME:                        0x0000002035# DWARF:          DW_IDX_compile_unit:36# DWARF-SAME:                          0x0337# DWARF:        String: {{.*}} "ve"38# DWARF:          DW_IDX_die_offset:39# DWARF-SAME:                        0x0000001e40# DWARF:          DW_IDX_compile_unit:41# DWARF-SAME:                          0x0442# DWARF:        String: {{.*}} "vf"43# DWARF:          DW_IDX_compile_unit:44# DWARF-SAME:                          0x0545# DWARF:        String: {{.*}} "vb"46# DWARF:          DW_IDX_compile_unit:47# DWARF-SAME:                          0x0148 49.ifdef GEN50#--- b.cc51[[gnu::used]] int vb;52#--- c.cc53[[gnu::used]] int vc;54#--- d.cc55namespace ns {56[[gnu::used]] int vd;57}58 59//--- e.cc60[[gnu::used]] int ve;61//--- f.cc62namespace ns {63[[gnu::used]] int vf;64}65 66#--- gen67clang --target=x86_64-linux -O1 -g -gpubnames -flto b.cc c.cc d.cc -nostdlib -fuse-ld=lld -Wl,--lto-emit-asm68echo '#--- bcd.s'69cat a.out.lto.s70clang --target=x86_64-linux -O1 -g -gpubnames -flto e.cc f.cc -nostdlib -fuse-ld=lld -Wl,--lto-emit-asm71echo '#--- ef.s'72cat a.out.lto.s73.endif74#--- bcd.s75	.text76	.file	"ld-temp.o"77	.file	1 "/proc/self/cwd" "b.cc" md5 0x78dad32a49063326a4de543198e5494478	.file	2 "/proc/self/cwd" "c.cc" md5 0x7a0f7bf2cb0ec8c297f794908d91ab1b79	.file	3 "/proc/self/cwd" "d.cc" md5 0xf7e2af89615ce48bf9a98fdae55ab5ad80	.type	vb,@object                      # @vb81	.section	.bss.vb,"aw",@nobits82	.globl	vb83	.p2align	2, 0x084vb:85	.long	0                               # 0x086	.size	vb, 487 88	.type	vc,@object                      # @vc89	.section	.bss.vc,"aw",@nobits90	.globl	vc91	.p2align	2, 0x092vc:93	.long	0                               # 0x094	.size	vc, 495 96	.type	_ZN2ns2vdE,@object              # @_ZN2ns2vdE97	.section	.bss._ZN2ns2vdE,"aw",@nobits98	.globl	_ZN2ns2vdE99	.p2align	2, 0x0100_ZN2ns2vdE:101	.long	0                               # 0x0102	.size	_ZN2ns2vdE, 4103 104	.section	.debug_abbrev,"",@progbits105	.byte	1                               # Abbreviation Code106	.byte	17                              # DW_TAG_compile_unit107	.byte	1                               # DW_CHILDREN_yes108	.byte	37                              # DW_AT_producer109	.byte	37                              # DW_FORM_strx1110	.byte	19                              # DW_AT_language111	.byte	5                               # DW_FORM_data2112	.byte	3                               # DW_AT_name113	.byte	37                              # DW_FORM_strx1114	.byte	114                             # DW_AT_str_offsets_base115	.byte	23                              # DW_FORM_sec_offset116	.byte	16                              # DW_AT_stmt_list117	.byte	23                              # DW_FORM_sec_offset118	.byte	27                              # DW_AT_comp_dir119	.byte	37                              # DW_FORM_strx1120	.byte	115                             # DW_AT_addr_base121	.byte	23                              # DW_FORM_sec_offset122	.byte	0                               # EOM(1)123	.byte	0                               # EOM(2)124	.byte	2                               # Abbreviation Code125	.byte	52                              # DW_TAG_variable126	.byte	0                               # DW_CHILDREN_no127	.byte	3                               # DW_AT_name128	.byte	37                              # DW_FORM_strx1129	.byte	73                              # DW_AT_type130	.byte	19                              # DW_FORM_ref4131	.byte	63                              # DW_AT_external132	.byte	25                              # DW_FORM_flag_present133	.byte	58                              # DW_AT_decl_file134	.byte	11                              # DW_FORM_data1135	.byte	59                              # DW_AT_decl_line136	.byte	11                              # DW_FORM_data1137	.byte	2                               # DW_AT_location138	.byte	24                              # DW_FORM_exprloc139	.byte	0                               # EOM(1)140	.byte	0                               # EOM(2)141	.byte	3                               # Abbreviation Code142	.byte	36                              # DW_TAG_base_type143	.byte	0                               # DW_CHILDREN_no144	.byte	3                               # DW_AT_name145	.byte	37                              # DW_FORM_strx1146	.byte	62                              # DW_AT_encoding147	.byte	11                              # DW_FORM_data1148	.byte	11                              # DW_AT_byte_size149	.byte	11                              # DW_FORM_data1150	.byte	0                               # EOM(1)151	.byte	0                               # EOM(2)152	.byte	4                               # Abbreviation Code153	.byte	52                              # DW_TAG_variable154	.byte	0                               # DW_CHILDREN_no155	.byte	3                               # DW_AT_name156	.byte	37                              # DW_FORM_strx1157	.byte	73                              # DW_AT_type158	.byte	16                              # DW_FORM_ref_addr159	.byte	63                              # DW_AT_external160	.byte	25                              # DW_FORM_flag_present161	.byte	58                              # DW_AT_decl_file162	.byte	11                              # DW_FORM_data1163	.byte	59                              # DW_AT_decl_line164	.byte	11                              # DW_FORM_data1165	.byte	2                               # DW_AT_location166	.byte	24                              # DW_FORM_exprloc167	.byte	0                               # EOM(1)168	.byte	0                               # EOM(2)169	.byte	5                               # Abbreviation Code170	.byte	57                              # DW_TAG_namespace171	.byte	1                               # DW_CHILDREN_yes172	.byte	3                               # DW_AT_name173	.byte	37                              # DW_FORM_strx1174	.byte	0                               # EOM(1)175	.byte	0                               # EOM(2)176	.byte	6                               # Abbreviation Code177	.byte	52                              # DW_TAG_variable178	.byte	0                               # DW_CHILDREN_no179	.byte	3                               # DW_AT_name180	.byte	37                              # DW_FORM_strx1181	.byte	73                              # DW_AT_type182	.byte	16                              # DW_FORM_ref_addr183	.byte	63                              # DW_AT_external184	.byte	25                              # DW_FORM_flag_present185	.byte	58                              # DW_AT_decl_file186	.byte	11                              # DW_FORM_data1187	.byte	59                              # DW_AT_decl_line188	.byte	11                              # DW_FORM_data1189	.byte	2                               # DW_AT_location190	.byte	24                              # DW_FORM_exprloc191	.byte	110                             # DW_AT_linkage_name192	.byte	37                              # DW_FORM_strx1193	.byte	0                               # EOM(1)194	.byte	0                               # EOM(2)195	.byte	0                               # EOM(3)196	.section	.debug_info,"",@progbits197.Lcu_begin0:198	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit199.Ldebug_info_start0:200	.short	5                               # DWARF version number201	.byte	1                               # DWARF Unit Type202	.byte	8                               # Address Size (in bytes)203	.long	.debug_abbrev                   # Offset Into Abbrev. Section204	.byte	1                               # Abbrev [1] 0xc:0x22 DW_TAG_compile_unit205	.byte	0                               # DW_AT_producer206	.short	33                              # DW_AT_language207	.byte	1                               # DW_AT_name208	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base209	.long	.Lline_table_start0             # DW_AT_stmt_list210	.byte	2                               # DW_AT_comp_dir211	.long	.Laddr_table_base0              # DW_AT_addr_base212	.byte	2                               # Abbrev [2] 0x1e:0xb DW_TAG_variable213	.byte	3                               # DW_AT_name214	.long	41                              # DW_AT_type215                                        # DW_AT_external216	.byte	1                               # DW_AT_decl_file217	.byte	1                               # DW_AT_decl_line218	.byte	2                               # DW_AT_location219	.byte	161220	.byte	0221	.byte	3                               # Abbrev [3] 0x29:0x4 DW_TAG_base_type222	.byte	4                               # DW_AT_name223	.byte	5                               # DW_AT_encoding224	.byte	4                               # DW_AT_byte_size225	.byte	0                               # End Of Children Mark226.Ldebug_info_end0:227.Lcu_begin1:228	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit229.Ldebug_info_start1:230	.short	5                               # DWARF version number231	.byte	1                               # DWARF Unit Type232	.byte	8                               # Address Size (in bytes)233	.long	.debug_abbrev                   # Offset Into Abbrev. Section234	.byte	1                               # Abbrev [1] 0xc:0x1e DW_TAG_compile_unit235	.byte	0                               # DW_AT_producer236	.short	33                              # DW_AT_language237	.byte	5                               # DW_AT_name238	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base239	.long	.Lline_table_start0             # DW_AT_stmt_list240	.byte	2                               # DW_AT_comp_dir241	.long	.Laddr_table_base0              # DW_AT_addr_base242	.byte	4                               # Abbrev [4] 0x1e:0xb DW_TAG_variable243	.byte	6                               # DW_AT_name244	.long	.debug_info+41                  # DW_AT_type245                                        # DW_AT_external246	.byte	2                               # DW_AT_decl_file247	.byte	1                               # DW_AT_decl_line248	.byte	2                               # DW_AT_location249	.byte	161250	.byte	1251	.byte	0                               # End Of Children Mark252.Ldebug_info_end1:253.Lcu_begin2:254	.long	.Ldebug_info_end2-.Ldebug_info_start2 # Length of Unit255.Ldebug_info_start2:256	.short	5                               # DWARF version number257	.byte	1                               # DWARF Unit Type258	.byte	8                               # Address Size (in bytes)259	.long	.debug_abbrev                   # Offset Into Abbrev. Section260	.byte	1                               # Abbrev [1] 0xc:0x22 DW_TAG_compile_unit261	.byte	0                               # DW_AT_producer262	.short	33                              # DW_AT_language263	.byte	7                               # DW_AT_name264	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base265	.long	.Lline_table_start0             # DW_AT_stmt_list266	.byte	2                               # DW_AT_comp_dir267	.long	.Laddr_table_base0              # DW_AT_addr_base268	.byte	5                               # Abbrev [5] 0x1e:0xf DW_TAG_namespace269	.byte	8                               # DW_AT_name270	.byte	6                               # Abbrev [6] 0x20:0xc DW_TAG_variable271	.byte	9                               # DW_AT_name272	.long	.debug_info+41                  # DW_AT_type273                                        # DW_AT_external274	.byte	3                               # DW_AT_decl_file275	.byte	2                               # DW_AT_decl_line276	.byte	2                               # DW_AT_location277	.byte	161278	.byte	2279	.byte	10                              # DW_AT_linkage_name280	.byte	0                               # End Of Children Mark281	.byte	0                               # End Of Children Mark282.Ldebug_info_end2:283	.section	.debug_str_offsets,"",@progbits284	.long	48                              # Length of String Offsets Set285	.short	5286	.short	0287.Lstr_offsets_base0:288	.section	.debug_str,"MS",@progbits,1289.Linfo_string0:290	.byte	0                               # string offset=0291.Linfo_string1:292	.asciz	"b.cc"                          # string offset=1293.Linfo_string2:294	.asciz	"/proc/self/cwd"                # string offset=6295.Linfo_string3:296	.asciz	"vb"                            # string offset=21297.Linfo_string4:298	.asciz	"int"                           # string offset=24299.Linfo_string5:300	.asciz	"c.cc"                          # string offset=28301.Linfo_string6:302	.asciz	"vc"                            # string offset=33303.Linfo_string7:304	.asciz	"d.cc"                          # string offset=36305.Linfo_string8:306	.asciz	"ns"                            # string offset=41307.Linfo_string9:308	.asciz	"vd"                            # string offset=44309.Linfo_string10:310	.asciz	"_ZN2ns2vdE"                    # string offset=47311	.section	.debug_str_offsets,"",@progbits312	.long	.Linfo_string0313	.long	.Linfo_string1314	.long	.Linfo_string2315	.long	.Linfo_string3316	.long	.Linfo_string4317	.long	.Linfo_string5318	.long	.Linfo_string6319	.long	.Linfo_string7320	.long	.Linfo_string8321	.long	.Linfo_string9322	.long	.Linfo_string10323	.section	.debug_addr,"",@progbits324	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution325.Ldebug_addr_start0:326	.short	5                               # DWARF version number327	.byte	8                               # Address size328	.byte	0                               # Segment selector size329.Laddr_table_base0:330	.quad	vb331	.quad	vc332	.quad	_ZN2ns2vdE333.Ldebug_addr_end0:334	.section	.debug_names,"",@progbits335	.long	.Lnames_end0-.Lnames_start0     # Header: unit length336.Lnames_start0:337	.short	5                               # Header: version338	.short	0                               # Header: padding339	.long	3                               # Header: compilation unit count340	.long	0                               # Header: local type unit count341	.long	0                               # Header: foreign type unit count342	.long	6                               # Header: bucket count343	.long	6                               # Header: name count344	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size345	.long	8                               # Header: augmentation string size346	.ascii	"LLVM0700"                      # Header: augmentation string347	.long	.Lcu_begin0                     # Compilation unit 0348	.long	.Lcu_begin1                     # Compilation unit 1349	.long	.Lcu_begin2                     # Compilation unit 2350	.long	1                               # Bucket 0351	.long	2                               # Bucket 1352	.long	3                               # Bucket 2353	.long	0                               # Bucket 3354	.long	4                               # Bucket 4355	.long	6                               # Bucket 5356	.long	5863902                         # Hash in Bucket 0357	.long	5863903                         # Hash in Bucket 1358	.long	193495088                       # Hash in Bucket 2359	.long	5863654                         # Hash in Bucket 4360	.long	-823734096                      # Hash in Bucket 4361	.long	5863901                         # Hash in Bucket 5362	.long	.Linfo_string6                  # String in Bucket 0: vc363	.long	.Linfo_string9                  # String in Bucket 1: vd364	.long	.Linfo_string4                  # String in Bucket 2: int365	.long	.Linfo_string8                  # String in Bucket 4: ns366	.long	.Linfo_string10                 # String in Bucket 4: _ZN2ns2vdE367	.long	.Linfo_string3                  # String in Bucket 5: vb368	.long	.Lnames2-.Lnames_entries0       # Offset in Bucket 0369	.long	.Lnames4-.Lnames_entries0       # Offset in Bucket 1370	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 2371	.long	.Lnames3-.Lnames_entries0       # Offset in Bucket 4372	.long	.Lnames5-.Lnames_entries0       # Offset in Bucket 4373	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 5374.Lnames_abbrev_start0:375	.byte	1                               # Abbrev code376	.byte	52                              # DW_TAG_variable377	.byte	1                               # DW_IDX_compile_unit378	.byte	11                              # DW_FORM_data1379	.byte	3                               # DW_IDX_die_offset380	.byte	19                              # DW_FORM_ref4381	.byte	4                               # DW_IDX_parent382	.byte	25                              # DW_FORM_flag_present383	.byte	0                               # End of abbrev384	.byte	0                               # End of abbrev385	.byte	2                               # Abbrev code386	.byte	52                              # DW_TAG_variable387	.byte	1                               # DW_IDX_compile_unit388	.byte	11                              # DW_FORM_data1389	.byte	3                               # DW_IDX_die_offset390	.byte	19                              # DW_FORM_ref4391	.byte	4                               # DW_IDX_parent392	.byte	19                              # DW_FORM_ref4393	.byte	0                               # End of abbrev394	.byte	0                               # End of abbrev395	.byte	3                               # Abbrev code396	.byte	36                              # DW_TAG_base_type397	.byte	1                               # DW_IDX_compile_unit398	.byte	11                              # DW_FORM_data1399	.byte	3                               # DW_IDX_die_offset400	.byte	19                              # DW_FORM_ref4401	.byte	4                               # DW_IDX_parent402	.byte	25                              # DW_FORM_flag_present403	.byte	0                               # End of abbrev404	.byte	0                               # End of abbrev405	.byte	4                               # Abbrev code406	.byte	57                              # DW_TAG_namespace407	.byte	1                               # DW_IDX_compile_unit408	.byte	11                              # DW_FORM_data1409	.byte	3                               # DW_IDX_die_offset410	.byte	19                              # DW_FORM_ref4411	.byte	4                               # DW_IDX_parent412	.byte	25                              # DW_FORM_flag_present413	.byte	0                               # End of abbrev414	.byte	0                               # End of abbrev415	.byte	0                               # End of abbrev list416.Lnames_abbrev_end0:417.Lnames_entries0:418.Lnames2:419.L0:420	.byte	1                               # Abbreviation code421	.byte	1                               # DW_IDX_compile_unit422	.long	30                              # DW_IDX_die_offset423	.byte	0                               # DW_IDX_parent424                                        # End of list: vc425.Lnames4:426.L4:427	.byte	2                               # Abbreviation code428	.byte	2                               # DW_IDX_compile_unit429	.long	32                              # DW_IDX_die_offset430	.long	.L2-.Lnames_entries0            # DW_IDX_parent431	.byte	0                               # End of list: vd432.Lnames0:433.L3:434	.byte	3                               # Abbreviation code435	.byte	0                               # DW_IDX_compile_unit436	.long	41                              # DW_IDX_die_offset437	.byte	0                               # DW_IDX_parent438                                        # End of list: int439.Lnames3:440.L2:441	.byte	4                               # Abbreviation code442	.byte	2                               # DW_IDX_compile_unit443	.long	30                              # DW_IDX_die_offset444	.byte	0                               # DW_IDX_parent445                                        # End of list: ns446.Lnames5:447	.byte	2                               # Abbreviation code448	.byte	2                               # DW_IDX_compile_unit449	.long	32                              # DW_IDX_die_offset450	.long	.L2-.Lnames_entries0            # DW_IDX_parent451	.byte	0                               # End of list: _ZN2ns2vdE452.Lnames1:453.L1:454	.byte	1                               # Abbreviation code455	.byte	0                               # DW_IDX_compile_unit456	.long	30                              # DW_IDX_die_offset457	.byte	0                               # DW_IDX_parent458                                        # End of list: vb459	.p2align	2, 0x0460.Lnames_end0:461	.section	".note.GNU-stack","",@progbits462	.addrsig463	.addrsig_sym vb464	.addrsig_sym vc465	.addrsig_sym _ZN2ns2vdE466	.section	.debug_line,"",@progbits467.Lline_table_start0:468#--- ef.s469	.text470	.file	"ld-temp.o"471	.file	1 "/proc/self/cwd" "e.cc" md5 0xa8d6c645998197bd15436f2a351ebd6a472	.file	2 "/proc/self/cwd" "f.cc" md5 0x6ec1ec6b7f003f84cb0bf3409e65b085473	.type	ve,@object                      # @ve474	.section	.bss.ve,"aw",@nobits475	.globl	ve476	.p2align	2, 0x0477ve:478	.long	0                               # 0x0479	.size	ve, 4480 481	.type	_ZN2ns2vfE,@object              # @_ZN2ns2vfE482	.section	.bss._ZN2ns2vfE,"aw",@nobits483	.globl	_ZN2ns2vfE484	.p2align	2, 0x0485_ZN2ns2vfE:486	.long	0                               # 0x0487	.size	_ZN2ns2vfE, 4488 489	.section	.debug_abbrev,"",@progbits490	.byte	1                               # Abbreviation Code491	.byte	17                              # DW_TAG_compile_unit492	.byte	1                               # DW_CHILDREN_yes493	.byte	37                              # DW_AT_producer494	.byte	37                              # DW_FORM_strx1495	.byte	19                              # DW_AT_language496	.byte	5                               # DW_FORM_data2497	.byte	3                               # DW_AT_name498	.byte	37                              # DW_FORM_strx1499	.byte	114                             # DW_AT_str_offsets_base500	.byte	23                              # DW_FORM_sec_offset501	.byte	16                              # DW_AT_stmt_list502	.byte	23                              # DW_FORM_sec_offset503	.byte	27                              # DW_AT_comp_dir504	.byte	37                              # DW_FORM_strx1505	.byte	115                             # DW_AT_addr_base506	.byte	23                              # DW_FORM_sec_offset507	.byte	0                               # EOM(1)508	.byte	0                               # EOM(2)509	.byte	2                               # Abbreviation Code510	.byte	52                              # DW_TAG_variable511	.byte	0                               # DW_CHILDREN_no512	.byte	3                               # DW_AT_name513	.byte	37                              # DW_FORM_strx1514	.byte	73                              # DW_AT_type515	.byte	19                              # DW_FORM_ref4516	.byte	63                              # DW_AT_external517	.byte	25                              # DW_FORM_flag_present518	.byte	58                              # DW_AT_decl_file519	.byte	11                              # DW_FORM_data1520	.byte	59                              # DW_AT_decl_line521	.byte	11                              # DW_FORM_data1522	.byte	2                               # DW_AT_location523	.byte	24                              # DW_FORM_exprloc524	.byte	0                               # EOM(1)525	.byte	0                               # EOM(2)526	.byte	3                               # Abbreviation Code527	.byte	36                              # DW_TAG_base_type528	.byte	0                               # DW_CHILDREN_no529	.byte	3                               # DW_AT_name530	.byte	37                              # DW_FORM_strx1531	.byte	62                              # DW_AT_encoding532	.byte	11                              # DW_FORM_data1533	.byte	11                              # DW_AT_byte_size534	.byte	11                              # DW_FORM_data1535	.byte	0                               # EOM(1)536	.byte	0                               # EOM(2)537	.byte	4                               # Abbreviation Code538	.byte	57                              # DW_TAG_namespace539	.byte	1                               # DW_CHILDREN_yes540	.byte	3                               # DW_AT_name541	.byte	37                              # DW_FORM_strx1542	.byte	0                               # EOM(1)543	.byte	0                               # EOM(2)544	.byte	5                               # Abbreviation Code545	.byte	52                              # DW_TAG_variable546	.byte	0                               # DW_CHILDREN_no547	.byte	3                               # DW_AT_name548	.byte	37                              # DW_FORM_strx1549	.byte	73                              # DW_AT_type550	.byte	16                              # DW_FORM_ref_addr551	.byte	63                              # DW_AT_external552	.byte	25                              # DW_FORM_flag_present553	.byte	58                              # DW_AT_decl_file554	.byte	11                              # DW_FORM_data1555	.byte	59                              # DW_AT_decl_line556	.byte	11                              # DW_FORM_data1557	.byte	2                               # DW_AT_location558	.byte	24                              # DW_FORM_exprloc559	.byte	110                             # DW_AT_linkage_name560	.byte	37                              # DW_FORM_strx1561	.byte	0                               # EOM(1)562	.byte	0                               # EOM(2)563	.byte	0                               # EOM(3)564	.section	.debug_info,"",@progbits565.Lcu_begin0:566	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit567.Ldebug_info_start0:568	.short	5                               # DWARF version number569	.byte	1                               # DWARF Unit Type570	.byte	8                               # Address Size (in bytes)571	.long	.debug_abbrev                   # Offset Into Abbrev. Section572	.byte	1                               # Abbrev [1] 0xc:0x22 DW_TAG_compile_unit573	.byte	0                               # DW_AT_producer574	.short	33                              # DW_AT_language575	.byte	1                               # DW_AT_name576	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base577	.long	.Lline_table_start0             # DW_AT_stmt_list578	.byte	2                               # DW_AT_comp_dir579	.long	.Laddr_table_base0              # DW_AT_addr_base580	.byte	2                               # Abbrev [2] 0x1e:0xb DW_TAG_variable581	.byte	3                               # DW_AT_name582	.long	41                              # DW_AT_type583                                        # DW_AT_external584	.byte	1                               # DW_AT_decl_file585	.byte	1                               # DW_AT_decl_line586	.byte	2                               # DW_AT_location587	.byte	161588	.byte	0589	.byte	3                               # Abbrev [3] 0x29:0x4 DW_TAG_base_type590	.byte	4                               # DW_AT_name591	.byte	5                               # DW_AT_encoding592	.byte	4                               # DW_AT_byte_size593	.byte	0                               # End Of Children Mark594.Ldebug_info_end0:595.Lcu_begin1:596	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit597.Ldebug_info_start1:598	.short	5                               # DWARF version number599	.byte	1                               # DWARF Unit Type600	.byte	8                               # Address Size (in bytes)601	.long	.debug_abbrev                   # Offset Into Abbrev. Section602	.byte	1                               # Abbrev [1] 0xc:0x22 DW_TAG_compile_unit603	.byte	0                               # DW_AT_producer604	.short	33                              # DW_AT_language605	.byte	5                               # DW_AT_name606	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base607	.long	.Lline_table_start0             # DW_AT_stmt_list608	.byte	2                               # DW_AT_comp_dir609	.long	.Laddr_table_base0              # DW_AT_addr_base610	.byte	4                               # Abbrev [4] 0x1e:0xf DW_TAG_namespace611	.byte	6                               # DW_AT_name612	.byte	5                               # Abbrev [5] 0x20:0xc DW_TAG_variable613	.byte	7                               # DW_AT_name614	.long	.debug_info+41                  # DW_AT_type615                                        # DW_AT_external616	.byte	2                               # DW_AT_decl_file617	.byte	2                               # DW_AT_decl_line618	.byte	2                               # DW_AT_location619	.byte	161620	.byte	1621	.byte	8                               # DW_AT_linkage_name622	.byte	0                               # End Of Children Mark623	.byte	0                               # End Of Children Mark624.Ldebug_info_end1:625	.section	.debug_str_offsets,"",@progbits626	.long	40                              # Length of String Offsets Set627	.short	5628	.short	0629.Lstr_offsets_base0:630	.section	.debug_str,"MS",@progbits,1631.Linfo_string0:632	.byte	0                               # string offset=0633.Linfo_string1:634	.asciz	"e.cc"                          # string offset=1635.Linfo_string2:636	.asciz	"/proc/self/cwd"                # string offset=6637.Linfo_string3:638	.asciz	"ve"                            # string offset=21639.Linfo_string4:640	.asciz	"int"                           # string offset=24641.Linfo_string5:642	.asciz	"f.cc"                          # string offset=28643.Linfo_string6:644	.asciz	"ns"                            # string offset=33645.Linfo_string7:646	.asciz	"vf"                            # string offset=36647.Linfo_string8:648	.asciz	"_ZN2ns2vfE"                    # string offset=39649	.section	.debug_str_offsets,"",@progbits650	.long	.Linfo_string0651	.long	.Linfo_string1652	.long	.Linfo_string2653	.long	.Linfo_string3654	.long	.Linfo_string4655	.long	.Linfo_string5656	.long	.Linfo_string6657	.long	.Linfo_string7658	.long	.Linfo_string8659	.section	.debug_addr,"",@progbits660	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution661.Ldebug_addr_start0:662	.short	5                               # DWARF version number663	.byte	8                               # Address size664	.byte	0                               # Segment selector size665.Laddr_table_base0:666	.quad	ve667	.quad	_ZN2ns2vfE668.Ldebug_addr_end0:669	.section	.debug_names,"",@progbits670	.long	.Lnames_end0-.Lnames_start0     # Header: unit length671.Lnames_start0:672	.short	5                               # Header: version673	.short	0                               # Header: padding674	.long	2                               # Header: compilation unit count675	.long	0                               # Header: local type unit count676	.long	0                               # Header: foreign type unit count677	.long	5                               # Header: bucket count678	.long	5                               # Header: name count679	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size680	.long	8                               # Header: augmentation string size681	.ascii	"LLVM0700"                      # Header: augmentation string682	.long	.Lcu_begin0                     # Compilation unit 0683	.long	.Lcu_begin1                     # Compilation unit 1684	.long	1                               # Bucket 0685	.long	2                               # Bucket 1686	.long	0                               # Bucket 2687	.long	3                               # Bucket 3688	.long	4                               # Bucket 4689	.long	5863905                         # Hash in Bucket 0690	.long	-823734030                      # Hash in Bucket 1691	.long	193495088                       # Hash in Bucket 3692	.long	5863654                         # Hash in Bucket 4693	.long	5863904                         # Hash in Bucket 4694	.long	.Linfo_string7                  # String in Bucket 0: vf695	.long	.Linfo_string8                  # String in Bucket 1: _ZN2ns2vfE696	.long	.Linfo_string4                  # String in Bucket 3: int697	.long	.Linfo_string6                  # String in Bucket 4: ns698	.long	.Linfo_string3                  # String in Bucket 4: ve699	.long	.Lnames3-.Lnames_entries0       # Offset in Bucket 0700	.long	.Lnames4-.Lnames_entries0       # Offset in Bucket 1701	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 3702	.long	.Lnames2-.Lnames_entries0       # Offset in Bucket 4703	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 4704.Lnames_abbrev_start0:705	.byte	1                               # Abbrev code706	.byte	52                              # DW_TAG_variable707	.byte	1                               # DW_IDX_compile_unit708	.byte	11                              # DW_FORM_data1709	.byte	3                               # DW_IDX_die_offset710	.byte	19                              # DW_FORM_ref4711	.byte	4                               # DW_IDX_parent712	.byte	19                              # DW_FORM_ref4713	.byte	0                               # End of abbrev714	.byte	0                               # End of abbrev715	.byte	2                               # Abbrev code716	.byte	36                              # DW_TAG_base_type717	.byte	1                               # DW_IDX_compile_unit718	.byte	11                              # DW_FORM_data1719	.byte	3                               # DW_IDX_die_offset720	.byte	19                              # DW_FORM_ref4721	.byte	4                               # DW_IDX_parent722	.byte	25                              # DW_FORM_flag_present723	.byte	0                               # End of abbrev724	.byte	0                               # End of abbrev725	.byte	3                               # Abbrev code726	.byte	57                              # DW_TAG_namespace727	.byte	1                               # DW_IDX_compile_unit728	.byte	11                              # DW_FORM_data1729	.byte	3                               # DW_IDX_die_offset730	.byte	19                              # DW_FORM_ref4731	.byte	4                               # DW_IDX_parent732	.byte	25                              # DW_FORM_flag_present733	.byte	0                               # End of abbrev734	.byte	0                               # End of abbrev735	.byte	4                               # Abbrev code736	.byte	52                              # DW_TAG_variable737	.byte	1                               # DW_IDX_compile_unit738	.byte	11                              # DW_FORM_data1739	.byte	3                               # DW_IDX_die_offset740	.byte	19                              # DW_FORM_ref4741	.byte	4                               # DW_IDX_parent742	.byte	25                              # DW_FORM_flag_present743	.byte	0                               # End of abbrev744	.byte	0                               # End of abbrev745	.byte	0                               # End of abbrev list746.Lnames_abbrev_end0:747.Lnames_entries0:748.Lnames3:749.L2:750	.byte	1                               # Abbreviation code751	.byte	1                               # DW_IDX_compile_unit752	.long	32                              # DW_IDX_die_offset753	.long	.L0-.Lnames_entries0            # DW_IDX_parent754	.byte	0                               # End of list: vf755.Lnames4:756	.byte	1                               # Abbreviation code757	.byte	1                               # DW_IDX_compile_unit758	.long	32                              # DW_IDX_die_offset759	.long	.L0-.Lnames_entries0            # DW_IDX_parent760	.byte	0                               # End of list: _ZN2ns2vfE761.Lnames0:762.L3:763	.byte	2                               # Abbreviation code764	.byte	0                               # DW_IDX_compile_unit765	.long	41                              # DW_IDX_die_offset766	.byte	0                               # DW_IDX_parent767                                        # End of list: int768.Lnames2:769.L0:770	.byte	3                               # Abbreviation code771	.byte	1                               # DW_IDX_compile_unit772	.long	30                              # DW_IDX_die_offset773	.byte	0                               # DW_IDX_parent774                                        # End of list: ns775.Lnames1:776.L1:777	.byte	4                               # Abbreviation code778	.byte	0                               # DW_IDX_compile_unit779	.long	30                              # DW_IDX_die_offset780	.byte	0                               # DW_IDX_parent781                                        # End of list: ve782	.p2align	2, 0x0783.Lnames_end0:784	.section	".note.GNU-stack","",@progbits785	.addrsig786	.addrsig_sym ve787	.addrsig_sym _ZN2ns2vfE788	.section	.debug_line,"",@progbits789.Lline_table_start0:790