brintos

brintos / llvm-project-archived public Read only

0
0
Text · 14.2 KiB · 502ab15 Raw
305 lines · plain
1/* Original C (for context):2* __attribute__((noinline))3* double regs_fp_params(double a, double b, double c, double d, double e, double f) {4*   asm volatile("" :: "x"(a), "x"(b), "x"(c), "x"(d), "x"(e), "x"(f));5*   return a + b + c + d + e + f;6* }*/7	.file	"regs_fp_params.c"8	.text9	.globl	regs_fp_params                  # -- Begin function regs_fp_params10	.p2align	411	.type	regs_fp_params,@function12regs_fp_params:                         # @regs_fp_params13.Lfunc_begin0:14	.file	0 "." "regs_fp_params.c" md5 0xdd883927454b0ea1cdce7b3c16c6a64315	.loc	0 2 0                           # regs_fp_params.c:2:016	.cfi_startproc17# %bb.0:                                # %entry18	#DEBUG_VALUE: regs_fp_params:a <- $xmm019	#DEBUG_VALUE: regs_fp_params:b <- $xmm120	#DEBUG_VALUE: regs_fp_params:c <- $xmm221	#DEBUG_VALUE: regs_fp_params:d <- $xmm322	#DEBUG_VALUE: regs_fp_params:e <- $xmm423	#DEBUG_VALUE: regs_fp_params:f <- $xmm524	pushq	%rbp25	.cfi_def_cfa_offset 1626	.cfi_offset %rbp, -1627	movq	%rsp, %rbp28	.cfi_def_cfa_register %rbp29.Ltmp0:30	.loc	0 3 3 prologue_end              # regs_fp_params.c:3:331	#APP32	#NO_APP33	.loc	0 4 12                          # regs_fp_params.c:4:1234	addsd	%xmm1, %xmm035.Ltmp1:36	#DEBUG_VALUE: regs_fp_params:a <- [DW_OP_LLVM_entry_value 1] $xmm037	.loc	0 4 16 is_stmt 0                # regs_fp_params.c:4:1638	addsd	%xmm2, %xmm039	.loc	0 4 20                          # regs_fp_params.c:4:2040	addsd	%xmm3, %xmm041	.loc	0 4 24                          # regs_fp_params.c:4:2442	addsd	%xmm4, %xmm043	.loc	0 4 28                          # regs_fp_params.c:4:2844	addsd	%xmm5, %xmm045	.loc	0 4 3 epilogue_begin            # regs_fp_params.c:4:346	popq	%rbp47	.cfi_def_cfa %rsp, 848	retq49.Ltmp2:50.Lfunc_end0:51	.size	regs_fp_params, .Lfunc_end0-regs_fp_params52	.cfi_endproc53                                        # -- End function54	.section	.debug_loclists,"",@progbits55	.long	.Ldebug_list_header_end0-.Ldebug_list_header_start0 # Length56.Ldebug_list_header_start0:57	.short	5                               # Version58	.byte	8                               # Address size59	.byte	0                               # Segment selector size60	.long	1                               # Offset entry count61.Lloclists_table_base0:62	.long	.Ldebug_loc0-.Lloclists_table_base063.Ldebug_loc0:64	.byte	4                               # DW_LLE_offset_pair65	.uleb128 .Lfunc_begin0-.Lfunc_begin0    #   starting offset66	.uleb128 .Ltmp1-.Lfunc_begin0           #   ending offset67	.byte	1                               # Loc expr size68	.byte	97                              # DW_OP_reg1769	.byte	4                               # DW_LLE_offset_pair70	.uleb128 .Ltmp1-.Lfunc_begin0           #   starting offset71	.uleb128 .Lfunc_end0-.Lfunc_begin0      #   ending offset72	.byte	4                               # Loc expr size73	.byte	163                             # DW_OP_entry_value74	.byte	1                               # 175	.byte	97                              # DW_OP_reg1776	.byte	159                             # DW_OP_stack_value77	.byte	0                               # DW_LLE_end_of_list78.Ldebug_list_header_end0:79	.section	.debug_abbrev,"",@progbits80	.byte	1                               # Abbreviation Code81	.byte	17                              # DW_TAG_compile_unit82	.byte	1                               # DW_CHILDREN_yes83	.byte	37                              # DW_AT_producer84	.byte	37                              # DW_FORM_strx185	.byte	19                              # DW_AT_language86	.byte	5                               # DW_FORM_data287	.byte	3                               # DW_AT_name88	.byte	37                              # DW_FORM_strx189	.byte	114                             # DW_AT_str_offsets_base90	.byte	23                              # DW_FORM_sec_offset91	.byte	16                              # DW_AT_stmt_list92	.byte	23                              # DW_FORM_sec_offset93	.byte	27                              # DW_AT_comp_dir94	.byte	37                              # DW_FORM_strx195	.byte	17                              # DW_AT_low_pc96	.byte	27                              # DW_FORM_addrx97	.byte	18                              # DW_AT_high_pc98	.byte	6                               # DW_FORM_data499	.byte	115                             # DW_AT_addr_base100	.byte	23                              # DW_FORM_sec_offset101	.ascii	"\214\001"                      # DW_AT_loclists_base102	.byte	23                              # DW_FORM_sec_offset103	.byte	0                               # EOM(1)104	.byte	0                               # EOM(2)105	.byte	2                               # Abbreviation Code106	.byte	46                              # DW_TAG_subprogram107	.byte	1                               # DW_CHILDREN_yes108	.byte	17                              # DW_AT_low_pc109	.byte	27                              # DW_FORM_addrx110	.byte	18                              # DW_AT_high_pc111	.byte	6                               # DW_FORM_data4112	.byte	64                              # DW_AT_frame_base113	.byte	24                              # DW_FORM_exprloc114	.byte	122                             # DW_AT_call_all_calls115	.byte	25                              # DW_FORM_flag_present116	.byte	3                               # DW_AT_name117	.byte	37                              # DW_FORM_strx1118	.byte	58                              # DW_AT_decl_file119	.byte	11                              # DW_FORM_data1120	.byte	59                              # DW_AT_decl_line121	.byte	11                              # DW_FORM_data1122	.byte	39                              # DW_AT_prototyped123	.byte	25                              # DW_FORM_flag_present124	.byte	73                              # DW_AT_type125	.byte	19                              # DW_FORM_ref4126	.byte	63                              # DW_AT_external127	.byte	25                              # DW_FORM_flag_present128	.byte	0                               # EOM(1)129	.byte	0                               # EOM(2)130	.byte	3                               # Abbreviation Code131	.byte	5                               # DW_TAG_formal_parameter132	.byte	0                               # DW_CHILDREN_no133	.byte	2                               # DW_AT_location134	.byte	34                              # DW_FORM_loclistx135	.byte	3                               # DW_AT_name136	.byte	37                              # DW_FORM_strx1137	.byte	58                              # DW_AT_decl_file138	.byte	11                              # DW_FORM_data1139	.byte	59                              # DW_AT_decl_line140	.byte	11                              # DW_FORM_data1141	.byte	73                              # DW_AT_type142	.byte	19                              # DW_FORM_ref4143	.byte	0                               # EOM(1)144	.byte	0                               # EOM(2)145	.byte	4                               # Abbreviation Code146	.byte	5                               # DW_TAG_formal_parameter147	.byte	0                               # DW_CHILDREN_no148	.byte	2                               # DW_AT_location149	.byte	24                              # DW_FORM_exprloc150	.byte	3                               # DW_AT_name151	.byte	37                              # DW_FORM_strx1152	.byte	58                              # DW_AT_decl_file153	.byte	11                              # DW_FORM_data1154	.byte	59                              # DW_AT_decl_line155	.byte	11                              # DW_FORM_data1156	.byte	73                              # DW_AT_type157	.byte	19                              # DW_FORM_ref4158	.byte	0                               # EOM(1)159	.byte	0                               # EOM(2)160	.byte	5                               # Abbreviation Code161	.byte	36                              # DW_TAG_base_type162	.byte	0                               # DW_CHILDREN_no163	.byte	3                               # DW_AT_name164	.byte	37                              # DW_FORM_strx1165	.byte	62                              # DW_AT_encoding166	.byte	11                              # DW_FORM_data1167	.byte	11                              # DW_AT_byte_size168	.byte	11                              # DW_FORM_data1169	.byte	0                               # EOM(1)170	.byte	0                               # EOM(2)171	.byte	0                               # EOM(3)172	.section	.debug_info,"",@progbits173.Lcu_begin0:174	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit175.Ldebug_info_start0:176	.short	5                               # DWARF version number177	.byte	1                               # DWARF Unit Type178	.byte	8                               # Address Size (in bytes)179	.long	.debug_abbrev                   # Offset Into Abbrev. Section180	.byte	1                               # Abbrev [1] 0xc:0x6b DW_TAG_compile_unit181	.byte	0                               # DW_AT_producer182	.short	29                              # DW_AT_language183	.byte	1                               # DW_AT_name184	.long	.Lstr_offsets_base0             # DW_AT_str_offsets_base185	.long	.Lline_table_start0             # DW_AT_stmt_list186	.byte	2                               # DW_AT_comp_dir187	.byte	0                               # DW_AT_low_pc188	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc189	.long	.Laddr_table_base0              # DW_AT_addr_base190	.long	.Lloclists_table_base0          # DW_AT_loclists_base191	.byte	2                               # Abbrev [2] 0x27:0x4b DW_TAG_subprogram192	.byte	0                               # DW_AT_low_pc193	.long	.Lfunc_end0-.Lfunc_begin0       # DW_AT_high_pc194	.byte	1                               # DW_AT_frame_base195	.byte	86196                                        # DW_AT_call_all_calls197	.byte	3                               # DW_AT_name198	.byte	0                               # DW_AT_decl_file199	.byte	2                               # DW_AT_decl_line200                                        # DW_AT_prototyped201	.long	114                             # DW_AT_type202                                        # DW_AT_external203	.byte	3                               # Abbrev [3] 0x36:0x9 DW_TAG_formal_parameter204	.byte	0                               # DW_AT_location205	.byte	5                               # DW_AT_name206	.byte	0                               # DW_AT_decl_file207	.byte	2                               # DW_AT_decl_line208	.long	114                             # DW_AT_type209	.byte	4                               # Abbrev [4] 0x3f:0xa DW_TAG_formal_parameter210	.byte	1                               # DW_AT_location211	.byte	98212	.byte	6                               # DW_AT_name213	.byte	0                               # DW_AT_decl_file214	.byte	2                               # DW_AT_decl_line215	.long	114                             # DW_AT_type216	.byte	4                               # Abbrev [4] 0x49:0xa DW_TAG_formal_parameter217	.byte	1                               # DW_AT_location218	.byte	99219	.byte	7                               # DW_AT_name220	.byte	0                               # DW_AT_decl_file221	.byte	2                               # DW_AT_decl_line222	.long	114                             # DW_AT_type223	.byte	4                               # Abbrev [4] 0x53:0xa DW_TAG_formal_parameter224	.byte	1                               # DW_AT_location225	.byte	100226	.byte	8                               # DW_AT_name227	.byte	0                               # DW_AT_decl_file228	.byte	2                               # DW_AT_decl_line229	.long	114                             # DW_AT_type230	.byte	4                               # Abbrev [4] 0x5d:0xa DW_TAG_formal_parameter231	.byte	1                               # DW_AT_location232	.byte	101233	.byte	9                               # DW_AT_name234	.byte	0                               # DW_AT_decl_file235	.byte	2                               # DW_AT_decl_line236	.long	114                             # DW_AT_type237	.byte	4                               # Abbrev [4] 0x67:0xa DW_TAG_formal_parameter238	.byte	1                               # DW_AT_location239	.byte	102240	.byte	10                              # DW_AT_name241	.byte	0                               # DW_AT_decl_file242	.byte	2                               # DW_AT_decl_line243	.long	114                             # DW_AT_type244	.byte	0                               # End Of Children Mark245	.byte	5                               # Abbrev [5] 0x72:0x4 DW_TAG_base_type246	.byte	4                               # DW_AT_name247	.byte	4                               # DW_AT_encoding248	.byte	8                               # DW_AT_byte_size249	.byte	0                               # End Of Children Mark250.Ldebug_info_end0:251	.section	.debug_str_offsets,"",@progbits252	.long	48                              # Length of String Offsets Set253	.short	5254	.short	0255.Lstr_offsets_base0:256	.section	.debug_str,"MS",@progbits,1257.Linfo_string0:258	.asciz	"clang version 22.0.0git (https://github.com/UltimateForce21/llvm-project.git 79c0a9e1e7da0f727c41d27c9c6ff8a28bb7d06f)" # string offset=0259.Linfo_string1:260	.asciz	"regs_fp_params.c"              # string offset=119261.Linfo_string2:262	.asciz	"."                             # string offset=136263.Linfo_string3:264	.asciz	"regs_fp_params"                # string offset=138265.Linfo_string4:266	.asciz	"double"                        # string offset=153267.Linfo_string5:268	.asciz	"a"                             # string offset=160269.Linfo_string6:270	.asciz	"b"                             # string offset=162271.Linfo_string7:272	.asciz	"c"                             # string offset=164273.Linfo_string8:274	.asciz	"d"                             # string offset=166275.Linfo_string9:276	.asciz	"e"                             # string offset=168277.Linfo_string10:278	.asciz	"f"                             # string offset=170279	.section	.debug_str_offsets,"",@progbits280	.long	.Linfo_string0281	.long	.Linfo_string1282	.long	.Linfo_string2283	.long	.Linfo_string3284	.long	.Linfo_string4285	.long	.Linfo_string5286	.long	.Linfo_string6287	.long	.Linfo_string7288	.long	.Linfo_string8289	.long	.Linfo_string9290	.long	.Linfo_string10291	.section	.debug_addr,"",@progbits292	.long	.Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution293.Ldebug_addr_start0:294	.short	5                               # DWARF version number295	.byte	8                               # Address size296	.byte	0                               # Segment selector size297.Laddr_table_base0:298	.quad	.Lfunc_begin0299.Ldebug_addr_end0:300	.ident	"clang version 22.0.0git (https://github.com/UltimateForce21/llvm-project.git 79c0a9e1e7da0f727c41d27c9c6ff8a28bb7d06f)"301	.section	".note.GNU-stack","",@progbits302	.addrsig303	.section	.debug_line,"",@progbits304.Lline_table_start0:305