1# -gdwarf-5 -g2 -O2 -S 2# int foo0(int argc) { 3# return argc; 4# } 5 6 .text 7 .file "helper.cpp" 8 .globl _Z4foo0i # -- Begin function _Z4foo0i 9 .p2align 4, 0x90 10 .type _Z4foo0i,@function 11_Z4foo0i: # @_Z4foo0i 12.Lfunc_begin0: 13 .file 0 "." "helper.cpp" md5 0x893b1fbf1f7f58c81b95cdb601b2f919 14 .loc 0 1 0 # helper.cpp:1:0 15 .cfi_startproc 16# %bb.0: # %entry 17 #DEBUG_VALUE: foo0:argc <- $edi 18 movl %edi, %eax 19.Ltmp0: 20 .loc 0 2 4 prologue_end # helper.cpp:2:4 21 retq 22.Ltmp1: 23.Lfunc_end0: 24 .size _Z4foo0i, .Lfunc_end0-_Z4foo0i 25 .cfi_endproc 26 # -- End function 27 .section .debug_abbrev,"",@progbits 28 .byte 1 # Abbreviation Code 29 .byte 17 # DW_TAG_compile_unit 30 .byte 1 # DW_CHILDREN_yes 31 .byte 37 # DW_AT_producer 32 .byte 37 # DW_FORM_strx1 33 .byte 19 # DW_AT_language 34 .byte 5 # DW_FORM_data2 35 .byte 3 # DW_AT_name 36 .byte 37 # DW_FORM_strx1 37 .byte 114 # DW_AT_str_offsets_base 38 .byte 23 # DW_FORM_sec_offset 39 .byte 16 # DW_AT_stmt_list 40 .byte 23 # DW_FORM_sec_offset 41 .byte 27 # DW_AT_comp_dir 42 .byte 37 # DW_FORM_strx1 43 .byte 17 # DW_AT_low_pc 44 .byte 27 # DW_FORM_addrx 45 .byte 18 # DW_AT_high_pc 46 .byte 6 # DW_FORM_data4 47 .byte 115 # DW_AT_addr_base 48 .byte 23 # DW_FORM_sec_offset 49 .byte 0 # EOM(1) 50 .byte 0 # EOM(2) 51 .byte 2 # Abbreviation Code 52 .byte 46 # DW_TAG_subprogram 53 .byte 1 # DW_CHILDREN_yes 54 .byte 17 # DW_AT_low_pc 55 .byte 27 # DW_FORM_addrx 56 .byte 18 # DW_AT_high_pc 57 .byte 6 # DW_FORM_data4 58 .byte 64 # DW_AT_frame_base 59 .byte 24 # DW_FORM_exprloc 60 .byte 122 # DW_AT_call_all_calls 61 .byte 25 # DW_FORM_flag_present 62 .byte 110 # DW_AT_linkage_name 63 .byte 37 # DW_FORM_strx1 64 .byte 3 # DW_AT_name 65 .byte 37 # DW_FORM_strx1 66 .byte 58 # DW_AT_decl_file 67 .byte 11 # DW_FORM_data1 68 .byte 59 # DW_AT_decl_line 69 .byte 11 # DW_FORM_data1 70 .byte 73 # DW_AT_type 71 .byte 19 # DW_FORM_ref4 72 .byte 63 # DW_AT_external 73 .byte 25 # DW_FORM_flag_present 74 .byte 0 # EOM(1) 75 .byte 0 # EOM(2) 76 .byte 3 # Abbreviation Code 77 .byte 5 # DW_TAG_formal_parameter 78 .byte 0 # DW_CHILDREN_no 79 .byte 2 # DW_AT_location 80 .byte 24 # DW_FORM_exprloc 81 .byte 3 # DW_AT_name 82 .byte 37 # DW_FORM_strx1 83 .byte 58 # DW_AT_decl_file 84 .byte 11 # DW_FORM_data1 85 .byte 59 # DW_AT_decl_line 86 .byte 11 # DW_FORM_data1 87 .byte 73 # DW_AT_type 88 .byte 19 # DW_FORM_ref4 89 .byte 0 # EOM(1) 90 .byte 0 # EOM(2) 91 .byte 4 # Abbreviation Code 92 .byte 36 # DW_TAG_base_type 93 .byte 0 # DW_CHILDREN_no 94 .byte 3 # DW_AT_name 95 .byte 37 # DW_FORM_strx1 96 .byte 62 # DW_AT_encoding 97 .byte 11 # DW_FORM_data1 98 .byte 11 # DW_AT_byte_size 99 .byte 11 # DW_FORM_data1 100 .byte 0 # EOM(1) 101 .byte 0 # EOM(2) 102 .byte 0 # EOM(3) 103 .section .debug_info,"",@progbits 104.Lcu_begin0: 105 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 106.Ldebug_info_start0: 107 .short 5 # DWARF version number 108 .byte 1 # DWARF Unit Type 109 .byte 8 # Address Size (in bytes) 110 .long .debug_abbrev # Offset Into Abbrev. Section 111 .byte 1 # Abbrev [1] 0xc:0x37 DW_TAG_compile_unit 112 .byte 0 # DW_AT_producer 113 .short 33 # DW_AT_language 114 .byte 1 # DW_AT_name 115 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base 116 .long .Lline_table_start0 # DW_AT_stmt_list 117 .byte 2 # DW_AT_comp_dir 118 .byte 0 # DW_AT_low_pc 119 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 120 .long .Laddr_table_base0 # DW_AT_addr_base 121 .byte 2 # Abbrev [2] 0x23:0x1b DW_TAG_subprogram 122 .byte 0 # DW_AT_low_pc 123 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 124 .byte 1 # DW_AT_frame_base 125 .byte 87 126 # DW_AT_call_all_calls 127 .byte 3 # DW_AT_linkage_name 128 .byte 4 # DW_AT_name 129 .byte 0 # DW_AT_decl_file 130 .byte 1 # DW_AT_decl_line 131 .long 62 # DW_AT_type 132 # DW_AT_external 133 .byte 3 # Abbrev [3] 0x33:0xa DW_TAG_formal_parameter 134 .byte 1 # DW_AT_location 135 .byte 85 136 .byte 6 # DW_AT_name 137 .byte 0 # DW_AT_decl_file 138 .byte 1 # DW_AT_decl_line 139 .long 62 # DW_AT_type 140 .byte 0 # End Of Children Mark 141 .byte 4 # Abbrev [4] 0x3e:0x4 DW_TAG_base_type 142 .byte 5 # DW_AT_name 143 .byte 5 # DW_AT_encoding 144 .byte 4 # DW_AT_byte_size 145 .byte 0 # End Of Children Mark 146.Ldebug_info_end0: 147 .section .debug_str_offsets,"",@progbits 148 .long 32 # Length of String Offsets Set 149 .short 5 150 .short 0 151.Lstr_offsets_base0: 152 .section .debug_str,"MS",@progbits,1 153.Linfo_string0: 154 .asciz "clang version 15.0.0" # string offset=0 155.Linfo_string1: 156 .asciz "helper.cpp" # string offset=134 157.Linfo_string2: 158 .asciz "." # string offset=145 159.Linfo_string3: 160 .asciz "_Z4foo0i" # string offset=193 161.Linfo_string4: 162 .asciz "foo0" # string offset=202 163.Linfo_string5: 164 .asciz "int" # string offset=207 165.Linfo_string6: 166 .asciz "argc" # string offset=211 167 .section .debug_str_offsets,"",@progbits 168 .long .Linfo_string0 169 .long .Linfo_string1 170 .long .Linfo_string2 171 .long .Linfo_string3 172 .long .Linfo_string4 173 .long .Linfo_string5 174 .long .Linfo_string6 175 .section .debug_addr,"",@progbits 176 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution 177.Ldebug_addr_start0: 178 .short 5 # DWARF version number 179 .byte 8 # Address size 180 .byte 0 # Segment selector size 181.Laddr_table_base0: 182 .quad .Lfunc_begin0 183.Ldebug_addr_end0: 184 .ident "clang version 15.0.0" 185 .section ".note.GNU-stack","",@progbits 186 .addrsig 187 .section .debug_line,"",@progbits 188.Lline_table_start0: 189