tizen 2.4 release
[external/binutils.git] / gdb / testsuite / gdb.dwarf2 / clztest.S
1 /* This testcase is part of GDB, the GNU debugger.
2
3    Copyright 2011-2014 Free Software Foundation, Inc.
4
5    This program is free software; you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; either version 3 of the License, or
8    (at your option) any later version.
9
10    This program is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14
15    You should have received a copy of the GNU General Public License
16    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
17
18 /* This source file was generated from clztest.c using the following
19    command line:
20
21    gcc -dA -S -g -O2 clztest.c -o clztest.S
22
23 */
24
25         .file   "clztest.c"
26         .text
27 .Ltext0:
28         .p2align 4,,15
29         .globl  foo
30         .type   foo, @function
31 foo:
32 .LFB0:
33         # clztest.c:8
34 .LM1:
35 .LVL0:
36 # BLOCK 2 freq:10000 seq:0
37 # PRED: ENTRY [100.0%]  (fallthru)
38         # clztest.c:9
39 .LM2:
40         bsrq    %rdi, %rax
41         xorl    $63, %eax
42         cltq
43 .LVL1:
44         # clztest.c:11
45 .LM3:
46 .LVL2:
47         # clztest.c:12
48 .LM4:
49         movl    vv(%rip), %edx
50         addl    $1, %edx
51         movl    %edx, vv(%rip)
52 # SUCC: EXIT [100.0%] 
53         # clztest.c:14
54 .LM5:
55         ret
56 .LFE0:
57         .size   foo, .-foo
58         .p2align 4,,15
59         .globl  bar
60         .type   bar, @function
61 bar:
62 .LFB1:
63         # clztest.c:18
64 .LM6:
65 .LVL3:
66 # BLOCK 2 freq:10000 seq:0
67 # PRED: ENTRY [100.0%]  (fallthru)
68         # clztest.c:19
69 .LM7:
70         bsrq    %rdi, %rax
71         xorl    $63, %eax
72         cltq
73 .LVL4:
74         # clztest.c:21
75 .LM8:
76 .LVL5:
77         # clztest.c:22
78 .LM9:
79         movl    vv(%rip), %edx
80         addl    $1, %edx
81         movl    %edx, vv(%rip)
82 # SUCC: EXIT [100.0%] 
83         # clztest.c:24
84 .LM10:
85         ret
86 .LFE1:
87         .size   bar, .-bar
88         .section        .text.startup,"ax",@progbits
89         .p2align 4,,15
90         .globl  _start
91         .type   _start, @function
92 _start:
93 .LFB2:
94         # clztest.c:28
95 .LM11:
96 # BLOCK 2 freq:10000 seq:0
97 # PRED: ENTRY [100.0%]  (fallthru)
98         pushq   %rbx
99 .LCFI0:
100         # clztest.c:29
101 .LM12:
102         movl    vv(%rip), %ebx
103 .LVL6:
104         # clztest.c:30
105 .LM13:
106         movslq  %ebx, %rbx
107 .LVL7:
108         leaq    1193046(%rbx), %rdi
109         call    foo
110 .LVL8:
111         # clztest.c:31
112 .LM14:
113         leaq    2147483647(%rbx), %rdi
114         call    bar
115 .LVL9:
116         # clztest.c:33
117 .LM15:
118         xorl    %eax, %eax
119         popq    %rbx
120 .LCFI1:
121 .LVL10:
122 # SUCC: EXIT [100.0%] 
123         ret
124 .LFE2:
125         .size   _start, .-_start
126         .comm   vv,4,4
127 #APP
128         .section        .debug_frame,"",@progbits
129 .Lframe0:
130         .long   .LECIE0-.LSCIE0 # Length of Common Information Entry
131 .LSCIE0:
132         .long   0xffffffff      # CIE Identifier Tag
133         .byte   0x1     # CIE Version
134         .ascii "\0"     # CIE Augmentation
135         .uleb128 0x1    # CIE Code Alignment Factor
136         .sleb128 -8     # CIE Data Alignment Factor
137         .byte   0x10    # CIE RA Column
138         .byte   0xc     # DW_CFA_def_cfa
139         .uleb128 0x7
140         .uleb128 0x8
141         .byte   0x90    # DW_CFA_offset, column 0x10
142         .uleb128 0x1
143         .align 8
144 .LECIE0:
145 .LSFDE0:
146         .long   .LEFDE0-.LASFDE0        # FDE Length
147 .LASFDE0:
148         .long   .Lframe0        # FDE CIE offset
149         .quad   .LFB0   # FDE initial location
150         .quad   .LFE0-.LFB0     # FDE address range
151         .align 8
152 .LEFDE0:
153 .LSFDE2:
154         .long   .LEFDE2-.LASFDE2        # FDE Length
155 .LASFDE2:
156         .long   .Lframe0        # FDE CIE offset
157         .quad   .LFB1   # FDE initial location
158         .quad   .LFE1-.LFB1     # FDE address range
159         .align 8
160 .LEFDE2:
161 .LSFDE4:
162         .long   .LEFDE4-.LASFDE4        # FDE Length
163 .LASFDE4:
164         .long   .Lframe0        # FDE CIE offset
165         .quad   .LFB2   # FDE initial location
166         .quad   .LFE2-.LFB2     # FDE address range
167         .byte   0x4     # DW_CFA_advance_loc4
168         .long   .LCFI0-.LFB2
169         .byte   0xe     # DW_CFA_def_cfa_offset
170         .uleb128 0x10
171         .byte   0x83    # DW_CFA_offset, column 0x3
172         .uleb128 0x2
173         .byte   0x4     # DW_CFA_advance_loc4
174         .long   .LCFI1-.LCFI0
175         .byte   0xe     # DW_CFA_def_cfa_offset
176         .uleb128 0x8
177         .align 8
178 .LEFDE4:
179 #NO_APP
180 #APP
181         .section        .eh_frame,"aw",@progbits
182 .Lframe1:
183         .long   .LECIE1-.LSCIE1 # Length of Common Information Entry
184 .LSCIE1:
185         .long   0       # CIE Identifier Tag
186         .byte   0x1     # CIE Version
187         .ascii "zR\0"   # CIE Augmentation
188         .uleb128 0x1    # CIE Code Alignment Factor
189         .sleb128 -8     # CIE Data Alignment Factor
190         .byte   0x10    # CIE RA Column
191         .uleb128 0x1    # Augmentation size
192         .byte   0x3     # FDE Encoding (udata4)
193         .byte   0xc     # DW_CFA_def_cfa
194         .uleb128 0x7
195         .uleb128 0x8
196         .byte   0x90    # DW_CFA_offset, column 0x10
197         .uleb128 0x1
198         .align 8
199 .LECIE1:
200 .LSFDE7:
201         .long   .LEFDE7-.LASFDE7        # FDE Length
202 .LASFDE7:
203         .long   .LASFDE7-.Lframe1       # FDE CIE offset
204         .long   .LFB0   # FDE initial location
205         .long   .LFE0-.LFB0     # FDE address range
206         .uleb128 0      # Augmentation size
207         .align 8
208 .LEFDE7:
209 .LSFDE9:
210         .long   .LEFDE9-.LASFDE9        # FDE Length
211 .LASFDE9:
212         .long   .LASFDE9-.Lframe1       # FDE CIE offset
213         .long   .LFB1   # FDE initial location
214         .long   .LFE1-.LFB1     # FDE address range
215         .uleb128 0      # Augmentation size
216         .align 8
217 .LEFDE9:
218 .LSFDE11:
219         .long   .LEFDE11-.LASFDE11      # FDE Length
220 .LASFDE11:
221         .long   .LASFDE11-.Lframe1      # FDE CIE offset
222         .long   .LFB2   # FDE initial location
223         .long   .LFE2-.LFB2     # FDE address range
224         .uleb128 0      # Augmentation size
225         .byte   0x4     # DW_CFA_advance_loc4
226         .long   .LCFI0-.LFB2
227         .byte   0xe     # DW_CFA_def_cfa_offset
228         .uleb128 0x10
229         .byte   0x83    # DW_CFA_offset, column 0x3
230         .uleb128 0x2
231         .byte   0x4     # DW_CFA_advance_loc4
232         .long   .LCFI1-.LCFI0
233         .byte   0xe     # DW_CFA_def_cfa_offset
234         .uleb128 0x8
235         .align 8
236 .LEFDE11:
237 #NO_APP
238         .text
239 .Letext0:
240         .section        .debug_info,"",@progbits
241 .Ldebug_info0:
242         .long   0x15a   # Length of Compilation Unit Info
243         .value  0x2     # DWARF version number
244         .long   .Ldebug_abbrev0 # Offset Into Abbrev. Section
245         .byte   0x8     # Pointer Size (in bytes)
246         .uleb128 0x1    # (DIE (0xb) DW_TAG_compile_unit)
247         .long   .LASF1  # DW_AT_producer: "GNU C 4.7.0 20110511 (experimental)"
248         .byte   0x1     # DW_AT_language
249         .long   .LASF2  # DW_AT_name: "clztest.c"
250         .long   .LASF3  # DW_AT_comp_dir: "/usr/src/gcc/obj/gcc"
251         .long   .Ldebug_ranges0+0       # DW_AT_ranges
252         .quad   0       # DW_AT_low_pc
253         .quad   0       # DW_AT_entry_pc
254         .long   .Ldebug_line0   # DW_AT_stmt_list
255         .uleb128 0x2    # (DIE (0x31) DW_TAG_subprogram)
256         .byte   0x1     # DW_AT_external
257         .ascii "foo\0"  # DW_AT_name
258         .byte   0x1     # DW_AT_decl_file (clztest.c)
259         .byte   0x7     # DW_AT_decl_line
260         .byte   0x1     # DW_AT_prototyped
261         .long   0x7a    # DW_AT_type
262         .quad   .LFB0   # DW_AT_low_pc
263         .quad   .LFE0   # DW_AT_high_pc
264         .byte   0x2     # DW_AT_frame_base
265         .byte   0x77    # DW_OP_breg7
266         .sleb128 8
267         .byte   0x1     # DW_AT_GNU_all_call_sites
268         .long   0x7a    # DW_AT_sibling
269         .uleb128 0x3    # (DIE (0x56) DW_TAG_formal_parameter)
270         .ascii "x\0"    # DW_AT_name
271         .byte   0x1     # DW_AT_decl_file (clztest.c)
272         .byte   0x7     # DW_AT_decl_line
273         .long   0x7a    # DW_AT_type
274         .byte   0x1     # DW_AT_location
275         .byte   0x55    # DW_OP_reg5
276         .uleb128 0x4    # (DIE (0x61) DW_TAG_variable)
277         .ascii "f\0"    # DW_AT_name
278         .byte   0x1     # DW_AT_decl_file (clztest.c)
279         .byte   0x9     # DW_AT_decl_line
280         .long   0x7a    # DW_AT_type
281         .byte   0x1     # DW_AT_location
282         .byte   0x50    # DW_OP_reg0
283         .uleb128 0x5    # (DIE (0x6c) DW_TAG_variable)
284         .ascii "g\0"    # DW_AT_name
285         .byte   0x1     # DW_AT_decl_file (clztest.c)
286         .byte   0xa     # DW_AT_decl_line
287         .long   0x7a    # DW_AT_type
288         .long   .LLST0  # DW_AT_location
289         .byte   0       # end of children of DIE 0x31
290         .uleb128 0x6    # (DIE (0x7a) DW_TAG_base_type)
291         .byte   0x8     # DW_AT_byte_size
292         .byte   0x5     # DW_AT_encoding
293         .long   .LASF0  # DW_AT_name: "long int"
294         .uleb128 0x2    # (DIE (0x81) DW_TAG_subprogram)
295         .byte   0x1     # DW_AT_external
296         .ascii "bar\0"  # DW_AT_name
297         .byte   0x1     # DW_AT_decl_file (clztest.c)
298         .byte   0x11    # DW_AT_decl_line
299         .byte   0x1     # DW_AT_prototyped
300         .long   0x7a    # DW_AT_type
301         .quad   .LFB1   # DW_AT_low_pc
302         .quad   .LFE1   # DW_AT_high_pc
303         .byte   0x2     # DW_AT_frame_base
304         .byte   0x77    # DW_OP_breg7
305         .sleb128 8
306         .byte   0x1     # DW_AT_GNU_all_call_sites
307         .long   0xca    # DW_AT_sibling
308         .uleb128 0x3    # (DIE (0xa6) DW_TAG_formal_parameter)
309         .ascii "x\0"    # DW_AT_name
310         .byte   0x1     # DW_AT_decl_file (clztest.c)
311         .byte   0x11    # DW_AT_decl_line
312         .long   0x7a    # DW_AT_type
313         .byte   0x1     # DW_AT_location
314         .byte   0x55    # DW_OP_reg5
315         .uleb128 0x4    # (DIE (0xb1) DW_TAG_variable)
316         .ascii "f\0"    # DW_AT_name
317         .byte   0x1     # DW_AT_decl_file (clztest.c)
318         .byte   0x13    # DW_AT_decl_line
319         .long   0x7a    # DW_AT_type
320         .byte   0x1     # DW_AT_location
321         .byte   0x50    # DW_OP_reg0
322         .uleb128 0x5    # (DIE (0xbc) DW_TAG_variable)
323         .ascii "g\0"    # DW_AT_name
324         .byte   0x1     # DW_AT_decl_file (clztest.c)
325         .byte   0x14    # DW_AT_decl_line
326         .long   0x7a    # DW_AT_type
327         .long   .LLST1  # DW_AT_location
328         .byte   0       # end of children of DIE 0x81
329         .uleb128 0x7    # (DIE (0xca) DW_TAG_subprogram)
330         .byte   0x1     # DW_AT_external
331         .long   .LASF4  # DW_AT_name: "main"
332         .byte   0x1     # DW_AT_decl_file (clztest.c)
333         .byte   0x1b    # DW_AT_decl_line
334         .long   0x130   # DW_AT_type
335         .quad   .LFB2   # DW_AT_low_pc
336         .quad   .LFE2   # DW_AT_high_pc
337         .long   .LLST2  # DW_AT_frame_base
338         .byte   0x1     # DW_AT_GNU_all_call_sites
339         .long   0x130   # DW_AT_sibling
340         .uleb128 0x5    # (DIE (0xef) DW_TAG_variable)
341         .ascii "x\0"    # DW_AT_name
342         .byte   0x1     # DW_AT_decl_file (clztest.c)
343         .byte   0x1d    # DW_AT_decl_line
344         .long   0x7a    # DW_AT_type
345         .long   .LLST3  # DW_AT_location
346         .uleb128 0x8    # (DIE (0xfc) DW_TAG_GNU_call_site)
347         .quad   .LVL8   # DW_AT_low_pc
348         .long   0x31    # DW_AT_abstract_origin
349         .long   0x117   # DW_AT_sibling
350         .uleb128 0x9    # (DIE (0x10d) DW_TAG_GNU_call_site_parameter)
351         .byte   0x1     # DW_AT_location
352         .byte   0x55    # DW_OP_reg5
353         .byte   0x5     # DW_AT_GNU_call_site_value
354         .byte   0x73    # DW_OP_breg3
355         .sleb128 1193046
356         .byte   0       # end of children of DIE 0xfc
357         .uleb128 0xa    # (DIE (0x117) DW_TAG_GNU_call_site)
358         .quad   .LVL9   # DW_AT_low_pc
359         .long   0x81    # DW_AT_abstract_origin
360         .uleb128 0x9    # (DIE (0x124) DW_TAG_GNU_call_site_parameter)
361         .byte   0x1     # DW_AT_location
362         .byte   0x55    # DW_OP_reg5
363         .byte   0x6     # DW_AT_GNU_call_site_value
364         .byte   0x73    # DW_OP_breg3
365         .sleb128 2147483647
366         .byte   0       # end of children of DIE 0x117
367         .byte   0       # end of children of DIE 0xca
368         .uleb128 0xb    # (DIE (0x130) DW_TAG_base_type)
369         .byte   0x4     # DW_AT_byte_size
370         .byte   0x5     # DW_AT_encoding
371         .ascii "int\0"  # DW_AT_name
372         .uleb128 0xc    # (DIE (0x137) DW_TAG_variable)
373         .ascii "vv\0"   # DW_AT_name
374         .byte   0x1     # DW_AT_decl_file (clztest.c)
375         .byte   0x4     # DW_AT_decl_line
376         .long   0x143   # DW_AT_type
377         .byte   0x1     # DW_AT_external
378         .byte   0x1     # DW_AT_declaration
379         .uleb128 0xd    # (DIE (0x143) DW_TAG_volatile_type)
380         .long   0x130   # DW_AT_type
381         .uleb128 0xe    # (DIE (0x148) DW_TAG_variable)
382         .ascii "vv\0"   # DW_AT_name
383         .byte   0x1     # DW_AT_decl_file (clztest.c)
384         .byte   0x4     # DW_AT_decl_line
385         .long   0x143   # DW_AT_type
386         .byte   0x1     # DW_AT_external
387         .byte   0x9     # DW_AT_location
388         .byte   0x3     # DW_OP_addr
389         .quad   vv
390         .byte   0       # end of children of DIE 0xb
391         .section        .debug_abbrev,"",@progbits
392 .Ldebug_abbrev0:
393         .uleb128 0x1    # (abbrev code)
394         .uleb128 0x11   # (TAG: DW_TAG_compile_unit)
395         .byte   0x1     # DW_children_yes
396         .uleb128 0x25   # (DW_AT_producer)
397         .uleb128 0xe    # (DW_FORM_strp)
398         .uleb128 0x13   # (DW_AT_language)
399         .uleb128 0xb    # (DW_FORM_data1)
400         .uleb128 0x3    # (DW_AT_name)
401         .uleb128 0xe    # (DW_FORM_strp)
402         .uleb128 0x1b   # (DW_AT_comp_dir)
403         .uleb128 0xe    # (DW_FORM_strp)
404         .uleb128 0x55   # (DW_AT_ranges)
405         .uleb128 0x6    # (DW_FORM_data4)
406         .uleb128 0x11   # (DW_AT_low_pc)
407         .uleb128 0x1    # (DW_FORM_addr)
408         .uleb128 0x52   # (DW_AT_entry_pc)
409         .uleb128 0x1    # (DW_FORM_addr)
410         .uleb128 0x10   # (DW_AT_stmt_list)
411         .uleb128 0x6    # (DW_FORM_data4)
412         .byte   0
413         .byte   0
414         .uleb128 0x2    # (abbrev code)
415         .uleb128 0x2e   # (TAG: DW_TAG_subprogram)
416         .byte   0x1     # DW_children_yes
417         .uleb128 0x3f   # (DW_AT_external)
418         .uleb128 0xc    # (DW_FORM_flag)
419         .uleb128 0x3    # (DW_AT_name)
420         .uleb128 0x8    # (DW_FORM_string)
421         .uleb128 0x3a   # (DW_AT_decl_file)
422         .uleb128 0xb    # (DW_FORM_data1)
423         .uleb128 0x3b   # (DW_AT_decl_line)
424         .uleb128 0xb    # (DW_FORM_data1)
425         .uleb128 0x27   # (DW_AT_prototyped)
426         .uleb128 0xc    # (DW_FORM_flag)
427         .uleb128 0x49   # (DW_AT_type)
428         .uleb128 0x13   # (DW_FORM_ref4)
429         .uleb128 0x11   # (DW_AT_low_pc)
430         .uleb128 0x1    # (DW_FORM_addr)
431         .uleb128 0x12   # (DW_AT_high_pc)
432         .uleb128 0x1    # (DW_FORM_addr)
433         .uleb128 0x40   # (DW_AT_frame_base)
434         .uleb128 0xa    # (DW_FORM_block1)
435         .uleb128 0x2117 # (DW_AT_GNU_all_call_sites)
436         .uleb128 0xc    # (DW_FORM_flag)
437         .uleb128 0x1    # (DW_AT_sibling)
438         .uleb128 0x13   # (DW_FORM_ref4)
439         .byte   0
440         .byte   0
441         .uleb128 0x3    # (abbrev code)
442         .uleb128 0x5    # (TAG: DW_TAG_formal_parameter)
443         .byte   0       # DW_children_no
444         .uleb128 0x3    # (DW_AT_name)
445         .uleb128 0x8    # (DW_FORM_string)
446         .uleb128 0x3a   # (DW_AT_decl_file)
447         .uleb128 0xb    # (DW_FORM_data1)
448         .uleb128 0x3b   # (DW_AT_decl_line)
449         .uleb128 0xb    # (DW_FORM_data1)
450         .uleb128 0x49   # (DW_AT_type)
451         .uleb128 0x13   # (DW_FORM_ref4)
452         .uleb128 0x2    # (DW_AT_location)
453         .uleb128 0xa    # (DW_FORM_block1)
454         .byte   0
455         .byte   0
456         .uleb128 0x4    # (abbrev code)
457         .uleb128 0x34   # (TAG: DW_TAG_variable)
458         .byte   0       # DW_children_no
459         .uleb128 0x3    # (DW_AT_name)
460         .uleb128 0x8    # (DW_FORM_string)
461         .uleb128 0x3a   # (DW_AT_decl_file)
462         .uleb128 0xb    # (DW_FORM_data1)
463         .uleb128 0x3b   # (DW_AT_decl_line)
464         .uleb128 0xb    # (DW_FORM_data1)
465         .uleb128 0x49   # (DW_AT_type)
466         .uleb128 0x13   # (DW_FORM_ref4)
467         .uleb128 0x2    # (DW_AT_location)
468         .uleb128 0xa    # (DW_FORM_block1)
469         .byte   0
470         .byte   0
471         .uleb128 0x5    # (abbrev code)
472         .uleb128 0x34   # (TAG: DW_TAG_variable)
473         .byte   0       # DW_children_no
474         .uleb128 0x3    # (DW_AT_name)
475         .uleb128 0x8    # (DW_FORM_string)
476         .uleb128 0x3a   # (DW_AT_decl_file)
477         .uleb128 0xb    # (DW_FORM_data1)
478         .uleb128 0x3b   # (DW_AT_decl_line)
479         .uleb128 0xb    # (DW_FORM_data1)
480         .uleb128 0x49   # (DW_AT_type)
481         .uleb128 0x13   # (DW_FORM_ref4)
482         .uleb128 0x2    # (DW_AT_location)
483         .uleb128 0x6    # (DW_FORM_data4)
484         .byte   0
485         .byte   0
486         .uleb128 0x6    # (abbrev code)
487         .uleb128 0x24   # (TAG: DW_TAG_base_type)
488         .byte   0       # DW_children_no
489         .uleb128 0xb    # (DW_AT_byte_size)
490         .uleb128 0xb    # (DW_FORM_data1)
491         .uleb128 0x3e   # (DW_AT_encoding)
492         .uleb128 0xb    # (DW_FORM_data1)
493         .uleb128 0x3    # (DW_AT_name)
494         .uleb128 0xe    # (DW_FORM_strp)
495         .byte   0
496         .byte   0
497         .uleb128 0x7    # (abbrev code)
498         .uleb128 0x2e   # (TAG: DW_TAG_subprogram)
499         .byte   0x1     # DW_children_yes
500         .uleb128 0x3f   # (DW_AT_external)
501         .uleb128 0xc    # (DW_FORM_flag)
502         .uleb128 0x3    # (DW_AT_name)
503         .uleb128 0xe    # (DW_FORM_strp)
504         .uleb128 0x3a   # (DW_AT_decl_file)
505         .uleb128 0xb    # (DW_FORM_data1)
506         .uleb128 0x3b   # (DW_AT_decl_line)
507         .uleb128 0xb    # (DW_FORM_data1)
508         .uleb128 0x49   # (DW_AT_type)
509         .uleb128 0x13   # (DW_FORM_ref4)
510         .uleb128 0x11   # (DW_AT_low_pc)
511         .uleb128 0x1    # (DW_FORM_addr)
512         .uleb128 0x12   # (DW_AT_high_pc)
513         .uleb128 0x1    # (DW_FORM_addr)
514         .uleb128 0x40   # (DW_AT_frame_base)
515         .uleb128 0x6    # (DW_FORM_data4)
516         .uleb128 0x2117 # (DW_AT_GNU_all_call_sites)
517         .uleb128 0xc    # (DW_FORM_flag)
518         .uleb128 0x1    # (DW_AT_sibling)
519         .uleb128 0x13   # (DW_FORM_ref4)
520         .byte   0
521         .byte   0
522         .uleb128 0x8    # (abbrev code)
523         .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site)
524         .byte   0x1     # DW_children_yes
525         .uleb128 0x11   # (DW_AT_low_pc)
526         .uleb128 0x1    # (DW_FORM_addr)
527         .uleb128 0x31   # (DW_AT_abstract_origin)
528         .uleb128 0x13   # (DW_FORM_ref4)
529         .uleb128 0x1    # (DW_AT_sibling)
530         .uleb128 0x13   # (DW_FORM_ref4)
531         .byte   0
532         .byte   0
533         .uleb128 0x9    # (abbrev code)
534         .uleb128 0x410a # (TAG: DW_TAG_GNU_call_site_parameter)
535         .byte   0       # DW_children_no
536         .uleb128 0x2    # (DW_AT_location)
537         .uleb128 0xa    # (DW_FORM_block1)
538         .uleb128 0x2111 # (DW_AT_GNU_call_site_value)
539         .uleb128 0xa    # (DW_FORM_block1)
540         .byte   0
541         .byte   0
542         .uleb128 0xa    # (abbrev code)
543         .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site)
544         .byte   0x1     # DW_children_yes
545         .uleb128 0x11   # (DW_AT_low_pc)
546         .uleb128 0x1    # (DW_FORM_addr)
547         .uleb128 0x31   # (DW_AT_abstract_origin)
548         .uleb128 0x13   # (DW_FORM_ref4)
549         .byte   0
550         .byte   0
551         .uleb128 0xb    # (abbrev code)
552         .uleb128 0x24   # (TAG: DW_TAG_base_type)
553         .byte   0       # DW_children_no
554         .uleb128 0xb    # (DW_AT_byte_size)
555         .uleb128 0xb    # (DW_FORM_data1)
556         .uleb128 0x3e   # (DW_AT_encoding)
557         .uleb128 0xb    # (DW_FORM_data1)
558         .uleb128 0x3    # (DW_AT_name)
559         .uleb128 0x8    # (DW_FORM_string)
560         .byte   0
561         .byte   0
562         .uleb128 0xc    # (abbrev code)
563         .uleb128 0x34   # (TAG: DW_TAG_variable)
564         .byte   0       # DW_children_no
565         .uleb128 0x3    # (DW_AT_name)
566         .uleb128 0x8    # (DW_FORM_string)
567         .uleb128 0x3a   # (DW_AT_decl_file)
568         .uleb128 0xb    # (DW_FORM_data1)
569         .uleb128 0x3b   # (DW_AT_decl_line)
570         .uleb128 0xb    # (DW_FORM_data1)
571         .uleb128 0x49   # (DW_AT_type)
572         .uleb128 0x13   # (DW_FORM_ref4)
573         .uleb128 0x3f   # (DW_AT_external)
574         .uleb128 0xc    # (DW_FORM_flag)
575         .uleb128 0x3c   # (DW_AT_declaration)
576         .uleb128 0xc    # (DW_FORM_flag)
577         .byte   0
578         .byte   0
579         .uleb128 0xd    # (abbrev code)
580         .uleb128 0x35   # (TAG: DW_TAG_volatile_type)
581         .byte   0       # DW_children_no
582         .uleb128 0x49   # (DW_AT_type)
583         .uleb128 0x13   # (DW_FORM_ref4)
584         .byte   0
585         .byte   0
586         .uleb128 0xe    # (abbrev code)
587         .uleb128 0x34   # (TAG: DW_TAG_variable)
588         .byte   0       # DW_children_no
589         .uleb128 0x3    # (DW_AT_name)
590         .uleb128 0x8    # (DW_FORM_string)
591         .uleb128 0x3a   # (DW_AT_decl_file)
592         .uleb128 0xb    # (DW_FORM_data1)
593         .uleb128 0x3b   # (DW_AT_decl_line)
594         .uleb128 0xb    # (DW_FORM_data1)
595         .uleb128 0x49   # (DW_AT_type)
596         .uleb128 0x13   # (DW_FORM_ref4)
597         .uleb128 0x3f   # (DW_AT_external)
598         .uleb128 0xc    # (DW_FORM_flag)
599         .uleb128 0x2    # (DW_AT_location)
600         .uleb128 0xa    # (DW_FORM_block1)
601         .byte   0
602         .byte   0
603         .byte   0
604         .section        .debug_loc,"",@progbits
605 .Ldebug_loc0:
606 .LLST0:
607         .quad   .LVL1   # Location list begin address (*.LLST0)
608         .quad   .LVL2   # Location list end address (*.LLST0)
609         .value  0x1     # Location expression size
610         .byte   0x50    # DW_OP_reg0
611         .quad   .LVL2   # Location list begin address (*.LLST0)
612         .quad   .LFE0   # Location list end address (*.LLST0)
613         .value  0x36    # Location expression size
614         .byte   0x8     # DW_OP_const1u
615         .byte   0x3f
616         .byte   0x75    # DW_OP_breg5
617         .sleb128 0
618         .byte   0x12    # DW_OP_dup
619         .byte   0x28    # DW_OP_bra
620         .value  0x6
621         .byte   0x13    # DW_OP_drop
622         .byte   0x8     # DW_OP_const1u
623         .byte   0x40
624         .byte   0x2f    # DW_OP_skip
625         .value  0x1c
626         .byte   0x30    # DW_OP_lit0
627         .byte   0x16    # DW_OP_swap
628         .byte   0x12    # DW_OP_dup
629         .byte   0x10    # DW_OP_constu
630         .uleb128 0x8000000000000000
631         .byte   0x1a    # DW_OP_and
632         .byte   0x28    # DW_OP_bra
633         .value  0x9
634         .byte   0x31    # DW_OP_lit1
635         .byte   0x24    # DW_OP_shl
636         .byte   0x16    # DW_OP_swap
637         .byte   0x23    # DW_OP_plus_uconst
638         .uleb128 0x1
639         .byte   0x16    # DW_OP_swap
640         .byte   0x2f    # DW_OP_skip
641         .value  0xffe7
642         .byte   0x13    # DW_OP_drop
643         .byte   0x96    # DW_OP_nop
644         .byte   0x1c    # DW_OP_minus
645         .byte   0x8     # DW_OP_const1u
646         .byte   0x3f
647         .byte   0x27    # DW_OP_xor
648         .byte   0x8     # DW_OP_const1u
649         .byte   0x20
650         .byte   0x24    # DW_OP_shl
651         .byte   0x8     # DW_OP_const1u
652         .byte   0x20
653         .byte   0x26    # DW_OP_shra
654         .byte   0x9f    # DW_OP_stack_value
655         .quad   0       # Location list terminator begin (*.LLST0)
656         .quad   0       # Location list terminator end (*.LLST0)
657 .LLST1:
658         .quad   .LVL4   # Location list begin address (*.LLST1)
659         .quad   .LVL5   # Location list end address (*.LLST1)
660         .value  0x1     # Location expression size
661         .byte   0x50    # DW_OP_reg0
662         .quad   .LVL5   # Location list begin address (*.LLST1)
663         .quad   .LFE1   # Location list end address (*.LLST1)
664         .value  0x36    # Location expression size
665         .byte   0x8     # DW_OP_const1u
666         .byte   0x3f
667         .byte   0x75    # DW_OP_breg5
668         .sleb128 0
669         .byte   0x12    # DW_OP_dup
670         .byte   0x28    # DW_OP_bra
671         .value  0x6
672         .byte   0x13    # DW_OP_drop
673         .byte   0x8     # DW_OP_const1u
674         .byte   0x40
675         .byte   0x2f    # DW_OP_skip
676         .value  0x1c
677         .byte   0x30    # DW_OP_lit0
678         .byte   0x16    # DW_OP_swap
679         .byte   0x12    # DW_OP_dup
680         .byte   0x10    # DW_OP_constu
681         .uleb128 0x8000000000000000
682         .byte   0x1a    # DW_OP_and
683         .byte   0x28    # DW_OP_bra
684         .value  0x9
685         .byte   0x31    # DW_OP_lit1
686         .byte   0x24    # DW_OP_shl
687         .byte   0x16    # DW_OP_swap
688         .byte   0x23    # DW_OP_plus_uconst
689         .uleb128 0x1
690         .byte   0x16    # DW_OP_swap
691         .byte   0x2f    # DW_OP_skip
692         .value  0xffe7
693         .byte   0x13    # DW_OP_drop
694         .byte   0x96    # DW_OP_nop
695         .byte   0x1c    # DW_OP_minus
696         .byte   0x8     # DW_OP_const1u
697         .byte   0x3f
698         .byte   0x27    # DW_OP_xor
699         .byte   0x8     # DW_OP_const1u
700         .byte   0x20
701         .byte   0x24    # DW_OP_shl
702         .byte   0x8     # DW_OP_const1u
703         .byte   0x20
704         .byte   0x26    # DW_OP_shra
705         .byte   0x9f    # DW_OP_stack_value
706         .quad   0       # Location list terminator begin (*.LLST1)
707         .quad   0       # Location list terminator end (*.LLST1)
708 .LLST2:
709         .quad   .LFB2   # Location list begin address (*.LLST2)
710         .quad   .LCFI0  # Location list end address (*.LLST2)
711         .value  0x2     # Location expression size
712         .byte   0x77    # DW_OP_breg7
713         .sleb128 8
714         .quad   .LCFI0  # Location list begin address (*.LLST2)
715         .quad   .LCFI1  # Location list end address (*.LLST2)
716         .value  0x2     # Location expression size
717         .byte   0x77    # DW_OP_breg7
718         .sleb128 16
719         .quad   .LCFI1  # Location list begin address (*.LLST2)
720         .quad   .LFE2   # Location list end address (*.LLST2)
721         .value  0x2     # Location expression size
722         .byte   0x77    # DW_OP_breg7
723         .sleb128 8
724         .quad   0       # Location list terminator begin (*.LLST2)
725         .quad   0       # Location list terminator end (*.LLST2)
726 .LLST3:
727         .quad   .LVL6   # Location list begin address (*.LLST3)
728         .quad   .LVL7   # Location list end address (*.LLST3)
729         .value  0x9     # Location expression size
730         .byte   0x73    # DW_OP_breg3
731         .sleb128 0
732         .byte   0x8     # DW_OP_const1u
733         .byte   0x20
734         .byte   0x24    # DW_OP_shl
735         .byte   0x8     # DW_OP_const1u
736         .byte   0x20
737         .byte   0x26    # DW_OP_shra
738         .byte   0x9f    # DW_OP_stack_value
739         .quad   .LVL7   # Location list begin address (*.LLST3)
740         .quad   .LVL10  # Location list end address (*.LLST3)
741         .value  0x1     # Location expression size
742         .byte   0x53    # DW_OP_reg3
743         .quad   0       # Location list terminator begin (*.LLST3)
744         .quad   0       # Location list terminator end (*.LLST3)
745         .section        .debug_aranges,"",@progbits
746         .long   0x3c    # Length of Address Ranges Info
747         .value  0x2     # DWARF Version
748         .long   .Ldebug_info0   # Offset of Compilation Unit Info
749         .byte   0x8     # Size of Address
750         .byte   0       # Size of Segment Descriptor
751         .value  0       # Pad to 16 byte boundary
752         .value  0
753         .quad   .Ltext0 # Address
754         .quad   .Letext0-.Ltext0        # Length
755         .quad   .LFB2   # Address
756         .quad   .LFE2-.LFB2     # Length
757         .quad   0
758         .quad   0
759         .section        .debug_ranges,"",@progbits
760 .Ldebug_ranges0:
761         .quad   .Ltext0 # Offset 0
762         .quad   .Letext0
763         .quad   .LFB2   # Offset 0x10
764         .quad   .LFE2
765         .quad   0
766         .quad   0
767         .section        .debug_line,"",@progbits
768 .Ldebug_line0:
769         .long   .LELT0-.LSLT0   # Length of Source Line Info
770 .LSLT0:
771         .value  0x2     # DWARF Version
772         .long   .LELTP0-.LASLTP0        # Prolog Length
773 .LASLTP0:
774         .byte   0x1     # Minimum Instruction Length
775         .byte   0x1     # Default is_stmt_start flag
776         .byte   0xf6    # Line Base Value (Special Opcodes)
777         .byte   0xf2    # Line Range Value (Special Opcodes)
778         .byte   0xd     # Special Opcode Base
779         .byte   0       # opcode: 0x1 has 0 args
780         .byte   0x1     # opcode: 0x2 has 1 args
781         .byte   0x1     # opcode: 0x3 has 1 args
782         .byte   0x1     # opcode: 0x4 has 1 args
783         .byte   0x1     # opcode: 0x5 has 1 args
784         .byte   0       # opcode: 0x6 has 0 args
785         .byte   0       # opcode: 0x7 has 0 args
786         .byte   0       # opcode: 0x8 has 0 args
787         .byte   0x1     # opcode: 0x9 has 1 args
788         .byte   0       # opcode: 0xa has 0 args
789         .byte   0       # opcode: 0xb has 0 args
790         .byte   0x1     # opcode: 0xc has 1 args
791         .byte   0       # End directory table
792         .ascii "clztest.c\0"    # File Entry: 0x1
793         .uleb128 0
794         .uleb128 0
795         .uleb128 0
796         .byte   0       # End file name table
797 .LELTP0:
798         .byte   0       # set address *.LM11
799         .uleb128 0x9
800         .byte   0x2
801         .quad   .LM11
802         .byte   0x32    # line 28
803         .byte   0       # set address *.LM12
804         .uleb128 0x9
805         .byte   0x2
806         .quad   .LM12
807         .byte   0x18    # line 29
808         .byte   0       # set address *.LM13
809         .uleb128 0x9
810         .byte   0x2
811         .quad   .LM13
812         .byte   0x18    # line 30
813         .byte   0       # set address *.LM14
814         .uleb128 0x9
815         .byte   0x2
816         .quad   .LM14
817         .byte   0x18    # line 31
818         .byte   0       # set address *.LM15
819         .uleb128 0x9
820         .byte   0x2
821         .quad   .LM15
822         .byte   0x19    # line 33
823         .byte   0       # set address *.LFE2
824         .uleb128 0x9
825         .byte   0x2
826         .quad   .LFE2
827         .byte   0       # end sequence
828         .uleb128 0x1
829         .byte   0x1
830         .byte   0       # set address *.LM1
831         .uleb128 0x9
832         .byte   0x2
833         .quad   .LM1
834         .byte   0x1e    # line 8
835         .byte   0       # set address *.LM2
836         .uleb128 0x9
837         .byte   0x2
838         .quad   .LM2
839         .byte   0x18    # line 9
840         .byte   0       # set address *.LM3
841         .uleb128 0x9
842         .byte   0x2
843         .quad   .LM3
844         .byte   0x19    # line 11
845         .byte   0       # set address *.LM4
846         .uleb128 0x9
847         .byte   0x2
848         .quad   .LM4
849         .byte   0x18    # line 12
850         .byte   0       # set address *.LM5
851         .uleb128 0x9
852         .byte   0x2
853         .quad   .LM5
854         .byte   0x19    # line 14
855         .byte   0       # set address *.LM6
856         .uleb128 0x9
857         .byte   0x2
858         .quad   .LM6
859         .byte   0x1b    # line 18
860         .byte   0       # set address *.LM7
861         .uleb128 0x9
862         .byte   0x2
863         .quad   .LM7
864         .byte   0x18    # line 19
865         .byte   0       # set address *.LM8
866         .uleb128 0x9
867         .byte   0x2
868         .quad   .LM8
869         .byte   0x19    # line 21
870         .byte   0       # set address *.LM9
871         .uleb128 0x9
872         .byte   0x2
873         .quad   .LM9
874         .byte   0x18    # line 22
875         .byte   0       # set address *.LM10
876         .uleb128 0x9
877         .byte   0x2
878         .quad   .LM10
879         .byte   0x19    # line 24
880         .byte   0       # set address *.Letext0
881         .uleb128 0x9
882         .byte   0x2
883         .quad   .Letext0
884         .byte   0       # end sequence
885         .uleb128 0x1
886         .byte   0x1
887 .LELT0:
888         .section        .debug_str,"MS",@progbits,1
889 .LASF1:
890         .string "GNU C 4.7.0 20110511 (experimental)"
891 .LASF3:
892         .string "/usr/src/gcc/obj/gcc"
893 .LASF0:
894         .string "long int"
895 .LASF4:
896         .string "main"
897 .LASF2:
898         .string "clztest.c"
899         .ident  "GCC: (GNU) 4.7.0 20110511 (experimental)"
900         .section        .note.GNU-stack,"",@progbits