LVU: dump loclists with locviews
[external/binutils.git] / binutils / testsuite / binutils-all / locview-1.s
1         .text
2 .Ltext0:
3 .LFB0:
4         /* locview.c:1 */
5 .LM1:
6         /* view -0 */
7         /* locview.c:2 */
8 .LM2:
9         /* view 1 */
10 .LVL0:
11         /* DEBUG i => 0 */
12         /* locview.c:3 */
13 .LM3:
14         /* view 2 */
15         /* DEBUG j => 0x1 */
16         /* locview.c:4 */
17 .LM4:
18         /* view 3 */
19         /* DEBUG i => 0x2 */
20         /* locview.c:5 */
21 .LM5:
22         /* view 4 */
23         /* DEBUG j => 0x3 */
24         /* locview.c:6 */
25 .LM6:
26         /* view 5 */
27         /* DEBUG k => 0x4 */
28         /* DEBUG l => 0x4 */
29         /* locview.c:7 */
30 .LM7:
31         /* view 6 */
32         /* DEBUG k => 0x5 */
33         /* DEBUG l => 0x5 */
34         /* locview.c:8 */
35 .LM8:
36         /* view 7 */
37         /* DEBUG k => 0x6 */
38         /* DEBUG l => 0x6 */
39         /* locview.c:9 */
40 .LM9:
41         /* view 8 */
42         .byte   0
43 .LFE0:
44 .Letext0:
45
46         .section        .debug_info
47 .Ldebug_info0:
48 .LIbase:
49         .4byte  .LIend - .LIstart       /* Length of Compilation Unit Info */
50 .LIstart:
51         .2byte  0x4     /* DWARF version number */
52         .4byte  .Ldebug_abbrev0 /* Offset Into Abbrev. Section */
53         .byte   0x4     /* Pointer Size (in bytes) */
54 .LIcu:
55         .uleb128 0x1    /* (DIE (cu) DW_TAG_compile_unit) */
56         .ascii "hand-crafted based on GCC output\0"
57         .byte   0xc     /* DW_AT_language */
58         .ascii "locview.c\0"
59         .ascii "/tmp\0"
60         .4byte  0       /* DW_AT_low_pc */
61 .LIsubf:
62         .uleb128 0x2    /* (DIE (subf) DW_TAG_subprogram) */
63         .ascii "f\0"    /* DW_AT_name */
64         .byte   0x1     /* DW_AT_decl_file (locview.c) */
65         .byte   0x1     /* DW_AT_decl_line */
66         .4byte  .LIint-.LIbase  /* DW_AT_type */
67         .4byte  .LFB0   /* DW_AT_low_pc */
68         .4byte  1 /* .LFE0-.LFB0 */     /* DW_AT_high_pc */
69         .uleb128 0x1    /* DW_AT_frame_base */
70         .byte   0x9c    /* DW_OP_call_frame_cfa */
71                         /* DW_AT_GNU_all_call_sites */
72         .4byte  .LIint - .LIbase        /* DW_AT_sibling */
73 .LIvari:
74         .uleb128 0x3    /* (DIE (vari) DW_TAG_variable) */
75         .ascii "i\0"    /* DW_AT_name */
76         .byte   0x1     /* DW_AT_decl_file (locview.c) */
77         .byte   0x2     /* DW_AT_decl_line */
78         .4byte  .LIint-.LIbase  /* DW_AT_type */
79         .4byte  .LLST0  /* DW_AT_location */
80         .4byte  .LVUS0  /* DW_AT_GNU_locviews */
81 .LIvarj:
82         .uleb128 0x3    /* (DIE (varf) DW_TAG_variable) */
83         .ascii "j\0"    /* DW_AT_name */
84         .byte   0x1     /* DW_AT_decl_file (locview.c) */
85         .byte   0x3     /* DW_AT_decl_line */
86         .4byte  .LIint - .LIbase        /* DW_AT_type */
87         .4byte  .LLST1  /* DW_AT_location */
88         .4byte  .LVUS1  /* DW_AT_GNU_locviews */
89 .LIvark:
90         .uleb128 0x5    /* (DIE (vark) DW_TAG_variable) */
91         .ascii "k\0"    /* DW_AT_name */
92         .byte   0x1     /* DW_AT_decl_file (locview.c) */
93         .byte   0x6     /* DW_AT_decl_line */
94         .4byte  .LIint - .LIbase        /* DW_AT_type */
95         .4byte  .LVUS2  /* DW_AT_GNU_locviews */
96         .4byte  .LLST2  /* DW_AT_location */
97         .byte   0       /* end of children of subf */
98 .LIvarl:
99         .uleb128 0x5    /* (DIE (varl) DW_TAG_variable) */
100         .ascii "l\0"    /* DW_AT_name */
101         .byte   0x1     /* DW_AT_decl_file (locview.c) */
102         .byte   0x6     /* DW_AT_decl_line */
103         .4byte  .LIint - .LIbase        /* DW_AT_type */
104         .4byte  .LVUS2  /* DW_AT_GNU_locviews */
105         .4byte  .LLST2  /* DW_AT_location */
106         .byte   0       /* end of children of subf */
107
108 .LIint:
109         .uleb128 0x4    /* (DIE (int) DW_TAG_base_type) */
110         .byte   0x4     /* DW_AT_byte_size */
111         .byte   0x5     /* DW_AT_encoding */
112         .ascii "int\0"  /* DW_AT_name */
113         .byte   0       /* end of children of cu */
114 .LIend:
115
116         .section        .debug_abbrev
117 .Ldebug_abbrev0:
118 .LAbrv1:
119         .uleb128 0x1    /* (abbrev code) */
120         .uleb128 0x11   /* (TAG: DW_TAG_compile_unit) */
121         .byte   0x1     /* DW_children_yes */
122         .uleb128 0x25   /* (DW_AT_producer) */
123         .uleb128 0x8    /* (DW_FORM_string) */
124         .uleb128 0x13   /* (DW_AT_language) */
125         .uleb128 0xb    /* (DW_FORM_data1) */
126         .uleb128 0x3    /* (DW_AT_name) */
127         .uleb128 0x8    /* (DW_FORM_string) */
128         .uleb128 0x1b   /* (DW_AT_comp_dir) */
129         .uleb128 0x8    /* (DW_FORM_string) */
130         .uleb128 0x11   /* (DW_AT_low_pc) */
131         .uleb128 0x1    /* (DW_FORM_addr) */
132         .byte   0
133         .byte   0
134 .LAbrv2:
135         .uleb128 0x2    /* (abbrev code) */
136         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
137         .byte   0x1     /* DW_children_yes */
138         .uleb128 0x3    /* (DW_AT_name) */
139         .uleb128 0x8    /* (DW_FORM_string) */
140         .uleb128 0x3a   /* (DW_AT_decl_file) */
141         .uleb128 0xb    /* (DW_FORM_data1) */
142         .uleb128 0x3b   /* (DW_AT_decl_line) */
143         .uleb128 0xb    /* (DW_FORM_data1) */
144         .uleb128 0x49   /* (DW_AT_type) */
145         .uleb128 0x13   /* (DW_FORM_ref4) */
146         .uleb128 0x11   /* (DW_AT_low_pc) */
147         .uleb128 0x1    /* (DW_FORM_addr) */
148         .uleb128 0x12   /* (DW_AT_high_pc) */
149         .uleb128 0x6    /* (DW_FORM_data4) */
150         .uleb128 0x40   /* (DW_AT_frame_base) */
151         .uleb128 0x18   /* (DW_FORM_exprloc) */
152         .uleb128 0x2117 /* (DW_AT_GNU_all_call_sites) */
153         .uleb128 0x19   /* (DW_FORM_flag_present) */
154         .uleb128 0x1    /* (DW_AT_sibling) */
155         .uleb128 0x13   /* (DW_FORM_ref4) */
156         .byte   0
157         .byte   0
158 .LAbrv3:
159         .uleb128 0x3    /* (abbrev code) */
160         .uleb128 0x34   /* (TAG: DW_TAG_variable) */
161         .byte   0       /* DW_children_no */
162         .uleb128 0x3    /* (DW_AT_name) */
163         .uleb128 0x8    /* (DW_FORM_string) */
164         .uleb128 0x3a   /* (DW_AT_decl_file) */
165         .uleb128 0xb    /* (DW_FORM_data1) */
166         .uleb128 0x3b   /* (DW_AT_decl_line) */
167         .uleb128 0xb    /* (DW_FORM_data1) */
168         .uleb128 0x49   /* (DW_AT_type) */
169         .uleb128 0x13   /* (DW_FORM_ref4) */
170         .uleb128 0x2    /* (DW_AT_location) */
171         .uleb128 0x17   /* (DW_FORM_sec_offset) */
172         .uleb128 0x2137 /* (DW_AT_GNU_locviews) */
173         .uleb128 0x17   /* (DW_FORM_sec_offset) */
174         .byte   0
175         .byte   0
176 .LAbrv4:
177         .uleb128 0x4    /* (abbrev code) */
178         .uleb128 0x24   /* (TAG: DW_TAG_base_type) */
179         .byte   0       /* DW_children_no */
180         .uleb128 0xb    /* (DW_AT_byte_size) */
181         .uleb128 0xb    /* (DW_FORM_data1) */
182         .uleb128 0x3e   /* (DW_AT_encoding) */
183         .uleb128 0xb    /* (DW_FORM_data1) */
184         .uleb128 0x3    /* (DW_AT_name) */
185         .uleb128 0x8    /* (DW_FORM_string) */
186         .byte   0
187         .byte   0
188 .LAbrv5:
189         .uleb128 0x5    /* (abbrev code) */
190         .uleb128 0x34   /* (TAG: DW_TAG_variable) */
191         .byte   0       /* DW_children_no */
192         .uleb128 0x3    /* (DW_AT_name) */
193         .uleb128 0x8    /* (DW_FORM_string) */
194         .uleb128 0x3a   /* (DW_AT_decl_file) */
195         .uleb128 0xb    /* (DW_FORM_data1) */
196         .uleb128 0x3b   /* (DW_AT_decl_line) */
197         .uleb128 0xb    /* (DW_FORM_data1) */
198         .uleb128 0x49   /* (DW_AT_type) */
199         .uleb128 0x13   /* (DW_FORM_ref4) */
200         .uleb128 0x2137 /* (DW_AT_GNU_locviews) */
201         .uleb128 0x17   /* (DW_FORM_sec_offset) */
202         .uleb128 0x2    /* (DW_AT_location) */
203         .uleb128 0x17   /* (DW_FORM_sec_offset) */
204         .byte   0
205         .byte   0
206         .byte   0
207
208         .section        .debug_loc
209 .Ldebug_loc0:
210 .LVUS0:
211         .uleb128 0x2    /* View list begin (*.LVUS0) */
212         .uleb128 0x4    /* View list end (*.LVUS0) */
213         .uleb128 0x4    /* View list begin (*.LVUS0) */
214         .uleb128 0      /* View list end (*.LVUS0) */
215 .LLST0:
216         .4byte  .LVL0   /* Location list begin address (*.LLST0) */
217         .4byte  .LVL0   /* Location list end address (*.LLST0) */
218         .2byte  0x2     /* Location expression size */
219         .byte   0x30    /* DW_OP_lit0 */
220         .byte   0x9f    /* DW_OP_stack_value */
221         .4byte  .LVL0   /* Location list begin address (*.LLST0) */
222         .4byte  .LFE0   /* Location list end address (*.LLST0) */
223         .2byte  0x2     /* Location expression size */
224         .byte   0x32    /* DW_OP_lit2 */
225         .byte   0x9f    /* DW_OP_stack_value */
226         .4byte  0       /* Location list terminator begin (*.LLST0) */
227         .4byte  0       /* Location list terminator end (*.LLST0) */
228 .LLST1:
229         .4byte  .LVL0   /* Location list begin address (*.LLST1) */
230         .4byte  .LVL0   /* Location list end address (*.LLST1) */
231         .2byte  0x2     /* Location expression size */
232         .byte   0x31    /* DW_OP_lit1 */
233         .byte   0x9f    /* DW_OP_stack_value */
234         .4byte  .LVL0   /* Location list begin address (*.LLST1) */
235         .4byte  .LFE0   /* Location list end address (*.LLST1) */
236         .2byte  0x2     /* Location expression size */
237         .byte   0x33    /* DW_OP_lit3 */
238         .byte   0x9f    /* DW_OP_stack_value */
239         .4byte  0       /* Location list terminator begin (*.LLST1) */
240         .4byte  0       /* Location list terminator end (*.LLST1) */
241 .LVUS1:
242         .uleb128 0x3    /* View list begin (*.LVUS1) */
243         .uleb128 0x5    /* View list end (*.LVUS1) */
244         .uleb128 0x5    /* View list begin (*.LVUS1) */
245         .uleb128 0      /* View list end (*.LVUS1) */
246 .LVUS2:
247         .uleb128 0x6    /* View list begin (*.LVUS2) */
248         .uleb128 0x7    /* View list end (*.LVUS2) */
249         .uleb128 0x7    /* View list begin (*.LVUS2) */
250         .uleb128 0x8    /* View list end (*.LVUS2) */
251         .uleb128 0x8    /* View list begin (*.LVUS2) */
252         .uleb128 0      /* View list end (*.LVUS2) */
253 .LLST2:
254         .4byte  .LVL0   /* Location list begin address (*.LLST2) */
255         .4byte  .LVL0   /* Location list end address (*.LLST2) */
256         .2byte  0x2     /* Location expression size */
257         .byte   0x34    /* DW_OP_lit4 */
258         .byte   0x9f    /* DW_OP_stack_value */
259         .4byte  .LVL0   /* Location list begin address (*.LLST2) */
260         .4byte  .LVL0   /* Location list end address (*.LLST2) */
261         .2byte  0x2     /* Location expression size */
262         .byte   0x35    /* DW_OP_lit5 */
263         .byte   0x9f    /* DW_OP_stack_value */
264         .4byte  .LVL0   /* Location list begin address (*.LLST2) */
265         .4byte  .LFE0   /* Location list end address (*.LLST2) */
266         .2byte  0x2     /* Location expression size */
267         .byte   0x36    /* DW_OP_lit6 */
268         .byte   0x9f    /* DW_OP_stack_value */
269         .4byte  0       /* Location list terminator begin (*.LLST2) */
270         .4byte  0       /* Location list terminator end (*.LLST2) */