1 # clang++ -g2 -fdebug-types-section -gdwarf-4 -ffunction-sections
7 # int main(int argc, char* argv[]) {
15 .file 1 "/test" "helper.cpp"
16 .section .debug_types,"G",@progbits,7448148824980338162,comdat
18 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
20 .short 4 # DWARF version number
21 .long .debug_abbrev # Offset Into Abbrev. Section
22 .byte 8 # Address Size (in bytes)
23 .quad 7448148824980338162 # Type Signature
24 .long 30 # Type DIE Offset
25 .byte 1 # Abbrev [1] 0x17:0x25 DW_TAG_type_unit
26 .short 33 # DW_AT_language
27 .long .Lline_table_start0 # DW_AT_stmt_list
28 .byte 2 # Abbrev [2] 0x1e:0x16 DW_TAG_structure_type
29 .byte 5 # DW_AT_calling_convention
30 .long .Linfo_string6 # DW_AT_name
31 .byte 4 # DW_AT_byte_size
32 .byte 1 # DW_AT_decl_file
33 .byte 1 # DW_AT_decl_line
34 .byte 3 # Abbrev [3] 0x27:0xc DW_TAG_member
35 .long .Linfo_string4 # DW_AT_name
37 .byte 1 # DW_AT_decl_file
38 .byte 2 # DW_AT_decl_line
39 .byte 0 # DW_AT_data_member_location
40 .byte 0 # End Of Children Mark
41 .byte 4 # Abbrev [4] 0x34:0x7 DW_TAG_base_type
42 .long .Linfo_string5 # DW_AT_name
43 .byte 5 # DW_AT_encoding
44 .byte 4 # DW_AT_byte_size
45 .byte 0 # End Of Children Mark
47 .type f2,@object # @f2
55 .section .debug_abbrev,"",@progbits
56 .byte 1 # Abbreviation Code
57 .byte 65 # DW_TAG_type_unit
58 .byte 1 # DW_CHILDREN_yes
59 .byte 19 # DW_AT_language
60 .byte 5 # DW_FORM_data2
61 .byte 16 # DW_AT_stmt_list
62 .byte 23 # DW_FORM_sec_offset
65 .byte 2 # Abbreviation Code
66 .byte 19 # DW_TAG_structure_type
67 .byte 1 # DW_CHILDREN_yes
68 .byte 54 # DW_AT_calling_convention
69 .byte 11 # DW_FORM_data1
71 .byte 14 # DW_FORM_strp
72 .byte 11 # DW_AT_byte_size
73 .byte 11 # DW_FORM_data1
74 .byte 58 # DW_AT_decl_file
75 .byte 11 # DW_FORM_data1
76 .byte 59 # DW_AT_decl_line
77 .byte 11 # DW_FORM_data1
80 .byte 3 # Abbreviation Code
81 .byte 13 # DW_TAG_member
82 .byte 0 # DW_CHILDREN_no
84 .byte 14 # DW_FORM_strp
86 .byte 19 # DW_FORM_ref4
87 .byte 58 # DW_AT_decl_file
88 .byte 11 # DW_FORM_data1
89 .byte 59 # DW_AT_decl_line
90 .byte 11 # DW_FORM_data1
91 .byte 56 # DW_AT_data_member_location
92 .byte 11 # DW_FORM_data1
95 .byte 4 # Abbreviation Code
96 .byte 36 # DW_TAG_base_type
97 .byte 0 # DW_CHILDREN_no
99 .byte 14 # DW_FORM_strp
100 .byte 62 # DW_AT_encoding
101 .byte 11 # DW_FORM_data1
102 .byte 11 # DW_AT_byte_size
103 .byte 11 # DW_FORM_data1
106 .byte 5 # Abbreviation Code
107 .byte 17 # DW_TAG_compile_unit
108 .byte 1 # DW_CHILDREN_yes
109 .byte 37 # DW_AT_producer
110 .byte 14 # DW_FORM_strp
111 .byte 19 # DW_AT_language
112 .byte 5 # DW_FORM_data2
114 .byte 14 # DW_FORM_strp
115 .byte 16 # DW_AT_stmt_list
116 .byte 23 # DW_FORM_sec_offset
117 .byte 27 # DW_AT_comp_dir
118 .byte 14 # DW_FORM_strp
121 .byte 6 # Abbreviation Code
122 .byte 52 # DW_TAG_variable
123 .byte 0 # DW_CHILDREN_no
125 .byte 14 # DW_FORM_strp
126 .byte 73 # DW_AT_type
127 .byte 19 # DW_FORM_ref4
128 .byte 63 # DW_AT_external
129 .byte 25 # DW_FORM_flag_present
130 .byte 58 # DW_AT_decl_file
131 .byte 11 # DW_FORM_data1
132 .byte 59 # DW_AT_decl_line
133 .byte 11 # DW_FORM_data1
134 .byte 2 # DW_AT_location
135 .byte 24 # DW_FORM_exprloc
138 .byte 7 # Abbreviation Code
139 .byte 19 # DW_TAG_structure_type
140 .byte 0 # DW_CHILDREN_no
141 .byte 60 # DW_AT_declaration
142 .byte 25 # DW_FORM_flag_present
143 .byte 105 # DW_AT_signature
144 .byte 32 # DW_FORM_ref_sig8
148 .section .debug_info,"",@progbits
150 .long .Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit
152 .short 4 # DWARF version number
153 .long .debug_abbrev # Offset Into Abbrev. Section
154 .byte 8 # Address Size (in bytes)
155 .byte 5 # Abbrev [5] 0xb:0x32 DW_TAG_compile_unit
156 .long .Linfo_string0 # DW_AT_producer
157 .short 33 # DW_AT_language
158 .long .Linfo_string1 # DW_AT_name
159 .long .Lline_table_start0 # DW_AT_stmt_list
160 .long .Linfo_string2 # DW_AT_comp_dir
161 .byte 6 # Abbrev [6] 0x1e:0x15 DW_TAG_variable
162 .long .Linfo_string3 # DW_AT_name
163 .long 51 # DW_AT_type
165 .byte 1 # DW_AT_decl_file
166 .byte 4 # DW_AT_decl_line
167 .byte 9 # DW_AT_location
170 .byte 7 # Abbrev [7] 0x33:0x9 DW_TAG_structure_type
172 .quad 7448148824980338162 # DW_AT_signature
173 .byte 0 # End Of Children Mark
175 .section .debug_str,"MS",@progbits,1
177 .asciz "clang version 18.0.0git" # string offset=0
179 .asciz "helper.cpp" # string offset=24
181 .asciz "/test" # string offset=35
183 .asciz "f2" # string offset=73
185 .asciz "i" # string offset=76
187 .asciz "int" # string offset=78
189 .asciz "Foo" # string offset=82
190 .ident "clang version 18.0.0git"
191 .section ".note.GNU-stack","",@progbits
193 .section .debug_line,"",@progbits