1 # Assembly generated from convert-linked.ll
4 .globl foo # -- Begin function foo
9 .file 1 "/tmp" "dbg-foo.c" md5 0xb35f80a032deb2a30bc187d564b5a775
10 .loc 1 8 0 # dbg-foo.c:8:0
15 #DEBUG_VALUE: foo:x <- $al
16 #DEBUG_VALUE: foo:y <- [DW_OP_lit0, DW_OP_plus, DW_OP_LLVM_convert 8 5, DW_OP_LLVM_convert 32 5, DW_OP_stack_value] 32
17 .loc 1 10 3 prologue_end # dbg-foo.c:10:3
23 .size foo, .Lfunc_end0-foo
26 .globl bar # -- Begin function bar
31 .file 2 "/tmp" "dbg-bar.c" md5 0x9836bb594260d883960455e7d8bc51ea
32 .loc 2 2 0 # dbg-bar.c:2:0
37 #DEBUG_VALUE: bar:x <- $al
38 #DEBUG_VALUE: bar:z <- [DW_OP_lit0, DW_OP_plus, DW_OP_LLVM_convert 8 5, DW_OP_LLVM_convert 16 5, DW_OP_stack_value] 32
39 .loc 2 4 3 prologue_end # dbg-bar.c:4:3
45 .size bar, .Lfunc_end1-bar
48 .section .debug_loclists,"",@progbits
49 .long .Ldebug_list_header_end0-.Ldebug_list_header_start0 # Length
50 .Ldebug_list_header_start0:
52 .byte 8 # Address size
53 .byte 0 # Segment selector size
54 .long 2 # Offset entry count
55 .Lloclists_table_base0:
56 .long .Ldebug_loc0-.Lloclists_table_base0
57 .long .Ldebug_loc1-.Lloclists_table_base0
59 .byte 4 # DW_LLE_offset_pair
60 .uleb128 .Ltmp0-.Lfunc_begin0 # starting offset
61 .uleb128 .Ltmp1-.Lfunc_begin0 # ending offset
62 .byte 1 # Loc expr size
63 .byte 80 # super-register DW_OP_reg0
64 .byte 0 # DW_LLE_end_of_list
66 .byte 4 # DW_LLE_offset_pair
67 .uleb128 .Ltmp3-.Lfunc_begin1 # starting offset
68 .uleb128 .Ltmp4-.Lfunc_begin1 # ending offset
69 .byte 1 # Loc expr size
70 .byte 80 # super-register DW_OP_reg0
71 .byte 0 # DW_LLE_end_of_list
72 .Ldebug_list_header_end0:
73 .section .debug_abbrev,"",@progbits
74 .byte 1 # Abbreviation Code
75 .byte 17 # DW_TAG_compile_unit
76 .byte 1 # DW_CHILDREN_yes
77 .byte 37 # DW_AT_producer
78 .byte 37 # DW_FORM_strx1
79 .byte 19 # DW_AT_language
80 .byte 5 # DW_FORM_data2
82 .byte 37 # DW_FORM_strx1
83 .byte 114 # DW_AT_str_offsets_base
84 .byte 23 # DW_FORM_sec_offset
85 .byte 16 # DW_AT_stmt_list
86 .byte 23 # DW_FORM_sec_offset
87 .byte 27 # DW_AT_comp_dir
88 .byte 37 # DW_FORM_strx1
89 .byte 17 # DW_AT_low_pc
90 .byte 27 # DW_FORM_addrx
91 .byte 18 # DW_AT_high_pc
92 .byte 6 # DW_FORM_data4
93 .byte 115 # DW_AT_addr_base
94 .byte 23 # DW_FORM_sec_offset
95 .ascii "\214\001" # DW_AT_loclists_base
96 .byte 23 # DW_FORM_sec_offset
99 .byte 2 # Abbreviation Code
100 .byte 36 # DW_TAG_base_type
101 .byte 0 # DW_CHILDREN_no
103 .byte 37 # DW_FORM_strx1
104 .byte 62 # DW_AT_encoding
105 .byte 11 # DW_FORM_data1
106 .byte 11 # DW_AT_byte_size
107 .byte 11 # DW_FORM_data1
110 .byte 3 # Abbreviation Code
111 .byte 46 # DW_TAG_subprogram
112 .byte 1 # DW_CHILDREN_yes
113 .byte 17 # DW_AT_low_pc
114 .byte 27 # DW_FORM_addrx
115 .byte 18 # DW_AT_high_pc
116 .byte 6 # DW_FORM_data4
117 .byte 64 # DW_AT_frame_base
118 .byte 24 # DW_FORM_exprloc
120 .byte 37 # DW_FORM_strx1
121 .byte 58 # DW_AT_decl_file
122 .byte 11 # DW_FORM_data1
123 .byte 59 # DW_AT_decl_line
124 .byte 11 # DW_FORM_data1
125 .byte 39 # DW_AT_prototyped
126 .byte 25 # DW_FORM_flag_present
127 .byte 73 # DW_AT_type
128 .byte 19 # DW_FORM_ref4
129 .byte 63 # DW_AT_external
130 .byte 25 # DW_FORM_flag_present
133 .byte 4 # Abbreviation Code
134 .byte 5 # DW_TAG_formal_parameter
135 .byte 0 # DW_CHILDREN_no
136 .byte 2 # DW_AT_location
137 .byte 34 # DW_FORM_loclistx
139 .byte 37 # DW_FORM_strx1
140 .byte 58 # DW_AT_decl_file
141 .byte 11 # DW_FORM_data1
142 .byte 59 # DW_AT_decl_line
143 .byte 11 # DW_FORM_data1
144 .byte 73 # DW_AT_type
145 .byte 19 # DW_FORM_ref4
148 .byte 5 # Abbreviation Code
149 .byte 52 # DW_TAG_variable
150 .byte 0 # DW_CHILDREN_no
151 .byte 2 # DW_AT_location
152 .byte 24 # DW_FORM_exprloc
154 .byte 37 # DW_FORM_strx1
155 .byte 58 # DW_AT_decl_file
156 .byte 11 # DW_FORM_data1
157 .byte 59 # DW_AT_decl_line
158 .byte 11 # DW_FORM_data1
159 .byte 73 # DW_AT_type
160 .byte 19 # DW_FORM_ref4
163 .byte 6 # Abbreviation Code
164 .byte 46 # DW_TAG_subprogram
165 .byte 1 # DW_CHILDREN_yes
166 .byte 17 # DW_AT_low_pc
167 .byte 27 # DW_FORM_addrx
168 .byte 18 # DW_AT_high_pc
169 .byte 6 # DW_FORM_data4
170 .byte 64 # DW_AT_frame_base
171 .byte 24 # DW_FORM_exprloc
173 .byte 37 # DW_FORM_strx1
174 .byte 58 # DW_AT_decl_file
175 .byte 11 # DW_FORM_data1
176 .byte 59 # DW_AT_decl_line
177 .byte 11 # DW_FORM_data1
178 .byte 39 # DW_AT_prototyped
179 .byte 25 # DW_FORM_flag_present
180 .byte 73 # DW_AT_type
181 .byte 16 # DW_FORM_ref_addr
182 .byte 63 # DW_AT_external
183 .byte 25 # DW_FORM_flag_present
186 .byte 7 # Abbreviation Code
187 .byte 5 # DW_TAG_formal_parameter
188 .byte 0 # DW_CHILDREN_no
189 .byte 2 # DW_AT_location
190 .byte 34 # DW_FORM_loclistx
192 .byte 37 # DW_FORM_strx1
193 .byte 58 # DW_AT_decl_file
194 .byte 11 # DW_FORM_data1
195 .byte 59 # DW_AT_decl_line
196 .byte 11 # DW_FORM_data1
197 .byte 73 # DW_AT_type
198 .byte 16 # DW_FORM_ref_addr
202 .section .debug_info,"",@progbits
204 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
206 .short 5 # DWARF version number
207 .byte 1 # DWARF Unit Type
208 .byte 8 # Address Size (in bytes)
209 .long .debug_abbrev # Offset Into Abbrev. Section
210 .byte 1 # Abbrev [1] 0xc:0x5d DW_TAG_compile_unit
211 .byte 0 # DW_AT_producer
212 .short 12 # DW_AT_language
214 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base
215 .long .Lline_table_start0 # DW_AT_stmt_list
216 .byte 2 # DW_AT_comp_dir
217 .byte 0 # DW_AT_low_pc
218 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
219 .long .Laddr_table_base0 # DW_AT_addr_base
220 .long .Lloclists_table_base0 # DW_AT_loclists_base
221 .byte 2 # Abbrev [2] 0x27:0x4 DW_TAG_base_type
223 .byte 5 # DW_AT_encoding
224 .byte 1 # DW_AT_byte_size
225 .byte 2 # Abbrev [2] 0x2b:0x4 DW_TAG_base_type
227 .byte 5 # DW_AT_encoding
228 .byte 4 # DW_AT_byte_size
229 .byte 3 # Abbrev [3] 0x2f:0x31 DW_TAG_subprogram
230 .byte 0 # DW_AT_low_pc
231 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
232 .byte 1 # DW_AT_frame_base
235 .byte 1 # DW_AT_decl_file
236 .byte 7 # DW_AT_decl_line
238 .long 96 # DW_AT_type
240 .byte 4 # Abbrev [4] 0x3e:0x9 DW_TAG_formal_parameter
241 .byte 0 # DW_AT_location
242 .byte 10 # DW_AT_name
243 .byte 1 # DW_AT_decl_file
244 .byte 7 # DW_AT_decl_line
245 .long 96 # DW_AT_type
246 .byte 5 # Abbrev [5] 0x47:0x18 DW_TAG_variable
247 .byte 15 # DW_AT_location
253 .asciz "\247\200\200"
255 .asciz "\253\200\200"
257 .byte 11 # DW_AT_name
258 .byte 1 # DW_AT_decl_file
259 .byte 9 # DW_AT_decl_line
260 .long 100 # DW_AT_type
261 .byte 0 # End Of Children Mark
262 .byte 2 # Abbrev [2] 0x60:0x4 DW_TAG_base_type
264 .byte 6 # DW_AT_encoding
265 .byte 1 # DW_AT_byte_size
266 .byte 2 # Abbrev [2] 0x64:0x4 DW_TAG_base_type
267 .byte 12 # DW_AT_name
268 .byte 5 # DW_AT_encoding
269 .byte 4 # DW_AT_byte_size
270 .byte 0 # End Of Children Mark
273 .long .Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit
275 .short 5 # DWARF version number
276 .byte 1 # DWARF Unit Type
277 .byte 8 # Address Size (in bytes)
278 .long .debug_abbrev # Offset Into Abbrev. Section
279 .byte 1 # Abbrev [1] 0xc:0x59 DW_TAG_compile_unit
280 .byte 0 # DW_AT_producer
281 .short 12 # DW_AT_language
283 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base
284 .long .Lline_table_start0 # DW_AT_stmt_list
285 .byte 2 # DW_AT_comp_dir
286 .byte 1 # DW_AT_low_pc
287 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc
288 .long .Laddr_table_base0 # DW_AT_addr_base
289 .long .Lloclists_table_base0 # DW_AT_loclists_base
290 .byte 2 # Abbrev [2] 0x27:0x4 DW_TAG_base_type
292 .byte 5 # DW_AT_encoding
293 .byte 1 # DW_AT_byte_size
294 .byte 2 # Abbrev [2] 0x2b:0x4 DW_TAG_base_type
296 .byte 5 # DW_AT_encoding
297 .byte 2 # DW_AT_byte_size
298 .byte 6 # Abbrev [6] 0x2f:0x31 DW_TAG_subprogram
299 .byte 1 # DW_AT_low_pc
300 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc
301 .byte 1 # DW_AT_frame_base
304 .byte 2 # DW_AT_decl_file
305 .byte 1 # DW_AT_decl_line
307 .long .debug_info+96 # DW_AT_type
309 .byte 7 # Abbrev [7] 0x3e:0x9 DW_TAG_formal_parameter
310 .byte 1 # DW_AT_location
311 .byte 10 # DW_AT_name
312 .byte 2 # DW_AT_decl_file
313 .byte 1 # DW_AT_decl_line
314 .long .debug_info+96 # DW_AT_type
315 .byte 5 # Abbrev [5] 0x47:0x18 DW_TAG_variable
316 .byte 15 # DW_AT_location
322 .asciz "\247\200\200"
324 .asciz "\253\200\200"
326 .byte 13 # DW_AT_name
327 .byte 2 # DW_AT_decl_file
328 .byte 3 # DW_AT_decl_line
329 .long 96 # DW_AT_type
330 .byte 0 # End Of Children Mark
331 .byte 2 # Abbrev [2] 0x60:0x4 DW_TAG_base_type
332 .byte 14 # DW_AT_name
333 .byte 5 # DW_AT_encoding
334 .byte 2 # DW_AT_byte_size
335 .byte 0 # End Of Children Mark
337 .section .debug_str_offsets,"",@progbits
338 .long 64 # Length of String Offsets Set
342 .section .debug_str,"MS",@progbits,1
344 .asciz "clang version 9.0.0 " # string offset=0
346 .asciz "dbg-foo.c" # string offset=21
348 .asciz "/tmp" # string offset=31
350 .asciz "dbg-bar.c" # string offset=36
352 .asciz "DW_ATE_signed_32" # string offset=46
354 .asciz "DW_ATE_signed_8" # string offset=63
356 .asciz "DW_ATE_signed_16" # string offset=79
358 .asciz "foo" # string offset=96
360 .asciz "signed char" # string offset=100
362 .asciz "bar" # string offset=112
364 .asciz "x" # string offset=116
366 .asciz "y" # string offset=118
368 .asciz "int" # string offset=120
370 .asciz "z" # string offset=124
372 .asciz "short" # string offset=126
373 .section .debug_str_offsets,"",@progbits
384 .long .Linfo_string10
385 .long .Linfo_string11
386 .long .Linfo_string12
387 .long .Linfo_string13
388 .long .Linfo_string14
389 .section .debug_addr,"",@progbits
390 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution
392 .short 5 # DWARF version number
393 .byte 8 # Address size
394 .byte 0 # Segment selector size
399 .ident "clang version 9.0.0 "
400 .ident "clang version 9.0.0 "
401 .section ".note.GNU-stack","",@progbits
402 .section .debug_line,"",@progbits