| .text |
| .file "pr-44884.cpp" |
| .globaltype __stack_pointer, i32 |
| .functype _Z3barf (f32) -> (i32) |
| .functype _Z3fooc (i32) -> (i32) |
| .section .text._Z3barf,"",@ |
| .hidden _Z3barf # -- Begin function _Z3barf |
| .globl _Z3barf |
| .type _Z3barf,@function |
| _Z3barf: # @_Z3barf |
| .Lfunc_begin0: |
| .file 1 "/data/projects/scripts/regression-suite/input/general" "pr-44884.cpp" |
| .loc 1 1 0 # pr-44884.cpp:1:0 |
| .functype _Z3barf (f32) -> (i32) |
| .local i32, i32, i32, f32, f32, f32, i32, i32, i32, i32, i32, i32 |
| # %bb.0: # %entry |
| global.get __stack_pointer |
| local.set 1 |
| i32.const 16 |
| local.set 2 |
| local.get 1 |
| local.get 2 |
| i32.sub |
| local.set 3 |
| local.get 3 |
| local.get 0 |
| f32.store 12 |
| .Ltmp0: |
| .loc 1 1 36 prologue_end # pr-44884.cpp:1:36 |
| local.get 3 |
| f32.load 12 |
| local.set 4 |
| local.get 4 |
| f32.abs |
| local.set 5 |
| f32.const 0x1p31 |
| local.set 6 |
| local.get 5 |
| local.get 6 |
| f32.lt |
| local.set 7 |
| local.get 7 |
| i32.eqz |
| local.set 8 |
| block |
| block |
| local.get 8 |
| br_if 0 # 0: down to label1 |
| # %bb.1: # %entry |
| local.get 4 |
| i32.trunc_f32_s |
| local.set 9 |
| local.get 9 |
| local.set 10 |
| br 1 # 1: down to label0 |
| .LBB0_2: # %entry |
| .loc 1 0 36 is_stmt 0 # pr-44884.cpp:0:36 |
| end_block # label1: |
| .loc 1 1 36 # pr-44884.cpp:1:36 |
| i32.const -2147483648 |
| local.set 11 |
| local.get 11 |
| local.set 10 |
| .LBB0_3: # %entry |
| .loc 1 0 36 # pr-44884.cpp:0:36 |
| end_block # label0: |
| .loc 1 1 36 # pr-44884.cpp:1:36 |
| local.get 10 |
| local.set 12 |
| .loc 1 1 24 # pr-44884.cpp:1:24 |
| local.get 12 |
| return |
| end_function |
| .Ltmp1: |
| .Lfunc_end0: |
| # -- End function |
| .section .text._Z3fooc,"",@ |
| .hidden _Z3fooc # -- Begin function _Z3fooc |
| .globl _Z3fooc |
| .type _Z3fooc,@function |
| _Z3fooc: # @_Z3fooc |
| .Lfunc_begin1: |
| .loc 1 3 0 is_stmt 1 # pr-44884.cpp:3:0 |
| .functype _Z3fooc (i32) -> (i32) |
| .local i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, f32, f32, i32, i32, i32, i32, i32, i32, i32, i32, i32 |
| # %bb.0: # %entry |
| global.get __stack_pointer |
| local.set 1 |
| i32.const 16 |
| local.set 2 |
| local.get 1 |
| local.get 2 |
| i32.sub |
| local.set 3 |
| local.get 3 |
| global.set __stack_pointer |
| local.get 3 |
| local.get 0 |
| i32.store8 15 |
| .Ltmp2: |
| .loc 1 5 15 prologue_end # pr-44884.cpp:5:15 |
| local.get 3 |
| i32.load8_u 15 |
| local.set 4 |
| i32.const 24 |
| local.set 5 |
| local.get 4 |
| local.get 5 |
| i32.shl |
| local.set 6 |
| local.get 6 |
| local.get 5 |
| i32.shr_s |
| local.set 7 |
| .loc 1 5 7 is_stmt 0 # pr-44884.cpp:5:7 |
| local.get 3 |
| local.get 7 |
| i32.store 8 |
| .Ltmp3: |
| .loc 1 9 21 is_stmt 1 # pr-44884.cpp:9:21 |
| local.get 3 |
| i32.load 8 |
| local.set 8 |
| .loc 1 9 29 is_stmt 0 # pr-44884.cpp:9:29 |
| local.get 3 |
| i32.load8_u 15 |
| local.set 9 |
| i32.const 24 |
| local.set 10 |
| local.get 9 |
| local.get 10 |
| i32.shl |
| local.set 11 |
| local.get 11 |
| local.get 10 |
| i32.shr_s |
| local.set 12 |
| .loc 1 9 27 # pr-44884.cpp:9:27 |
| local.get 8 |
| local.get 12 |
| i32.add |
| local.set 13 |
| .loc 1 9 21 # pr-44884.cpp:9:21 |
| local.get 13 |
| f32.convert_i32_s |
| local.set 14 |
| .loc 1 9 13 # pr-44884.cpp:9:13 |
| local.get 3 |
| local.get 14 |
| f32.store 4 |
| .loc 1 10 19 is_stmt 1 # pr-44884.cpp:10:19 |
| local.get 3 |
| f32.load 4 |
| local.set 15 |
| .loc 1 10 15 is_stmt 0 # pr-44884.cpp:10:15 |
| local.get 15 |
| call _Z3barf |
| local.set 16 |
| .loc 1 10 13 # pr-44884.cpp:10:13 |
| local.get 3 |
| local.get 16 |
| i32.store 8 |
| .Ltmp4: |
| .loc 1 13 10 is_stmt 1 # pr-44884.cpp:13:10 |
| local.get 3 |
| i32.load 8 |
| local.set 17 |
| .loc 1 13 18 is_stmt 0 # pr-44884.cpp:13:18 |
| local.get 3 |
| i32.load8_u 15 |
| local.set 18 |
| i32.const 24 |
| local.set 19 |
| local.get 18 |
| local.get 19 |
| i32.shl |
| local.set 20 |
| local.get 20 |
| local.get 19 |
| i32.shr_s |
| local.set 21 |
| .loc 1 13 16 # pr-44884.cpp:13:16 |
| local.get 17 |
| local.get 21 |
| i32.add |
| local.set 22 |
| .loc 1 13 3 # pr-44884.cpp:13:3 |
| i32.const 16 |
| local.set 23 |
| local.get 3 |
| local.get 23 |
| i32.add |
| local.set 24 |
| local.get 24 |
| global.set __stack_pointer |
| local.get 22 |
| return |
| end_function |
| .Ltmp5: |
| .Lfunc_end1: |
| # -- End function |
| .section .debug_abbrev,"",@ |
| .int8 1 # Abbreviation Code |
| .int8 17 # DW_TAG_compile_unit |
| .int8 1 # DW_CHILDREN_yes |
| .int8 37 # DW_AT_producer |
| .int8 14 # DW_FORM_strp |
| .int8 19 # DW_AT_language |
| .int8 5 # DW_FORM_data2 |
| .int8 3 # DW_AT_name |
| .int8 14 # DW_FORM_strp |
| .int8 16 # DW_AT_stmt_list |
| .int8 23 # DW_FORM_sec_offset |
| .int8 27 # DW_AT_comp_dir |
| .int8 14 # DW_FORM_strp |
| .int8 17 # DW_AT_low_pc |
| .int8 1 # DW_FORM_addr |
| .int8 85 # DW_AT_ranges |
| .int8 23 # DW_FORM_sec_offset |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 2 # Abbreviation Code |
| .int8 36 # DW_TAG_base_type |
| .int8 0 # DW_CHILDREN_no |
| .int8 3 # DW_AT_name |
| .int8 14 # DW_FORM_strp |
| .int8 62 # DW_AT_encoding |
| .int8 11 # DW_FORM_data1 |
| .int8 11 # DW_AT_byte_size |
| .int8 11 # DW_FORM_data1 |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 3 # Abbreviation Code |
| .int8 46 # DW_TAG_subprogram |
| .int8 1 # DW_CHILDREN_yes |
| .int8 17 # DW_AT_low_pc |
| .int8 1 # DW_FORM_addr |
| .int8 18 # DW_AT_high_pc |
| .int8 6 # DW_FORM_data4 |
| .int8 64 # DW_AT_frame_base |
| .int8 24 # DW_FORM_exprloc |
| .int8 110 # DW_AT_linkage_name |
| .int8 14 # DW_FORM_strp |
| .int8 3 # DW_AT_name |
| .int8 14 # DW_FORM_strp |
| .int8 58 # DW_AT_decl_file |
| .int8 11 # DW_FORM_data1 |
| .int8 59 # DW_AT_decl_line |
| .int8 11 # DW_FORM_data1 |
| .int8 73 # DW_AT_type |
| .int8 19 # DW_FORM_ref4 |
| .int8 63 # DW_AT_external |
| .int8 25 # DW_FORM_flag_present |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 4 # Abbreviation Code |
| .int8 5 # DW_TAG_formal_parameter |
| .int8 0 # DW_CHILDREN_no |
| .int8 2 # DW_AT_location |
| .int8 24 # DW_FORM_exprloc |
| .int8 3 # DW_AT_name |
| .int8 14 # DW_FORM_strp |
| .int8 58 # DW_AT_decl_file |
| .int8 11 # DW_FORM_data1 |
| .int8 59 # DW_AT_decl_line |
| .int8 11 # DW_FORM_data1 |
| .int8 73 # DW_AT_type |
| .int8 19 # DW_FORM_ref4 |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 5 # Abbreviation Code |
| .int8 52 # DW_TAG_variable |
| .int8 0 # DW_CHILDREN_no |
| .int8 2 # DW_AT_location |
| .int8 24 # DW_FORM_exprloc |
| .int8 3 # DW_AT_name |
| .int8 14 # DW_FORM_strp |
| .int8 58 # DW_AT_decl_file |
| .int8 11 # DW_FORM_data1 |
| .int8 59 # DW_AT_decl_line |
| .int8 11 # DW_FORM_data1 |
| .int8 73 # DW_AT_type |
| .int8 19 # DW_FORM_ref4 |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 6 # Abbreviation Code |
| .int8 11 # DW_TAG_lexical_block |
| .int8 1 # DW_CHILDREN_yes |
| .int8 17 # DW_AT_low_pc |
| .int8 1 # DW_FORM_addr |
| .int8 18 # DW_AT_high_pc |
| .int8 6 # DW_FORM_data4 |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 7 # Abbreviation Code |
| .int8 22 # DW_TAG_typedef |
| .int8 0 # DW_CHILDREN_no |
| .int8 73 # DW_AT_type |
| .int8 19 # DW_FORM_ref4 |
| .int8 3 # DW_AT_name |
| .int8 14 # DW_FORM_strp |
| .int8 58 # DW_AT_decl_file |
| .int8 11 # DW_FORM_data1 |
| .int8 59 # DW_AT_decl_line |
| .int8 11 # DW_FORM_data1 |
| .int8 0 # EOM(1) |
| .int8 0 # EOM(2) |
| .int8 0 # EOM(3) |
| .section .debug_info,"",@ |
| .Lcu_begin0: |
| .int32 .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit |
| .Ldebug_info_start0: |
| .int16 4 # DWARF version number |
| .int32 .debug_abbrev0 # Offset Into Abbrev. Section |
| .int8 4 # Address Size (in bytes) |
| .int8 1 # Abbrev [1] 0xb:0xca DW_TAG_compile_unit |
| .int32 .Linfo_string0 # DW_AT_producer |
| .int16 33 # DW_AT_language |
| .int32 .Linfo_string1 # DW_AT_name |
| .int32 .Lline_table_start0 # DW_AT_stmt_list |
| .int32 .Linfo_string2 # DW_AT_comp_dir |
| .int32 0 # DW_AT_low_pc |
| .int32 .Ldebug_ranges0 # DW_AT_ranges |
| .int8 2 # Abbrev [2] 0x26:0x7 DW_TAG_base_type |
| .int32 .Linfo_string3 # DW_AT_name |
| .int8 5 # DW_AT_encoding |
| .int8 4 # DW_AT_byte_size |
| .int8 3 # Abbrev [3] 0x2d:0x2b DW_TAG_subprogram |
| .int32 .Lfunc_begin0 # DW_AT_low_pc |
| .int32 .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc |
| .int8 4 # DW_AT_frame_base |
| .int8 237 |
| .int8 0 |
| .int8 3 |
| .int8 159 |
| .int32 .Linfo_string4 # DW_AT_linkage_name |
| .int32 .Linfo_string5 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 1 # DW_AT_decl_line |
| .int32 38 # DW_AT_type |
| # DW_AT_external |
| .int8 4 # Abbrev [4] 0x49:0xe DW_TAG_formal_parameter |
| .int8 2 # DW_AT_location |
| .int8 145 |
| .int8 12 |
| .int32 .Linfo_string9 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 1 # DW_AT_decl_line |
| .int32 198 # DW_AT_type |
| .int8 0 # End Of Children Mark |
| .int8 3 # Abbrev [3] 0x58:0x67 DW_TAG_subprogram |
| .int32 .Lfunc_begin1 # DW_AT_low_pc |
| .int32 .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc |
| .int8 4 # DW_AT_frame_base |
| .int8 237 |
| .int8 0 |
| .int8 3 |
| .int8 159 |
| .int32 .Linfo_string6 # DW_AT_linkage_name |
| .int32 .Linfo_string7 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 3 # DW_AT_decl_line |
| .int32 191 # DW_AT_type |
| # DW_AT_external |
| .int8 4 # Abbrev [4] 0x74:0xe DW_TAG_formal_parameter |
| .int8 2 # DW_AT_location |
| .int8 145 |
| .int8 15 |
| .int32 .Linfo_string11 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 3 # DW_AT_decl_line |
| .int32 205 # DW_AT_type |
| .int8 5 # Abbrev [5] 0x82:0xe DW_TAG_variable |
| .int8 2 # DW_AT_location |
| .int8 145 |
| .int8 8 |
| .int32 .Linfo_string13 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 5 # DW_AT_decl_line |
| .int32 168 # DW_AT_type |
| .int8 6 # Abbrev [6] 0x90:0x18 DW_TAG_lexical_block |
| .int32 .Ltmp3 # DW_AT_low_pc |
| .int32 .Ltmp4-.Ltmp3 # DW_AT_high_pc |
| .int8 5 # Abbrev [5] 0x99:0xe DW_TAG_variable |
| .int8 2 # DW_AT_location |
| .int8 145 |
| .int8 4 |
| .int32 .Linfo_string15 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 9 # DW_AT_decl_line |
| .int32 179 # DW_AT_type |
| .int8 0 # End Of Children Mark |
| .int8 7 # Abbrev [7] 0xa8:0xb DW_TAG_typedef |
| .int32 38 # DW_AT_type |
| .int32 .Linfo_string14 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 4 # DW_AT_decl_line |
| .int8 7 # Abbrev [7] 0xb3:0xb DW_TAG_typedef |
| .int32 198 # DW_AT_type |
| .int32 .Linfo_string16 # DW_AT_name |
| .int8 1 # DW_AT_decl_file |
| .int8 7 # DW_AT_decl_line |
| .int8 0 # End Of Children Mark |
| .int8 2 # Abbrev [2] 0xbf:0x7 DW_TAG_base_type |
| .int32 .Linfo_string8 # DW_AT_name |
| .int8 7 # DW_AT_encoding |
| .int8 4 # DW_AT_byte_size |
| .int8 2 # Abbrev [2] 0xc6:0x7 DW_TAG_base_type |
| .int32 .Linfo_string10 # DW_AT_name |
| .int8 4 # DW_AT_encoding |
| .int8 4 # DW_AT_byte_size |
| .int8 2 # Abbrev [2] 0xcd:0x7 DW_TAG_base_type |
| .int32 .Linfo_string12 # DW_AT_name |
| .int8 6 # DW_AT_encoding |
| .int8 1 # DW_AT_byte_size |
| .int8 0 # End Of Children Mark |
| .Ldebug_info_end0: |
| .section .debug_ranges,"",@ |
| .Ldebug_ranges0: |
| .int32 .Lfunc_begin0 |
| .int32 .Lfunc_end0 |
| .int32 .Lfunc_begin1 |
| .int32 .Lfunc_end1 |
| .int32 0 |
| .int32 0 |
| .section .debug_str,"S",@ |
| .Linfo_string0: |
| .asciz "clang version 19.0.0git (/data/projects/llvm-root/llvm-project/clang 2db6703f0c257d293df455e2dff8c1fb695c4100)" # string offset=0 |
| .Linfo_string1: |
| .asciz "pr-44884.cpp" # string offset=111 |
| .Linfo_string2: |
| .asciz "/data/projects/scripts/regression-suite/input/general" # string offset=124 |
| .Linfo_string3: |
| .asciz "int" # string offset=178 |
| .Linfo_string4: |
| .asciz "_Z3barf" # string offset=182 |
| .Linfo_string5: |
| .asciz "bar" # string offset=190 |
| .Linfo_string6: |
| .asciz "_Z3fooc" # string offset=194 |
| .Linfo_string7: |
| .asciz "foo" # string offset=202 |
| .Linfo_string8: |
| .asciz "unsigned int" # string offset=206 |
| .Linfo_string9: |
| .asciz "Input" # string offset=219 |
| .Linfo_string10: |
| .asciz "float" # string offset=225 |
| .Linfo_string11: |
| .asciz "Param" # string offset=231 |
| .Linfo_string12: |
| .asciz "char" # string offset=237 |
| .Linfo_string13: |
| .asciz "Value" # string offset=242 |
| .Linfo_string14: |
| .asciz "INT" # string offset=248 |
| .Linfo_string15: |
| .asciz "Added" # string offset=252 |
| .Linfo_string16: |
| .asciz "FLOAT" # string offset=258 |
| .ident "clang version 19.0.0git (/data/projects/llvm-root/llvm-project/clang 2db6703f0c257d293df455e2dff8c1fb695c4100)" |
| .section .custom_section.producers,"",@ |
| .int8 2 |
| .int8 8 |
| .ascii "language" |
| .int8 1 |
| .int8 14 |
| .ascii "C_plus_plus_14" |
| .int8 0 |
| .int8 12 |
| .ascii "processed-by" |
| .int8 1 |
| .int8 5 |
| .ascii "clang" |
| .int8 96 |
| .ascii "19.0.0git (/data/projects/llvm-root/llvm-project/clang 2db6703f0c257d293df455e2dff8c1fb695c4100)" |
| .section .debug_str,"S",@ |
| .section .custom_section.target_features,"",@ |
| .int8 2 |
| .int8 43 |
| .int8 15 |
| .ascii "mutable-globals" |
| .int8 43 |
| .int8 8 |
| .ascii "sign-ext" |
| .section .debug_str,"S",@ |
| .section .debug_line,"",@ |
| .Lline_table_start0: |