brintos

brintos / llvm-project-archived public Read only

0
0
Text · 32.3 KiB · 6eb2852 Raw
672 lines · plain
1# REQUIRES: system-linux2 3# RUN: llvm-mc -dwarf-version=5 -filetype=obj -triple x86_64-unknown-linux %s -o %t1.o4# RUN: %clang %cflags -dwarf-5 %t1.o -o %t.exe -Wl,-q5# RUN: llvm-bolt %t.exe -o %t.bolt --update-debug-sections6# RUN: llvm-dwarfdump --show-form --verbose --debug-info %t.bolt > %t.txt7# RUN: llvm-dwarfdump --show-form --verbose --debug-names %t.bolt >> %t.txt8# RUN: cat %t.txt | FileCheck --check-prefix=POSTCHECK %s9 10## This tests that BOLT doesn't generate entry for a DW_TAG_structure_type declaration with DW_AT_name.11 12# POSTCHECK:       DW_TAG_type_unit13# POSTCHECK:       DW_TAG_structure_type [7]14# POSTCHECK-NEXT:    DW_AT_name [DW_FORM_strx1]  (indexed (00000006) string = "InnerState")15# POSTCHECK-NEXT:    DW_AT_declaration [DW_FORM_flag_present]  (true)16# POSTCHECK: Name Index17# POSTCHECK-NOT: "InnerState"18 19## -g2 -O0 -fdebug-types-section -gpubnames20## namespace A {21##   namespace B {22##     class State {23##       public:24##       struct InnerState{25##         InnerState() {}26##       };27##       State(){}28##       State(InnerState S){}29##     };30##   }31## }32##33## int main() {34##   A::B::State S;35##   return 0;36## }37 38 39	.text40	.file	"main.cpp"41	.file	0 "/DW_TAG_structure_type" "main.cpp" md5 0xd43ba503b70d00353c195087e1fe16e242	.section	.debug_info,"G",@progbits,16664150534606561860,comdat43.Ltu_begin0:44	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit45.Ldebug_info_start0:46	.short	5                               # DWARF version number47	.byte	2                               # DWARF Unit Type48	.byte	8                               # Address Size (in bytes)49	.long	.debug_abbrev                   # Offset Into Abbrev. Section50	.quad	-1782593539102989756            # Type Signature51	.long	39                              # Type DIE Offset52	.byte	1                               # Abbrev [1] 0x18:0x3b DW_TAG_type_unit53	.short	33                              # DW_AT_language54	.long	.Lline_table_start0             # DW_AT_stmt_list55	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base56	.byte	2                               # Abbrev [2] 0x23:0x2a DW_TAG_namespace57	.byte	3                               # DW_AT_name58	.byte	2                               # Abbrev [2] 0x25:0x27 DW_TAG_namespace59	.byte	4                               # DW_AT_name60	.byte	3                               # Abbrev [3] 0x27:0x24 DW_TAG_class_type61	.byte	5                               # DW_AT_calling_convention62	.byte	5                               # DW_AT_name63	.byte	1                               # DW_AT_byte_size64	.byte	0                               # DW_AT_decl_file65	.byte	3                               # DW_AT_decl_line66	.byte	4                               # Abbrev [4] 0x2d:0xb DW_TAG_subprogram67	.byte	5                               # DW_AT_name68	.byte	0                               # DW_AT_decl_file69	.byte	8                               # DW_AT_decl_line70                                        # DW_AT_declaration71                                        # DW_AT_external72	.byte	1                               # DW_AT_accessibility73                                        # DW_ACCESS_public74	.byte	5                               # Abbrev [5] 0x32:0x5 DW_TAG_formal_parameter75	.long	77                              # DW_AT_type76                                        # DW_AT_artificial77	.byte	0                               # End Of Children Mark78	.byte	4                               # Abbrev [4] 0x38:0x10 DW_TAG_subprogram79	.byte	5                               # DW_AT_name80	.byte	0                               # DW_AT_decl_file81	.byte	9                               # DW_AT_decl_line82                                        # DW_AT_declaration83                                        # DW_AT_external84	.byte	1                               # DW_AT_accessibility85                                        # DW_ACCESS_public86	.byte	5                               # Abbrev [5] 0x3d:0x5 DW_TAG_formal_parameter87	.long	77                              # DW_AT_type88                                        # DW_AT_artificial89	.byte	6                               # Abbrev [6] 0x42:0x5 DW_TAG_formal_parameter90	.long	72                              # DW_AT_type91	.byte	0                               # End Of Children Mark92	.byte	7                               # Abbrev [7] 0x48:0x2 DW_TAG_structure_type93	.byte	6                               # DW_AT_name94                                        # DW_AT_declaration95	.byte	0                               # End Of Children Mark96	.byte	0                               # End Of Children Mark97	.byte	0                               # End Of Children Mark98	.byte	8                               # Abbrev [8] 0x4d:0x5 DW_TAG_pointer_type99	.long	39                              # DW_AT_type100	.byte	0                               # End Of Children Mark101.Ldebug_info_end0:102	.text103	.globl	main                            # -- Begin function main104	.p2align	4, 0x90105	.type	main,@function106main:                                   # @main107.Lfunc_begin0:108	.loc	0 14 0                          # main.cpp:14:0109	.cfi_startproc110# %bb.0:                                # %entry111	pushq	%rbp112	.cfi_def_cfa_offset 16113	.cfi_offset %rbp, -16114	movq	%rsp, %rbp115	.cfi_def_cfa_register %rbp116	subq	$16, %rsp117	movl	$0, -4(%rbp)118.Ltmp0:119	.loc	0 15 15 prologue_end            # main.cpp:15:15120	leaq	-5(%rbp), %rdi121	callq	_ZN1A1B5StateC2Ev122	.loc	0 16 3                          # main.cpp:16:3123	xorl	%eax, %eax124	.loc	0 16 3 epilogue_begin is_stmt 0 # main.cpp:16:3125	addq	$16, %rsp126	popq	%rbp127	.cfi_def_cfa %rsp, 8128	retq129.Ltmp1:130.Lfunc_end0:131	.size	main, .Lfunc_end0-main132	.cfi_endproc133                                        # -- End function134	.section	.text._ZN1A1B5StateC2Ev,"axG",@progbits,_ZN1A1B5StateC2Ev,comdat135	.weak	_ZN1A1B5StateC2Ev               # -- Begin function _ZN1A1B5StateC2Ev136	.p2align	4, 0x90137	.type	_ZN1A1B5StateC2Ev,@function138_ZN1A1B5StateC2Ev:                      # @_ZN1A1B5StateC2Ev139.Lfunc_begin1:140	.loc	0 8 0 is_stmt 1                 # main.cpp:8:0141	.cfi_startproc142# %bb.0:                                # %entry143	pushq	%rbp144	.cfi_def_cfa_offset 16145	.cfi_offset %rbp, -16146	movq	%rsp, %rbp147	.cfi_def_cfa_register %rbp148	movq	%rdi, -8(%rbp)149.Ltmp2:150	.loc	0 8 15 prologue_end epilogue_begin # main.cpp:8:15151	popq	%rbp152	.cfi_def_cfa %rsp, 8153	retq154.Ltmp3:155.Lfunc_end1:156	.size	_ZN1A1B5StateC2Ev, .Lfunc_end1-_ZN1A1B5StateC2Ev157	.cfi_endproc158                                        # -- End function159	.section	.debug_abbrev,"",@progbits160	.byte	1                               # Abbreviation Code161	.byte	65                              # DW_TAG_type_unit162	.byte	1                               # DW_CHILDREN_yes163	.byte	19                              # DW_AT_language164	.byte	5                               # DW_FORM_data2165	.byte	16                              # DW_AT_stmt_list166	.byte	23                              # DW_FORM_sec_offset167	.byte	114                             # DW_AT_str_offsets_base168	.byte	23                              # DW_FORM_sec_offset169	.byte	0                               # EOM(1)170	.byte	0                               # EOM(2)171	.byte	2                               # Abbreviation Code172	.byte	57                              # DW_TAG_namespace173	.byte	1                               # DW_CHILDREN_yes174	.byte	3                               # DW_AT_name175	.byte	37                              # DW_FORM_strx1176	.byte	0                               # EOM(1)177	.byte	0                               # EOM(2)178	.byte	3                               # Abbreviation Code179	.byte	2                               # DW_TAG_class_type180	.byte	1                               # DW_CHILDREN_yes181	.byte	54                              # DW_AT_calling_convention182	.byte	11                              # DW_FORM_data1183	.byte	3                               # DW_AT_name184	.byte	37                              # DW_FORM_strx1185	.byte	11                              # DW_AT_byte_size186	.byte	11                              # DW_FORM_data1187	.byte	58                              # DW_AT_decl_file188	.byte	11                              # DW_FORM_data1189	.byte	59                              # DW_AT_decl_line190	.byte	11                              # DW_FORM_data1191	.byte	0                               # EOM(1)192	.byte	0                               # EOM(2)193	.byte	4                               # Abbreviation Code194	.byte	46                              # DW_TAG_subprogram195	.byte	1                               # DW_CHILDREN_yes196	.byte	3                               # DW_AT_name197	.byte	37                              # DW_FORM_strx1198	.byte	58                              # DW_AT_decl_file199	.byte	11                              # DW_FORM_data1200	.byte	59                              # DW_AT_decl_line201	.byte	11                              # DW_FORM_data1202	.byte	60                              # DW_AT_declaration203	.byte	25                              # DW_FORM_flag_present204	.byte	63                              # DW_AT_external205	.byte	25                              # DW_FORM_flag_present206	.byte	50                              # DW_AT_accessibility207	.byte	11                              # DW_FORM_data1208	.byte	0                               # EOM(1)209	.byte	0                               # EOM(2)210	.byte	5                               # Abbreviation Code211	.byte	5                               # DW_TAG_formal_parameter212	.byte	0                               # DW_CHILDREN_no213	.byte	73                              # DW_AT_type214	.byte	19                              # DW_FORM_ref4215	.byte	52                              # DW_AT_artificial216	.byte	25                              # DW_FORM_flag_present217	.byte	0                               # EOM(1)218	.byte	0                               # EOM(2)219	.byte	6                               # Abbreviation Code220	.byte	5                               # DW_TAG_formal_parameter221	.byte	0                               # DW_CHILDREN_no222	.byte	73                              # DW_AT_type223	.byte	19                              # DW_FORM_ref4224	.byte	0                               # EOM(1)225	.byte	0                               # EOM(2)226	.byte	7                               # Abbreviation Code227	.byte	19                              # DW_TAG_structure_type228	.byte	0                               # DW_CHILDREN_no229	.byte	3                               # DW_AT_name230	.byte	37                              # DW_FORM_strx1231	.byte	60                              # DW_AT_declaration232	.byte	25                              # DW_FORM_flag_present233	.byte	0                               # EOM(1)234	.byte	0                               # EOM(2)235	.byte	8                               # Abbreviation Code236	.byte	15                              # DW_TAG_pointer_type237	.byte	0                               # DW_CHILDREN_no238	.byte	73                              # DW_AT_type239	.byte	19                              # DW_FORM_ref4240	.byte	0                               # EOM(1)241	.byte	0                               # EOM(2)242	.byte	9                               # Abbreviation Code243	.byte	17                              # DW_TAG_compile_unit244	.byte	1                               # DW_CHILDREN_yes245	.byte	37                              # DW_AT_producer246	.byte	37                              # DW_FORM_strx1247	.byte	19                              # DW_AT_language248	.byte	5                               # DW_FORM_data2249	.byte	3                               # DW_AT_name250	.byte	37                              # DW_FORM_strx1251	.byte	114                             # DW_AT_str_offsets_base252	.byte	23                              # DW_FORM_sec_offset253	.byte	16                              # DW_AT_stmt_list254	.byte	23                              # DW_FORM_sec_offset255	.byte	27                              # DW_AT_comp_dir256	.byte	37                              # DW_FORM_strx1257	.byte	17                              # DW_AT_low_pc258	.byte	1                               # DW_FORM_addr259	.byte	85                              # DW_AT_ranges260	.byte	35                              # DW_FORM_rnglistx261	.byte	115                             # DW_AT_addr_base262	.byte	23                              # DW_FORM_sec_offset263	.byte	116                             # DW_AT_rnglists_base264	.byte	23                              # DW_FORM_sec_offset265	.byte	0                               # EOM(1)266	.byte	0                               # EOM(2)267	.byte	10                              # Abbreviation Code268	.byte	2                               # DW_TAG_class_type269	.byte	1                               # DW_CHILDREN_yes270	.byte	60                              # DW_AT_declaration271	.byte	25                              # DW_FORM_flag_present272	.byte	105                             # DW_AT_signature273	.byte	32                              # DW_FORM_ref_sig8274	.byte	0                               # EOM(1)275	.byte	0                               # EOM(2)276	.byte	11                              # Abbreviation Code277	.byte	46                              # DW_TAG_subprogram278	.byte	1                               # DW_CHILDREN_yes279	.byte	17                              # DW_AT_low_pc280	.byte	27                              # DW_FORM_addrx281	.byte	18                              # DW_AT_high_pc282	.byte	6                               # DW_FORM_data4283	.byte	64                              # DW_AT_frame_base284	.byte	24                              # DW_FORM_exprloc285	.byte	3                               # DW_AT_name286	.byte	37                              # DW_FORM_strx1287	.byte	58                              # DW_AT_decl_file288	.byte	11                              # DW_FORM_data1289	.byte	59                              # DW_AT_decl_line290	.byte	11                              # DW_FORM_data1291	.byte	73                              # DW_AT_type292	.byte	19                              # DW_FORM_ref4293	.byte	63                              # DW_AT_external294	.byte	25                              # DW_FORM_flag_present295	.byte	0                               # EOM(1)296	.byte	0                               # EOM(2)297	.byte	12                              # Abbreviation Code298	.byte	52                              # DW_TAG_variable299	.byte	0                               # DW_CHILDREN_no300	.byte	2                               # DW_AT_location301	.byte	24                              # DW_FORM_exprloc302	.byte	3                               # DW_AT_name303	.byte	37                              # DW_FORM_strx1304	.byte	58                              # DW_AT_decl_file305	.byte	11                              # DW_FORM_data1306	.byte	59                              # DW_AT_decl_line307	.byte	11                              # DW_FORM_data1308	.byte	73                              # DW_AT_type309	.byte	19                              # DW_FORM_ref4310	.byte	0                               # EOM(1)311	.byte	0                               # EOM(2)312	.byte	13                              # Abbreviation Code313	.byte	46                              # DW_TAG_subprogram314	.byte	1                               # DW_CHILDREN_yes315	.byte	17                              # DW_AT_low_pc316	.byte	27                              # DW_FORM_addrx317	.byte	18                              # DW_AT_high_pc318	.byte	6                               # DW_FORM_data4319	.byte	64                              # DW_AT_frame_base320	.byte	24                              # DW_FORM_exprloc321	.byte	100                             # DW_AT_object_pointer322	.byte	19                              # DW_FORM_ref4323	.byte	110                             # DW_AT_linkage_name324	.byte	37                              # DW_FORM_strx1325	.byte	71                              # DW_AT_specification326	.byte	19                              # DW_FORM_ref4327	.byte	0                               # EOM(1)328	.byte	0                               # EOM(2)329	.byte	14                              # Abbreviation Code330	.byte	5                               # DW_TAG_formal_parameter331	.byte	0                               # DW_CHILDREN_no332	.byte	2                               # DW_AT_location333	.byte	24                              # DW_FORM_exprloc334	.byte	3                               # DW_AT_name335	.byte	37                              # DW_FORM_strx1336	.byte	73                              # DW_AT_type337	.byte	19                              # DW_FORM_ref4338	.byte	52                              # DW_AT_artificial339	.byte	25                              # DW_FORM_flag_present340	.byte	0                               # EOM(1)341	.byte	0                               # EOM(2)342	.byte	15                              # Abbreviation Code343	.byte	36                              # DW_TAG_base_type344	.byte	0                               # DW_CHILDREN_no345	.byte	3                               # DW_AT_name346	.byte	37                              # DW_FORM_strx1347	.byte	62                              # DW_AT_encoding348	.byte	11                              # DW_FORM_data1349	.byte	11                              # DW_AT_byte_size350	.byte	11                              # DW_FORM_data1351	.byte	0                               # EOM(1)352	.byte	0                               # EOM(2)353	.byte	0                               # EOM(3)354	.section	.debug_info,"",@progbits355.Lcu_begin0:356	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit357.Ldebug_info_start1:358	.short	5                               # DWARF version number359	.byte	1                               # DWARF Unit Type360	.byte	8                               # Address Size (in bytes)361	.long	.debug_abbrev                   # Offset Into Abbrev. Section362	.byte	9                               # Abbrev [9] 0xc:0x7f DW_TAG_compile_unit363	.byte	0                               # DW_AT_producer364	.short	33                              # DW_AT_language365	.byte	1                               # DW_AT_name366	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base367	.long	.Lline_table_start0             # DW_AT_stmt_list368	.byte	2                               # DW_AT_comp_dir369	.quad	0                               # DW_AT_low_pc370	.byte	0                               # DW_AT_ranges371	.long	.Laddr_table_base0              # DW_AT_addr_base372	.long	.Lrnglists_table_base0          # DW_AT_rnglists_base373	.byte	2                               # Abbrev [2] 0x2b:0x1b DW_TAG_namespace374	.byte	3                               # DW_AT_name375	.byte	2                               # Abbrev [2] 0x2d:0x18 DW_TAG_namespace376	.byte	4                               # DW_AT_name377	.byte	10                              # Abbrev [10] 0x2f:0x15 DW_TAG_class_type378                                        # DW_AT_declaration379	.quad	-1782593539102989756            # DW_AT_signature380	.byte	4                               # Abbrev [4] 0x38:0xb DW_TAG_subprogram381	.byte	5                               # DW_AT_name382	.byte	0                               # DW_AT_decl_file383	.byte	8                               # DW_AT_decl_line384                                        # DW_AT_declaration385                                        # DW_AT_external386	.byte	1                               # DW_AT_accessibility387                                        # DW_ACCESS_public388	.byte	5                               # Abbrev [5] 0x3d:0x5 DW_TAG_formal_parameter389	.long	97                              # DW_AT_type390                                        # DW_AT_artificial391	.byte	0                               # End Of Children Mark392	.byte	0                               # End Of Children Mark393	.byte	0                               # End Of Children Mark394	.byte	0                               # End Of Children Mark395	.byte	11                              # Abbrev [11] 0x46:0x1b DW_TAG_subprogram396	.byte	0                               # DW_AT_low_pc397	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc398	.byte	1                               # DW_AT_frame_base399	.byte	86400	.byte	7                               # DW_AT_name401	.byte	0                               # DW_AT_decl_file402	.byte	14                              # DW_AT_decl_line403	.long	129                             # DW_AT_type404                                        # DW_AT_external405	.byte	12                              # Abbrev [12] 0x55:0xb DW_TAG_variable406	.byte	2                               # DW_AT_location407	.byte	145408	.byte	123409	.byte	10                              # DW_AT_name410	.byte	0                               # DW_AT_decl_file411	.byte	15                              # DW_AT_decl_line412	.long	47                              # DW_AT_type413	.byte	0                               # End Of Children Mark414	.byte	8                               # Abbrev [8] 0x61:0x5 DW_TAG_pointer_type415	.long	47                              # DW_AT_type416	.byte	13                              # Abbrev [13] 0x66:0x1b DW_TAG_subprogram417	.byte	1                               # DW_AT_low_pc418	.long	.Lfunc_end1-.Lfunc_begin1       # DW_AT_high_pc419	.byte	1                               # DW_AT_frame_base420	.byte	86421	.long	119                             # DW_AT_object_pointer422	.byte	9                               # DW_AT_linkage_name423	.long	56                              # DW_AT_specification424	.byte	14                              # Abbrev [14] 0x77:0x9 DW_TAG_formal_parameter425	.byte	2                               # DW_AT_location426	.byte	145427	.byte	120428	.byte	11                              # DW_AT_name429	.long	133                             # DW_AT_type430                                        # DW_AT_artificial431	.byte	0                               # End Of Children Mark432	.byte	15                              # Abbrev [15] 0x81:0x4 DW_TAG_base_type433	.byte	8                               # DW_AT_name434	.byte	5                               # DW_AT_encoding435	.byte	4                               # DW_AT_byte_size436	.byte	8                               # Abbrev [8] 0x85:0x5 DW_TAG_pointer_type437	.long	47                              # DW_AT_type438	.byte	0                               # End Of Children Mark439.Ldebug_info_end1:440	.section	.debug_rnglists,"",@progbits441	.long	.Ldebug_list_header_end0-.Ldebug_list_header_start0 # Length442.Ldebug_list_header_start0:443	.short	5                               # Version444	.byte	8                               # Address size445	.byte	0                               # Segment selector size446	.long	1                               # Offset entry count447.Lrnglists_table_base0:448	.long	.Ldebug_ranges0-.Lrnglists_table_base0449.Ldebug_ranges0:450	.byte	3                               # DW_RLE_startx_length451	.byte	0                               #   start index452	.uleb128 .Lfunc_end0-.Lfunc_begin0      #   length453	.byte	3                               # DW_RLE_startx_length454	.byte	1                               #   start index455	.uleb128 .Lfunc_end1-.Lfunc_begin1      #   length456	.byte	0                               # DW_RLE_end_of_list457.Ldebug_list_header_end0:458	.section	.debug_str_offsets,"",@progbits459	.long	52                              # Length of String Offsets Set460	.short	5461	.short	0462.Lstr_offsets_base0:463	.section	.debug_str,"MS",@progbits,1464.Linfo_string0:465	.asciz	"clang version 19.0.0git"       # string offset=0466.Linfo_string1:467	.asciz	"main.cpp"                      # string offset=24468.Linfo_string2:469	.asciz	"/home/ayermolo/local/tasks/T190087639/DW_TAG_structure_type" # string offset=33470.Linfo_string3:471	.asciz	"A"                             # string offset=93472.Linfo_string4:473	.asciz	"B"                             # string offset=95474.Linfo_string5:475	.asciz	"State"                         # string offset=97476.Linfo_string6:477	.asciz	"InnerState"                    # string offset=103478.Linfo_string7:479	.asciz	"main"                          # string offset=114480.Linfo_string8:481	.asciz	"_ZN1A1B5StateC2Ev"             # string offset=119482.Linfo_string9:483	.asciz	"int"                           # string offset=137484.Linfo_string10:485	.asciz	"S"                             # string offset=141486.Linfo_string11:487	.asciz	"this"                          # string offset=143488	.section	.debug_str_offsets,"",@progbits489	.long	.Linfo_string0490	.long	.Linfo_string1491	.long	.Linfo_string2492	.long	.Linfo_string3493	.long	.Linfo_string4494	.long	.Linfo_string5495	.long	.Linfo_string6496	.long	.Linfo_string7497	.long	.Linfo_string9498	.long	.Linfo_string8499	.long	.Linfo_string10500	.long	.Linfo_string11501	.section	.debug_addr,"",@progbits502	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution503.Ldebug_addr_start0:504	.short	5                               # DWARF version number505	.byte	8                               # Address size506	.byte	0                               # Segment selector size507.Laddr_table_base0:508	.quad	.Lfunc_begin0509	.quad	.Lfunc_begin1510.Ldebug_addr_end0:511	.section	.debug_names,"",@progbits512	.long	.Lnames_end0-.Lnames_start0     # Header: unit length513.Lnames_start0:514	.short	5                               # Header: version515	.short	0                               # Header: padding516	.long	1                               # Header: compilation unit count517	.long	1                               # Header: local type unit count518	.long	0                               # Header: foreign type unit count519	.long	6                               # Header: bucket count520	.long	6                               # Header: name count521	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size522	.long	8                               # Header: augmentation string size523	.ascii	"LLVM0700"                      # Header: augmentation string524	.long	.Lcu_begin0                     # Compilation unit 0525	.long	.Ltu_begin0                     # Type unit 0526	.long	0                               # Bucket 0527	.long	0                               # Bucket 1528	.long	1                               # Bucket 2529	.long	2                               # Bucket 3530	.long	3                               # Bucket 4531	.long	6                               # Bucket 5532	.long	193495088                       # Hash in Bucket 2533	.long	1059643959                      # Hash in Bucket 3534	.long	177670                          # Hash in Bucket 4535	.long	274811398                       # Hash in Bucket 4536	.long	2090499946                      # Hash in Bucket 4537	.long	177671                          # Hash in Bucket 5538	.long	.Linfo_string9                  # String in Bucket 2: int539	.long	.Linfo_string8                  # String in Bucket 3: _ZN1A1B5StateC2Ev540	.long	.Linfo_string3                  # String in Bucket 4: A541	.long	.Linfo_string5                  # String in Bucket 4: State542	.long	.Linfo_string7                  # String in Bucket 4: main543	.long	.Linfo_string4                  # String in Bucket 5: B544	.long	.Lnames5-.Lnames_entries0       # Offset in Bucket 2545	.long	.Lnames4-.Lnames_entries0       # Offset in Bucket 3546	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 4547	.long	.Lnames2-.Lnames_entries0       # Offset in Bucket 4548	.long	.Lnames3-.Lnames_entries0       # Offset in Bucket 4549	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 5550.Lnames_abbrev_start0:551	.byte	1                               # Abbrev code552	.byte	36                              # DW_TAG_base_type553	.byte	3                               # DW_IDX_die_offset554	.byte	19                              # DW_FORM_ref4555	.byte	4                               # DW_IDX_parent556	.byte	25                              # DW_FORM_flag_present557	.byte	0                               # End of abbrev558	.byte	0                               # End of abbrev559	.byte	2                               # Abbrev code560	.byte	46                              # DW_TAG_subprogram561	.byte	3                               # DW_IDX_die_offset562	.byte	19                              # DW_FORM_ref4563	.byte	4                               # DW_IDX_parent564	.byte	25                              # DW_FORM_flag_present565	.byte	0                               # End of abbrev566	.byte	0                               # End of abbrev567	.byte	3                               # Abbrev code568	.byte	57                              # DW_TAG_namespace569	.byte	2                               # DW_IDX_type_unit570	.byte	11                              # DW_FORM_data1571	.byte	3                               # DW_IDX_die_offset572	.byte	19                              # DW_FORM_ref4573	.byte	4                               # DW_IDX_parent574	.byte	25                              # DW_FORM_flag_present575	.byte	0                               # End of abbrev576	.byte	0                               # End of abbrev577	.byte	4                               # Abbrev code578	.byte	57                              # DW_TAG_namespace579	.byte	3                               # DW_IDX_die_offset580	.byte	19                              # DW_FORM_ref4581	.byte	4                               # DW_IDX_parent582	.byte	25                              # DW_FORM_flag_present583	.byte	0                               # End of abbrev584	.byte	0                               # End of abbrev585	.byte	5                               # Abbrev code586	.byte	2                               # DW_TAG_class_type587	.byte	2                               # DW_IDX_type_unit588	.byte	11                              # DW_FORM_data1589	.byte	3                               # DW_IDX_die_offset590	.byte	19                              # DW_FORM_ref4591	.byte	4                               # DW_IDX_parent592	.byte	19                              # DW_FORM_ref4593	.byte	0                               # End of abbrev594	.byte	0                               # End of abbrev595	.byte	6                               # Abbrev code596	.byte	57                              # DW_TAG_namespace597	.byte	2                               # DW_IDX_type_unit598	.byte	11                              # DW_FORM_data1599	.byte	3                               # DW_IDX_die_offset600	.byte	19                              # DW_FORM_ref4601	.byte	4                               # DW_IDX_parent602	.byte	19                              # DW_FORM_ref4603	.byte	0                               # End of abbrev604	.byte	0                               # End of abbrev605	.byte	7                               # Abbrev code606	.byte	57                              # DW_TAG_namespace607	.byte	3                               # DW_IDX_die_offset608	.byte	19                              # DW_FORM_ref4609	.byte	4                               # DW_IDX_parent610	.byte	19                              # DW_FORM_ref4611	.byte	0                               # End of abbrev612	.byte	0                               # End of abbrev613	.byte	0                               # End of abbrev list614.Lnames_abbrev_end0:615.Lnames_entries0:616.Lnames5:617.L2:618	.byte	1                               # Abbreviation code619	.long	129                             # DW_IDX_die_offset620	.byte	0                               # DW_IDX_parent621                                        # End of list: int622.Lnames4:623.L3:624	.byte	2                               # Abbreviation code625	.long	102                             # DW_IDX_die_offset626	.byte	0                               # DW_IDX_parent627                                        # End of list: _ZN1A1B5StateC2Ev628.Lnames0:629.L4:630	.byte	3                               # Abbreviation code631	.byte	0                               # DW_IDX_type_unit632	.long	35                              # DW_IDX_die_offset633.L7:                                    # DW_IDX_parent634	.byte	4                               # Abbreviation code635	.long	43                              # DW_IDX_die_offset636	.byte	0                               # DW_IDX_parent637                                        # End of list: A638.Lnames2:639.L1:640	.byte	5                               # Abbreviation code641	.byte	0                               # DW_IDX_type_unit642	.long	39                              # DW_IDX_die_offset643	.long	.L5-.Lnames_entries0            # DW_IDX_parent644	.byte	2                               # Abbreviation code645	.long	102                             # DW_IDX_die_offset646	.byte	0                               # DW_IDX_parent647                                        # End of list: State648.Lnames3:649.L0:650	.byte	2                               # Abbreviation code651	.long	70                              # DW_IDX_die_offset652	.byte	0                               # DW_IDX_parent653                                        # End of list: main654.Lnames1:655.L5:656	.byte	6                               # Abbreviation code657	.byte	0                               # DW_IDX_type_unit658	.long	37                              # DW_IDX_die_offset659	.long	.L4-.Lnames_entries0            # DW_IDX_parent660.L6:661	.byte	7                               # Abbreviation code662	.long	45                              # DW_IDX_die_offset663	.long	.L7-.Lnames_entries0            # DW_IDX_parent664	.byte	0                               # End of list: B665	.p2align	2, 0x0666.Lnames_end0:667	.ident	"clang version 19.0.0git"668	.section	".note.GNU-stack","",@progbits669	.addrsig670	.section	.debug_line,"",@progbits671.Lline_table_start0:672