brintos

brintos / llvm-project-archived public Read only

0
0
Text · 32.3 KiB · 587eaaf Raw
671 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_class_type declaration with DW_AT_name.11 12# POSTCHECK:       DW_TAG_type_unit13# POSTCHECK:       DW_TAG_class_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##       class 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	.text39	.file	"main.cpp"40	.file	0 "/DW_TAG_class_type" "main.cpp" md5 0x80f261b124b76c481b8761c040ab480241	.section	.debug_info,"G",@progbits,16664150534606561860,comdat42.Ltu_begin0:43	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit44.Ldebug_info_start0:45	.short	5                               # DWARF version number46	.byte	2                               # DWARF Unit Type47	.byte	8                               # Address Size (in bytes)48	.long	.debug_abbrev                   # Offset Into Abbrev. Section49	.quad	-1782593539102989756            # Type Signature50	.long	39                              # Type DIE Offset51	.byte	1                               # Abbrev [1] 0x18:0x3b DW_TAG_type_unit52	.short	33                              # DW_AT_language53	.long	.Lline_table_start0             # DW_AT_stmt_list54	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base55	.byte	2                               # Abbrev [2] 0x23:0x2a DW_TAG_namespace56	.byte	3                               # DW_AT_name57	.byte	2                               # Abbrev [2] 0x25:0x27 DW_TAG_namespace58	.byte	4                               # DW_AT_name59	.byte	3                               # Abbrev [3] 0x27:0x24 DW_TAG_class_type60	.byte	5                               # DW_AT_calling_convention61	.byte	5                               # DW_AT_name62	.byte	1                               # DW_AT_byte_size63	.byte	0                               # DW_AT_decl_file64	.byte	3                               # DW_AT_decl_line65	.byte	4                               # Abbrev [4] 0x2d:0xb DW_TAG_subprogram66	.byte	5                               # DW_AT_name67	.byte	0                               # DW_AT_decl_file68	.byte	8                               # DW_AT_decl_line69                                        # DW_AT_declaration70                                        # DW_AT_external71	.byte	1                               # DW_AT_accessibility72                                        # DW_ACCESS_public73	.byte	5                               # Abbrev [5] 0x32:0x5 DW_TAG_formal_parameter74	.long	77                              # DW_AT_type75                                        # DW_AT_artificial76	.byte	0                               # End Of Children Mark77	.byte	4                               # Abbrev [4] 0x38:0x10 DW_TAG_subprogram78	.byte	5                               # DW_AT_name79	.byte	0                               # DW_AT_decl_file80	.byte	9                               # DW_AT_decl_line81                                        # DW_AT_declaration82                                        # DW_AT_external83	.byte	1                               # DW_AT_accessibility84                                        # DW_ACCESS_public85	.byte	5                               # Abbrev [5] 0x3d:0x5 DW_TAG_formal_parameter86	.long	77                              # DW_AT_type87                                        # DW_AT_artificial88	.byte	6                               # Abbrev [6] 0x42:0x5 DW_TAG_formal_parameter89	.long	72                              # DW_AT_type90	.byte	0                               # End Of Children Mark91	.byte	7                               # Abbrev [7] 0x48:0x2 DW_TAG_class_type92	.byte	6                               # DW_AT_name93                                        # DW_AT_declaration94	.byte	0                               # End Of Children Mark95	.byte	0                               # End Of Children Mark96	.byte	0                               # End Of Children Mark97	.byte	8                               # Abbrev [8] 0x4d:0x5 DW_TAG_pointer_type98	.long	39                              # DW_AT_type99	.byte	0                               # End Of Children Mark100.Ldebug_info_end0:101	.text102	.globl	main                            # -- Begin function main103	.p2align	4, 0x90104	.type	main,@function105main:                                   # @main106.Lfunc_begin0:107	.loc	0 14 0                          # main.cpp:14:0108	.cfi_startproc109# %bb.0:                                # %entry110	pushq	%rbp111	.cfi_def_cfa_offset 16112	.cfi_offset %rbp, -16113	movq	%rsp, %rbp114	.cfi_def_cfa_register %rbp115	subq	$16, %rsp116	movl	$0, -4(%rbp)117.Ltmp0:118	.loc	0 15 15 prologue_end            # main.cpp:15:15119	leaq	-5(%rbp), %rdi120	callq	_ZN1A1B5StateC2Ev121	.loc	0 16 3                          # main.cpp:16:3122	xorl	%eax, %eax123	.loc	0 16 3 epilogue_begin is_stmt 0 # main.cpp:16:3124	addq	$16, %rsp125	popq	%rbp126	.cfi_def_cfa %rsp, 8127	retq128.Ltmp1:129.Lfunc_end0:130	.size	main, .Lfunc_end0-main131	.cfi_endproc132                                        # -- End function133	.section	.text._ZN1A1B5StateC2Ev,"axG",@progbits,_ZN1A1B5StateC2Ev,comdat134	.weak	_ZN1A1B5StateC2Ev               # -- Begin function _ZN1A1B5StateC2Ev135	.p2align	4, 0x90136	.type	_ZN1A1B5StateC2Ev,@function137_ZN1A1B5StateC2Ev:                      # @_ZN1A1B5StateC2Ev138.Lfunc_begin1:139	.loc	0 8 0 is_stmt 1                 # main.cpp:8:0140	.cfi_startproc141# %bb.0:                                # %entry142	pushq	%rbp143	.cfi_def_cfa_offset 16144	.cfi_offset %rbp, -16145	movq	%rsp, %rbp146	.cfi_def_cfa_register %rbp147	movq	%rdi, -8(%rbp)148.Ltmp2:149	.loc	0 8 15 prologue_end epilogue_begin # main.cpp:8:15150	popq	%rbp151	.cfi_def_cfa %rsp, 8152	retq153.Ltmp3:154.Lfunc_end1:155	.size	_ZN1A1B5StateC2Ev, .Lfunc_end1-_ZN1A1B5StateC2Ev156	.cfi_endproc157                                        # -- End function158	.section	.debug_abbrev,"",@progbits159	.byte	1                               # Abbreviation Code160	.byte	65                              # DW_TAG_type_unit161	.byte	1                               # DW_CHILDREN_yes162	.byte	19                              # DW_AT_language163	.byte	5                               # DW_FORM_data2164	.byte	16                              # DW_AT_stmt_list165	.byte	23                              # DW_FORM_sec_offset166	.byte	114                             # DW_AT_str_offsets_base167	.byte	23                              # DW_FORM_sec_offset168	.byte	0                               # EOM(1)169	.byte	0                               # EOM(2)170	.byte	2                               # Abbreviation Code171	.byte	57                              # DW_TAG_namespace172	.byte	1                               # DW_CHILDREN_yes173	.byte	3                               # DW_AT_name174	.byte	37                              # DW_FORM_strx1175	.byte	0                               # EOM(1)176	.byte	0                               # EOM(2)177	.byte	3                               # Abbreviation Code178	.byte	2                               # DW_TAG_class_type179	.byte	1                               # DW_CHILDREN_yes180	.byte	54                              # DW_AT_calling_convention181	.byte	11                              # DW_FORM_data1182	.byte	3                               # DW_AT_name183	.byte	37                              # DW_FORM_strx1184	.byte	11                              # DW_AT_byte_size185	.byte	11                              # DW_FORM_data1186	.byte	58                              # DW_AT_decl_file187	.byte	11                              # DW_FORM_data1188	.byte	59                              # DW_AT_decl_line189	.byte	11                              # DW_FORM_data1190	.byte	0                               # EOM(1)191	.byte	0                               # EOM(2)192	.byte	4                               # Abbreviation Code193	.byte	46                              # DW_TAG_subprogram194	.byte	1                               # DW_CHILDREN_yes195	.byte	3                               # DW_AT_name196	.byte	37                              # DW_FORM_strx1197	.byte	58                              # DW_AT_decl_file198	.byte	11                              # DW_FORM_data1199	.byte	59                              # DW_AT_decl_line200	.byte	11                              # DW_FORM_data1201	.byte	60                              # DW_AT_declaration202	.byte	25                              # DW_FORM_flag_present203	.byte	63                              # DW_AT_external204	.byte	25                              # DW_FORM_flag_present205	.byte	50                              # DW_AT_accessibility206	.byte	11                              # DW_FORM_data1207	.byte	0                               # EOM(1)208	.byte	0                               # EOM(2)209	.byte	5                               # Abbreviation Code210	.byte	5                               # DW_TAG_formal_parameter211	.byte	0                               # DW_CHILDREN_no212	.byte	73                              # DW_AT_type213	.byte	19                              # DW_FORM_ref4214	.byte	52                              # DW_AT_artificial215	.byte	25                              # DW_FORM_flag_present216	.byte	0                               # EOM(1)217	.byte	0                               # EOM(2)218	.byte	6                               # Abbreviation Code219	.byte	5                               # DW_TAG_formal_parameter220	.byte	0                               # DW_CHILDREN_no221	.byte	73                              # DW_AT_type222	.byte	19                              # DW_FORM_ref4223	.byte	0                               # EOM(1)224	.byte	0                               # EOM(2)225	.byte	7                               # Abbreviation Code226	.byte	2                               # DW_TAG_class_type227	.byte	0                               # DW_CHILDREN_no228	.byte	3                               # DW_AT_name229	.byte	37                              # DW_FORM_strx1230	.byte	60                              # DW_AT_declaration231	.byte	25                              # DW_FORM_flag_present232	.byte	0                               # EOM(1)233	.byte	0                               # EOM(2)234	.byte	8                               # Abbreviation Code235	.byte	15                              # DW_TAG_pointer_type236	.byte	0                               # DW_CHILDREN_no237	.byte	73                              # DW_AT_type238	.byte	19                              # DW_FORM_ref4239	.byte	0                               # EOM(1)240	.byte	0                               # EOM(2)241	.byte	9                               # Abbreviation Code242	.byte	17                              # DW_TAG_compile_unit243	.byte	1                               # DW_CHILDREN_yes244	.byte	37                              # DW_AT_producer245	.byte	37                              # DW_FORM_strx1246	.byte	19                              # DW_AT_language247	.byte	5                               # DW_FORM_data2248	.byte	3                               # DW_AT_name249	.byte	37                              # DW_FORM_strx1250	.byte	114                             # DW_AT_str_offsets_base251	.byte	23                              # DW_FORM_sec_offset252	.byte	16                              # DW_AT_stmt_list253	.byte	23                              # DW_FORM_sec_offset254	.byte	27                              # DW_AT_comp_dir255	.byte	37                              # DW_FORM_strx1256	.byte	17                              # DW_AT_low_pc257	.byte	1                               # DW_FORM_addr258	.byte	85                              # DW_AT_ranges259	.byte	35                              # DW_FORM_rnglistx260	.byte	115                             # DW_AT_addr_base261	.byte	23                              # DW_FORM_sec_offset262	.byte	116                             # DW_AT_rnglists_base263	.byte	23                              # DW_FORM_sec_offset264	.byte	0                               # EOM(1)265	.byte	0                               # EOM(2)266	.byte	10                              # Abbreviation Code267	.byte	2                               # DW_TAG_class_type268	.byte	1                               # DW_CHILDREN_yes269	.byte	60                              # DW_AT_declaration270	.byte	25                              # DW_FORM_flag_present271	.byte	105                             # DW_AT_signature272	.byte	32                              # DW_FORM_ref_sig8273	.byte	0                               # EOM(1)274	.byte	0                               # EOM(2)275	.byte	11                              # Abbreviation Code276	.byte	46                              # DW_TAG_subprogram277	.byte	1                               # DW_CHILDREN_yes278	.byte	17                              # DW_AT_low_pc279	.byte	27                              # DW_FORM_addrx280	.byte	18                              # DW_AT_high_pc281	.byte	6                               # DW_FORM_data4282	.byte	64                              # DW_AT_frame_base283	.byte	24                              # DW_FORM_exprloc284	.byte	3                               # DW_AT_name285	.byte	37                              # DW_FORM_strx1286	.byte	58                              # DW_AT_decl_file287	.byte	11                              # DW_FORM_data1288	.byte	59                              # DW_AT_decl_line289	.byte	11                              # DW_FORM_data1290	.byte	73                              # DW_AT_type291	.byte	19                              # DW_FORM_ref4292	.byte	63                              # DW_AT_external293	.byte	25                              # DW_FORM_flag_present294	.byte	0                               # EOM(1)295	.byte	0                               # EOM(2)296	.byte	12                              # Abbreviation Code297	.byte	52                              # DW_TAG_variable298	.byte	0                               # DW_CHILDREN_no299	.byte	2                               # DW_AT_location300	.byte	24                              # DW_FORM_exprloc301	.byte	3                               # DW_AT_name302	.byte	37                              # DW_FORM_strx1303	.byte	58                              # DW_AT_decl_file304	.byte	11                              # DW_FORM_data1305	.byte	59                              # DW_AT_decl_line306	.byte	11                              # DW_FORM_data1307	.byte	73                              # DW_AT_type308	.byte	19                              # DW_FORM_ref4309	.byte	0                               # EOM(1)310	.byte	0                               # EOM(2)311	.byte	13                              # Abbreviation Code312	.byte	46                              # DW_TAG_subprogram313	.byte	1                               # DW_CHILDREN_yes314	.byte	17                              # DW_AT_low_pc315	.byte	27                              # DW_FORM_addrx316	.byte	18                              # DW_AT_high_pc317	.byte	6                               # DW_FORM_data4318	.byte	64                              # DW_AT_frame_base319	.byte	24                              # DW_FORM_exprloc320	.byte	100                             # DW_AT_object_pointer321	.byte	19                              # DW_FORM_ref4322	.byte	110                             # DW_AT_linkage_name323	.byte	37                              # DW_FORM_strx1324	.byte	71                              # DW_AT_specification325	.byte	19                              # DW_FORM_ref4326	.byte	0                               # EOM(1)327	.byte	0                               # EOM(2)328	.byte	14                              # Abbreviation Code329	.byte	5                               # DW_TAG_formal_parameter330	.byte	0                               # DW_CHILDREN_no331	.byte	2                               # DW_AT_location332	.byte	24                              # DW_FORM_exprloc333	.byte	3                               # DW_AT_name334	.byte	37                              # DW_FORM_strx1335	.byte	73                              # DW_AT_type336	.byte	19                              # DW_FORM_ref4337	.byte	52                              # DW_AT_artificial338	.byte	25                              # DW_FORM_flag_present339	.byte	0                               # EOM(1)340	.byte	0                               # EOM(2)341	.byte	15                              # Abbreviation Code342	.byte	36                              # DW_TAG_base_type343	.byte	0                               # DW_CHILDREN_no344	.byte	3                               # DW_AT_name345	.byte	37                              # DW_FORM_strx1346	.byte	62                              # DW_AT_encoding347	.byte	11                              # DW_FORM_data1348	.byte	11                              # DW_AT_byte_size349	.byte	11                              # DW_FORM_data1350	.byte	0                               # EOM(1)351	.byte	0                               # EOM(2)352	.byte	0                               # EOM(3)353	.section	.debug_info,"",@progbits354.Lcu_begin0:355	.long	.Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit356.Ldebug_info_start1:357	.short	5                               # DWARF version number358	.byte	1                               # DWARF Unit Type359	.byte	8                               # Address Size (in bytes)360	.long	.debug_abbrev                   # Offset Into Abbrev. Section361	.byte	9                               # Abbrev [9] 0xc:0x7f DW_TAG_compile_unit362	.byte	0                               # DW_AT_producer363	.short	33                              # DW_AT_language364	.byte	1                               # DW_AT_name365	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base366	.long	.Lline_table_start0             # DW_AT_stmt_list367	.byte	2                               # DW_AT_comp_dir368	.quad	0                               # DW_AT_low_pc369	.byte	0                               # DW_AT_ranges370	.long	.Laddr_table_base0              # DW_AT_addr_base371	.long	.Lrnglists_table_base0          # DW_AT_rnglists_base372	.byte	2                               # Abbrev [2] 0x2b:0x1b DW_TAG_namespace373	.byte	3                               # DW_AT_name374	.byte	2                               # Abbrev [2] 0x2d:0x18 DW_TAG_namespace375	.byte	4                               # DW_AT_name376	.byte	10                              # Abbrev [10] 0x2f:0x15 DW_TAG_class_type377                                        # DW_AT_declaration378	.quad	-1782593539102989756            # DW_AT_signature379	.byte	4                               # Abbrev [4] 0x38:0xb DW_TAG_subprogram380	.byte	5                               # DW_AT_name381	.byte	0                               # DW_AT_decl_file382	.byte	8                               # DW_AT_decl_line383                                        # DW_AT_declaration384                                        # DW_AT_external385	.byte	1                               # DW_AT_accessibility386                                        # DW_ACCESS_public387	.byte	5                               # Abbrev [5] 0x3d:0x5 DW_TAG_formal_parameter388	.long	97                              # DW_AT_type389                                        # DW_AT_artificial390	.byte	0                               # End Of Children Mark391	.byte	0                               # End Of Children Mark392	.byte	0                               # End Of Children Mark393	.byte	0                               # End Of Children Mark394	.byte	11                              # Abbrev [11] 0x46:0x1b DW_TAG_subprogram395	.byte	0                               # DW_AT_low_pc396	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc397	.byte	1                               # DW_AT_frame_base398	.byte	86399	.byte	7                               # DW_AT_name400	.byte	0                               # DW_AT_decl_file401	.byte	14                              # DW_AT_decl_line402	.long	129                             # DW_AT_type403                                        # DW_AT_external404	.byte	12                              # Abbrev [12] 0x55:0xb DW_TAG_variable405	.byte	2                               # DW_AT_location406	.byte	145407	.byte	123408	.byte	10                              # DW_AT_name409	.byte	0                               # DW_AT_decl_file410	.byte	15                              # DW_AT_decl_line411	.long	47                              # DW_AT_type412	.byte	0                               # End Of Children Mark413	.byte	8                               # Abbrev [8] 0x61:0x5 DW_TAG_pointer_type414	.long	47                              # DW_AT_type415	.byte	13                              # Abbrev [13] 0x66:0x1b DW_TAG_subprogram416	.byte	1                               # DW_AT_low_pc417	.long	.Lfunc_end1-.Lfunc_begin1       # DW_AT_high_pc418	.byte	1                               # DW_AT_frame_base419	.byte	86420	.long	119                             # DW_AT_object_pointer421	.byte	9                               # DW_AT_linkage_name422	.long	56                              # DW_AT_specification423	.byte	14                              # Abbrev [14] 0x77:0x9 DW_TAG_formal_parameter424	.byte	2                               # DW_AT_location425	.byte	145426	.byte	120427	.byte	11                              # DW_AT_name428	.long	133                             # DW_AT_type429                                        # DW_AT_artificial430	.byte	0                               # End Of Children Mark431	.byte	15                              # Abbrev [15] 0x81:0x4 DW_TAG_base_type432	.byte	8                               # DW_AT_name433	.byte	5                               # DW_AT_encoding434	.byte	4                               # DW_AT_byte_size435	.byte	8                               # Abbrev [8] 0x85:0x5 DW_TAG_pointer_type436	.long	47                              # DW_AT_type437	.byte	0                               # End Of Children Mark438.Ldebug_info_end1:439	.section	.debug_rnglists,"",@progbits440	.long	.Ldebug_list_header_end0-.Ldebug_list_header_start0 # Length441.Ldebug_list_header_start0:442	.short	5                               # Version443	.byte	8                               # Address size444	.byte	0                               # Segment selector size445	.long	1                               # Offset entry count446.Lrnglists_table_base0:447	.long	.Ldebug_ranges0-.Lrnglists_table_base0448.Ldebug_ranges0:449	.byte	3                               # DW_RLE_startx_length450	.byte	0                               #   start index451	.uleb128 .Lfunc_end0-.Lfunc_begin0      #   length452	.byte	3                               # DW_RLE_startx_length453	.byte	1                               #   start index454	.uleb128 .Lfunc_end1-.Lfunc_begin1      #   length455	.byte	0                               # DW_RLE_end_of_list456.Ldebug_list_header_end0:457	.section	.debug_str_offsets,"",@progbits458	.long	52                              # Length of String Offsets Set459	.short	5460	.short	0461.Lstr_offsets_base0:462	.section	.debug_str,"MS",@progbits,1463.Linfo_string0:464	.asciz	"clang version 19.0.0git"       # string offset=0465.Linfo_string1:466	.asciz	"main.cpp"                      # string offset=24467.Linfo_string2:468	.asciz	"/home/ayermolo/local/tasks/T190087639/DW_TAG_class_type" # string offset=33469.Linfo_string3:470	.asciz	"A"                             # string offset=89471.Linfo_string4:472	.asciz	"B"                             # string offset=91473.Linfo_string5:474	.asciz	"State"                         # string offset=93475.Linfo_string6:476	.asciz	"InnerState"                    # string offset=99477.Linfo_string7:478	.asciz	"main"                          # string offset=110479.Linfo_string8:480	.asciz	"_ZN1A1B5StateC2Ev"             # string offset=115481.Linfo_string9:482	.asciz	"int"                           # string offset=133483.Linfo_string10:484	.asciz	"S"                             # string offset=137485.Linfo_string11:486	.asciz	"this"                          # string offset=139487	.section	.debug_str_offsets,"",@progbits488	.long	.Linfo_string0489	.long	.Linfo_string1490	.long	.Linfo_string2491	.long	.Linfo_string3492	.long	.Linfo_string4493	.long	.Linfo_string5494	.long	.Linfo_string6495	.long	.Linfo_string7496	.long	.Linfo_string9497	.long	.Linfo_string8498	.long	.Linfo_string10499	.long	.Linfo_string11500	.section	.debug_addr,"",@progbits501	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution502.Ldebug_addr_start0:503	.short	5                               # DWARF version number504	.byte	8                               # Address size505	.byte	0                               # Segment selector size506.Laddr_table_base0:507	.quad	.Lfunc_begin0508	.quad	.Lfunc_begin1509.Ldebug_addr_end0:510	.section	.debug_names,"",@progbits511	.long	.Lnames_end0-.Lnames_start0     # Header: unit length512.Lnames_start0:513	.short	5                               # Header: version514	.short	0                               # Header: padding515	.long	1                               # Header: compilation unit count516	.long	1                               # Header: local type unit count517	.long	0                               # Header: foreign type unit count518	.long	6                               # Header: bucket count519	.long	6                               # Header: name count520	.long	.Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size521	.long	8                               # Header: augmentation string size522	.ascii	"LLVM0700"                      # Header: augmentation string523	.long	.Lcu_begin0                     # Compilation unit 0524	.long	.Ltu_begin0                     # Type unit 0525	.long	0                               # Bucket 0526	.long	0                               # Bucket 1527	.long	1                               # Bucket 2528	.long	2                               # Bucket 3529	.long	3                               # Bucket 4530	.long	6                               # Bucket 5531	.long	193495088                       # Hash in Bucket 2532	.long	1059643959                      # Hash in Bucket 3533	.long	177670                          # Hash in Bucket 4534	.long	274811398                       # Hash in Bucket 4535	.long	2090499946                      # Hash in Bucket 4536	.long	177671                          # Hash in Bucket 5537	.long	.Linfo_string9                  # String in Bucket 2: int538	.long	.Linfo_string8                  # String in Bucket 3: _ZN1A1B5StateC2Ev539	.long	.Linfo_string3                  # String in Bucket 4: A540	.long	.Linfo_string5                  # String in Bucket 4: State541	.long	.Linfo_string7                  # String in Bucket 4: main542	.long	.Linfo_string4                  # String in Bucket 5: B543	.long	.Lnames5-.Lnames_entries0       # Offset in Bucket 2544	.long	.Lnames4-.Lnames_entries0       # Offset in Bucket 3545	.long	.Lnames0-.Lnames_entries0       # Offset in Bucket 4546	.long	.Lnames2-.Lnames_entries0       # Offset in Bucket 4547	.long	.Lnames3-.Lnames_entries0       # Offset in Bucket 4548	.long	.Lnames1-.Lnames_entries0       # Offset in Bucket 5549.Lnames_abbrev_start0:550	.byte	1                               # Abbrev code551	.byte	36                              # DW_TAG_base_type552	.byte	3                               # DW_IDX_die_offset553	.byte	19                              # DW_FORM_ref4554	.byte	4                               # DW_IDX_parent555	.byte	25                              # DW_FORM_flag_present556	.byte	0                               # End of abbrev557	.byte	0                               # End of abbrev558	.byte	2                               # Abbrev code559	.byte	46                              # DW_TAG_subprogram560	.byte	3                               # DW_IDX_die_offset561	.byte	19                              # DW_FORM_ref4562	.byte	4                               # DW_IDX_parent563	.byte	25                              # DW_FORM_flag_present564	.byte	0                               # End of abbrev565	.byte	0                               # End of abbrev566	.byte	3                               # Abbrev code567	.byte	57                              # DW_TAG_namespace568	.byte	2                               # DW_IDX_type_unit569	.byte	11                              # DW_FORM_data1570	.byte	3                               # DW_IDX_die_offset571	.byte	19                              # DW_FORM_ref4572	.byte	4                               # DW_IDX_parent573	.byte	25                              # DW_FORM_flag_present574	.byte	0                               # End of abbrev575	.byte	0                               # End of abbrev576	.byte	4                               # Abbrev code577	.byte	57                              # DW_TAG_namespace578	.byte	3                               # DW_IDX_die_offset579	.byte	19                              # DW_FORM_ref4580	.byte	4                               # DW_IDX_parent581	.byte	25                              # DW_FORM_flag_present582	.byte	0                               # End of abbrev583	.byte	0                               # End of abbrev584	.byte	5                               # Abbrev code585	.byte	2                               # DW_TAG_class_type586	.byte	2                               # DW_IDX_type_unit587	.byte	11                              # DW_FORM_data1588	.byte	3                               # DW_IDX_die_offset589	.byte	19                              # DW_FORM_ref4590	.byte	4                               # DW_IDX_parent591	.byte	19                              # DW_FORM_ref4592	.byte	0                               # End of abbrev593	.byte	0                               # End of abbrev594	.byte	6                               # Abbrev code595	.byte	57                              # DW_TAG_namespace596	.byte	2                               # DW_IDX_type_unit597	.byte	11                              # DW_FORM_data1598	.byte	3                               # DW_IDX_die_offset599	.byte	19                              # DW_FORM_ref4600	.byte	4                               # DW_IDX_parent601	.byte	19                              # DW_FORM_ref4602	.byte	0                               # End of abbrev603	.byte	0                               # End of abbrev604	.byte	7                               # Abbrev code605	.byte	57                              # DW_TAG_namespace606	.byte	3                               # DW_IDX_die_offset607	.byte	19                              # DW_FORM_ref4608	.byte	4                               # DW_IDX_parent609	.byte	19                              # DW_FORM_ref4610	.byte	0                               # End of abbrev611	.byte	0                               # End of abbrev612	.byte	0                               # End of abbrev list613.Lnames_abbrev_end0:614.Lnames_entries0:615.Lnames5:616.L2:617	.byte	1                               # Abbreviation code618	.long	129                             # DW_IDX_die_offset619	.byte	0                               # DW_IDX_parent620                                        # End of list: int621.Lnames4:622.L3:623	.byte	2                               # Abbreviation code624	.long	102                             # DW_IDX_die_offset625	.byte	0                               # DW_IDX_parent626                                        # End of list: _ZN1A1B5StateC2Ev627.Lnames0:628.L4:629	.byte	3                               # Abbreviation code630	.byte	0                               # DW_IDX_type_unit631	.long	35                              # DW_IDX_die_offset632.L7:                                    # DW_IDX_parent633	.byte	4                               # Abbreviation code634	.long	43                              # DW_IDX_die_offset635	.byte	0                               # DW_IDX_parent636                                        # End of list: A637.Lnames2:638.L1:639	.byte	5                               # Abbreviation code640	.byte	0                               # DW_IDX_type_unit641	.long	39                              # DW_IDX_die_offset642	.long	.L5-.Lnames_entries0            # DW_IDX_parent643	.byte	2                               # Abbreviation code644	.long	102                             # DW_IDX_die_offset645	.byte	0                               # DW_IDX_parent646                                        # End of list: State647.Lnames3:648.L0:649	.byte	2                               # Abbreviation code650	.long	70                              # DW_IDX_die_offset651	.byte	0                               # DW_IDX_parent652                                        # End of list: main653.Lnames1:654.L5:655	.byte	6                               # Abbreviation code656	.byte	0                               # DW_IDX_type_unit657	.long	37                              # DW_IDX_die_offset658	.long	.L4-.Lnames_entries0            # DW_IDX_parent659.L6:660	.byte	7                               # Abbreviation code661	.long	45                              # DW_IDX_die_offset662	.long	.L7-.Lnames_entries0            # DW_IDX_parent663	.byte	0                               # End of list: B664	.p2align	2, 0x0665.Lnames_end0:666	.ident	"clang version 19.0.0git"667	.section	".note.GNU-stack","",@progbits668	.addrsig669	.section	.debug_line,"",@progbits670.Lline_table_start0:671