76a59b928e6eb86536f4427fa75aa67be7d36724
[external/binutils.git] / gdb / testsuite / gdb.dwarf2 / dw2-double-set-die-type.S
1 /* This testcase is part of GDB, the GNU debugger.
2
3    Copyright 2010-2016 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 test triggers a complaint when gdb attempts to set a DIE's
19    type twice.  The test was derived from the following source code:
20
21    #include <vector>
22
23    class a
24    {
25    private:
26      class b
27      {
28      public:
29        b () { }
30      };
31
32      std::vector<b> list_;
33    };
34
35   What follows below is a much simplified version of the debug info generated
36   by gcc from the above code.  */
37
38 #define OFFSET(LBL) .Ldie_ ## LBL - .Lcu1_begin
39
40         .section        .debug_info
41 .Lcu1_begin:
42         .4byte  .Lcu1_end - .Lcu1_start /* Length of Compilation Unit Info */
43 .Lcu1_start:
44         .2byte  0x3     /* DWARF version number */
45         .4byte  .Labbrev1_begin /* Offset Into Abbrev. Section */
46         .byte   0x4     /* Pointer Size (in bytes) */
47
48 .Ldie_b:
49         .uleb128 0x1    /* (DIE (0xb) DW_TAG_compile_unit) */
50         .ascii  "GNU C++ 4.4.3 20100127 (Red Hat 4.4.3-4)\0"    /* DW_AT_producer */
51         .byte   0x4     /* DW_AT_language */
52         .ascii  "duplicate-type.cc\0"   /* DW_AT_name */
53         .4byte  .Ldebug_line0   /* DW_AT_stmt_list */
54
55 .Ldie_38:
56         .uleb128 0x3    /* (DIE (0x38) DW_TAG_typedef) */
57         .ascii  "size_t\0"      /* DW_AT_name */
58         .4byte  OFFSET (43)     /* DW_AT_type */
59
60 .Ldie_43:
61         .uleb128 0x2    /* (DIE (0x43) DW_TAG_base_type) */
62         .byte   0x4     /* DW_AT_byte_size */
63         .byte   0x7     /* DW_AT_encoding */
64         .ascii  "long unsigned int\0" /* DW_AT_name */
65
66 .Ldie_4a:
67         .uleb128 0x4    /* (DIE (0x4a) DW_TAG_namespace) */
68         .ascii "std\0"  /* DW_AT_name */
69         .4byte  OFFSET (143)    /* DW_AT_sibling */
70
71 .Ldie_70:
72         .uleb128 0x8    /* (DIE (0x70) DW_TAG_class_type) */
73         .ascii  "allocator<a::b>\0"     /* DW_AT_name */
74         .byte   0x1     /* DW_AT_declaration */
75
76 .Ldie_76:
77         .uleb128 0x9    /* (DIE (0x76) DW_TAG_structure_type) */
78         .ascii  "_Vector_base<a::b, std::allocator<a::b> >\0"   /* DW_AT_name */
79         .byte   0x1     /* DW_AT_declaration */
80         .4byte  OFFSET (f7)     /* DW_AT_sibling */
81
82 .Ldie_80:
83         .uleb128 0xa    /* (DIE (0x80) DW_TAG_structure_type) */
84         .ascii  "_Vector_impl\0"        /* DW_AT_name */
85         .byte   0x18    /* DW_AT_byte_size */
86
87 .Ldie_88:
88         .uleb128 0xb    /* (DIE (0x88) DW_TAG_inheritance) */
89         .4byte  OFFSET (3e0)    /* DW_AT_type */
90         .sleb128 0      /* DW_AT_data_member_location */
91         .byte   0x1     /* DW_AT_accessibility */
92         .byte   0x0     /* end of children of DIE 0x80 */
93         .byte   0x0     /* end of children of DIE 0x76 */
94
95 .Ldie_f7:
96         .uleb128 0x8    /* (DIE (0xf7) DW_TAG_class_type) */
97         .ascii  "vector<a::b, std::allocator<a::b> >\0" /* DW_AT_name */
98         .byte   0x1     /* DW_AT_declaration */
99         .byte   0x0     /* end of children of DIE 0x4a */
100
101 .Ldie_143:
102         .uleb128 0x13   /* (DIE (0x143) DW_TAG_base_type) */
103         .byte   0x4     /* DW_AT_byte_size */
104         .byte   0x5     /* DW_AT_encoding */
105
106 .Ldie_162:
107         .uleb128 0x8    /* (DIE (0x162) DW_TAG_class_type) */
108         .ascii  "new_allocator<a::b>\0" /* DW_AT_name */
109         .byte   0x1     /* DW_AT_declaration */
110
111 .Ldie_19f:
112         .uleb128 0x2    /* (DIE (0x19f) DW_TAG_base_type) */
113         .byte   0x4     /* DW_AT_byte_size */
114         .byte   0x5     /* DW_AT_encoding */
115         .ascii "int\0"  /* DW_AT_name */
116
117 .Ldie_1c6:
118         .uleb128 0x17   /* (DIE (0x1c6) DW_TAG_pointer_type) */
119         .byte   0x8     /* DW_AT_byte_size */
120         .4byte  OFFSET (1cc)    /* DW_AT_type */
121
122 .Ldie_1cc:
123         .uleb128 0x18   /* (DIE (0x1cc) DW_TAG_const_type) */
124
125 .Ldie_1cd:
126         .uleb128 0x2    /* (DIE (0x1cd) DW_TAG_base_type) */
127         .byte   0x1     /* DW_AT_byte_size */
128         .byte   0x6     /* DW_AT_encoding */
129         .ascii  "char\0"        /* DW_AT_name */
130
131 .Ldie_221:
132         .uleb128 0x1b   /* (DIE (0x221) DW_TAG_class_type) */
133         .ascii "a\0"    /* DW_AT_name */
134         .byte   0x18    /* DW_AT_byte_size */
135         .4byte  OFFSET (277)    /* DW_AT_sibling */
136
137 .Ldie_22b:
138         .uleb128 0x1b   /* (DIE (0x22b) DW_TAG_class_type) */
139         .ascii "b\0"    /* DW_AT_name */
140         .byte   0x1     /* DW_AT_byte_size */
141         .4byte  OFFSET (244)    /* DW_AT_sibling */
142
143 .Ldie_235:
144         .uleb128 0x1c   /* (DIE (0x235) DW_TAG_subprogram) */
145         .byte   0x1     /* DW_AT_external */
146         .ascii "b\0"    /* DW_AT_name */
147         .byte   0x1     /* DW_AT_declaration */
148
149 .Ldie_23c:
150         .uleb128 0xe    /* (DIE (0x23c) DW_TAG_formal_parameter) */
151         .4byte  OFFSET (277)    /* DW_AT_type */
152         .byte   0x1     /* DW_AT_artificial */
153         .byte   0x0     /* end of children of DIE 0x235 */
154         .byte   0x0     /* end of children of DIE 0x22b */
155
156 .Ldie_244:
157         .uleb128 0x1d   /* (DIE (0x244) DW_TAG_member) */
158         .ascii  "list\0"        /* DW_AT_name */
159         .4byte  OFFSET (59d)    /* DW_AT_type */
160         .sleb128 0      /* DW_AT_data_member_location */
161         .byte   0x3     /* DW_AT_accessibility */
162
163 .Ldie_251:
164         .uleb128 0x1e   /* (DIE (0x251) DW_TAG_subprogram) */
165         .byte   0x1     /* DW_AT_external */
166         .ascii "a\0"    /* DW_AT_name */
167         .byte   0x1     /* DW_AT_artificial */
168         .byte   0x1     /* DW_AT_declaration */
169         .4byte  OFFSET (262)    /* DW_AT_sibling */
170
171 .Ldie_25b:
172         .uleb128 0xe    /* (DIE (0x25b) DW_TAG_formal_parameter) */
173         .4byte  OFFSET (b61)    /* DW_AT_type */
174         .byte   0x1     /* DW_AT_artificial */
175         .byte   0x0     /* end of children of DIE 0x251 */
176
177 .Ldie_262:
178         .uleb128 0x1f   /* (DIE (0x262) DW_TAG_subprogram) */
179         .byte   0x1     /* DW_AT_external */
180         .ascii "~a\0"   /* DW_AT_name */
181         .byte   0x1     /* DW_AT_artificial */
182         .byte   0x1     /* DW_AT_declaration */
183
184 .Ldie_269:
185         .uleb128 0xe    /* (DIE (0x269) DW_TAG_formal_parameter) */
186         .4byte  OFFSET (b61)    /* DW_AT_type */
187         .byte   0x1     /* DW_AT_artificial */
188
189 .Ldie_26f:
190         .uleb128 0xe    /* (DIE (0x26f) DW_TAG_formal_parameter) */
191         .4byte  OFFSET (19f)    /* DW_AT_type */
192         .byte   0x1     /* DW_AT_artificial */
193         .byte   0x0     /* end of children of DIE 0x262 */
194         .byte   0x0     /* end of children of DIE 0x221 */
195
196 .Ldie_277:
197         .uleb128 0x17   /* (DIE (0x277) DW_TAG_pointer_type) */
198         .byte   0x4     /* DW_AT_byte_size */
199         .4byte  OFFSET (22b)    /* DW_AT_type */
200
201 .Ldie_27d:
202         .uleb128 0x20   /* (DIE (0x27d) DW_TAG_class_type) */
203         .4byte  OFFSET (162)    /* DW_AT_specification */
204         .byte   0x1     /* DW_AT_byte_size */
205         .4byte  OFFSET (3b2)    /* DW_AT_sibling */
206
207 .Ldie_2d0:
208         .uleb128 0x21   /* (DIE (0x2d0) DW_TAG_subprogram) */
209         .byte   0x1     /* DW_AT_external */
210         .ascii  "address\0"     /* DW_AT_name */
211         .4byte  OFFSET (277)    /* DW_AT_type */
212         .byte   0x1     /* DW_AT_declaration */
213         .4byte  OFFSET (3b2)    /* DW_AT_sibling */
214
215 .Ldie_2e5:
216         .uleb128 0xe    /* (DIE (0x2e5) DW_TAG_formal_parameter) */
217         .4byte  OFFSET (3da)    /* DW_AT_type */
218         .byte   0x1     /* DW_AT_artificial */
219
220 .Ldie_2eb:
221         .uleb128 0xf    /* (DIE (0x2eb) DW_TAG_formal_parameter) */
222         .4byte  OFFSET (3bd)    /* DW_AT_type */
223         .byte   0x0     /* end of children of DIE 0x2d0 */
224         .byte   0x0     /* end of children of DIE 0x27d */
225
226 .Ldie_3b2:
227         .uleb128 0x17   /* (DIE (0x3b2) DW_TAG_pointer_type) */
228         .byte   0x4     /* DW_AT_byte_size */
229         .4byte  OFFSET (3b8)    /* DW_AT_type */
230
231 .Ldie_3b8:
232         .uleb128 0x19   /* (DIE (0x3b8) DW_TAG_const_type) */
233         .4byte  OFFSET (22b)    /* DW_AT_type */
234
235 .Ldie_3bd:
236         .uleb128 0x22   /* (DIE (0x3bd) DW_TAG_reference_type) */
237         .byte   0x4     /* DW_AT_byte_size */
238         .4byte  OFFSET (22b)    /* DW_AT_type */
239
240 .Ldie_3d5:
241         .uleb128 0x19   /* (DIE (0x3d5) DW_TAG_const_type) */
242         .4byte  OFFSET (27d)    /* DW_AT_type */
243
244 .Ldie_3da:
245         .uleb128 0x17   /* (DIE (0x3da) DW_TAG_pointer_type) */
246         .byte   0x4     /* DW_AT_byte_size */
247         .4byte  OFFSET (3d5)    /* DW_AT_type */
248
249 .Ldie_3e0:
250         .Uleb128 0x20   /* (DIE (0x3e0) DW_TAG_class_type) */
251         .4byte  OFFSET (70)     /* DW_AT_specification */
252         .byte   0x1     /* DW_AT_byte_size */
253         .4byte  OFFSET (44e)    /* DW_AT_sibling */
254
255 .Ldie_3ec:
256         .uleb128 0xb    /* (DIE (0x3ec) DW_TAG_inheritance) */
257         .4byte  OFFSET (27d)    /* DW_AT_type */
258         .sleb128 0      /* DW_AT_data_member_location */
259         .byte   0x1     /* DW_AT_accessibility */
260         .byte   0x0     /* end of children of DIE 0x3e0 */
261
262 .Ldie_44e:
263         .uleb128 0x1a   /* (DIE (0x44e) DW_TAG_structure_type) */
264         .4byte  OFFSET (76)     /* DW_AT_specification */
265         .byte   0x18    /* DW_AT_byte_size */
266         .4byte  OFFSET (505)    /* DW_AT_sibling */
267
268 .Ldie_505:
269         .uleb128 0x11   /* (DIE (0x505) DW_TAG_subprogram) */
270         .ascii  "~_Vector_base\0"       /* DW_AT_name */
271         .byte   0x1     /* DW_AT_declaration */
272         .4byte  OFFSET (51f)    /* DW_AT_sibling */
273
274 .Ldie_512:
275         .uleb128 0xe    /* (DIE (0x512) DW_TAG_formal_parameter) */
276         .4byte  OFFSET (58c)    /* DW_AT_type */
277         .byte   0x1     /* DW_AT_artificial */
278
279 .Ldie_518:
280         .uleb128 0xf    /* (DIE (0x518) DW_TAG_formal_parameter) */
281         .4byte  OFFSET (19f)    /* DW_AT_type */
282         .byte   0x0     /* end of children of DIE 0x505 */
283
284 .Ldie_51f:
285         .uleb128 0x23   /* (DIE (0x51f) DW_TAG_subprogram) */
286         .byte   0x1     /* DW_AT_external */
287         .ascii  "_M_allocate\0" /* DW_AT_name */
288         .4byte  OFFSET (277)    /* DW_AT_type */
289         .byte   0x1     /* DW_AT_declaration */
290         .4byte  OFFSET (540)    /* DW_AT_sibling */
291
292 .Ldie_540:
293         .uleb128 0x11   /* (DIE (0x540) DW_TAG_subprogram) */
294         .ascii  "_M_deallocate\0"       /* DW_AT_name */
295         .byte   0x1     /* DW_AT_declaration */
296         .4byte  OFFSET (562)    /* DW_AT_sibling */
297
298 .Ldie_551:
299         .uleb128 0xe    /* (DIE (0x551) DW_TAG_formal_parameter) */
300         .4byte  OFFSET (58c)    /* DW_AT_type */
301         .byte   0x1     /* DW_AT_artificial */
302
303 .Ldie_557:
304         .uleb128 0xf    /* (DIE (0x557) DW_TAG_formal_parameter) */
305         .4byte  OFFSET (277)    /* DW_AT_type */
306
307 .Ldie_55c:
308         .uleb128 0xf    /* (DIE (0x55c) DW_TAG_formal_parameter) */
309         .4byte  OFFSET (43)     /* DW_AT_type */
310         .byte   0x0     /* end of children of DIE 0x540 */
311
312 .Ldie_562:
313         .uleb128 0x5    /* (DIE (0x562) DW_TAG_imported_declaration) */
314         .4byte  OFFSET (51f)    /* DW_AT_import */
315         .byte   0x0     /* end of children of DIE 0x44e */
316
317 .Ldie_586:
318         .uleb128 0x22   /* (DIE (0x586) DW_TAG_reference_type) */
319         .byte   0x4     /* DW_AT_byte_size */
320         .4byte  OFFSET (3e0)    /* DW_AT_type */
321
322 .Ldie_58c:
323         .uleb128 0x17   /* (DIE (0x58c) DW_TAG_pointer_type) */
324         .byte   0x8     /* DW_AT_byte_size */
325         .4byte  OFFSET (44e)    /* DW_AT_type */
326
327 .Ldie_59d:
328         .uleb128 0x20   /* (DIE (0x59d) DW_TAG_class_type) */
329         .4byte  OFFSET (f7)     /* DW_AT_specification */
330         .byte   0x18    /* DW_AT_byte_size */
331         .4byte  OFFSET (b44)    /* DW_AT_sibling */
332
333 .Ldie_5a9:
334         .uleb128 0xb    /* (DIE (0x5a9) DW_TAG_inheritance) */
335         .4byte  OFFSET (44e)    /* DW_AT_type */
336         .sleb128 0      /* DW_AT_data_member_location */
337         .byte   0x2     /* DW_AT_accessibility */
338         .byte   0x0     /* end of children of DIE 0x59d */
339
340 .Ldie_b44:
341         .uleb128 0x17   /* (DIE (0xb44) DW_TAG_pointer_type) */
342         .byte   0x8     /* DW_AT_byte_size */
343         .4byte  OFFSET (59d) /* DW_AT_type */
344
345 .Ldie_b61:
346         .uleb128 0x17   /* (DIE (0xb61) DW_TAG_pointer_type) */
347         .byte   0x4     /* DW_AT_byte_size */
348         .4byte  OFFSET (221) /* DW_AT_type */
349         .byte   0x0     /* end of children of DIE 0xb */
350 .Lcu1_end:
351
352 /* Abbrev table */
353         .section        .debug_abbrev
354         .uleb128 0x1    /* (abbrev code) */
355         .uleb128 0x11   /* (TAG: DW_TAG_compile_unit) */
356         .byte   0x1     /* DW_children_yes */
357         .uleb128 0x25   /* (DW_AT_producer) */
358         .uleb128 0x8    /* (DW_FORM_string) */
359         .uleb128 0x13   /* (DW_AT_language) */
360         .uleb128 0xb    /* (DW_FORM_data1) */
361         .uleb128 0x3    /* (DW_AT_name) */
362         .uleb128 0x8    /* (DW_FORM_sting) */
363         .uleb128 0x10   /* (DW_AT_stmt_list) */
364         .uleb128 0x6    /* (DW_FORM_data4) */
365         .byte   0x0
366         .byte   0x0
367
368         .uleb128 0x2    /* (abbrev code) */
369         .uleb128 0x24   /* (DW_TAG_base_type) */
370         .byte   0x0     /* DW_children_no */
371         .uleb128 0xb    /* (DW_AT_byte_size) */
372         .uleb128 0xb    /* (DW_FORM_data1) */
373         .uleb128 0x3e   /* (DW_AT_encoding) */
374         .uleb128 0xb    /* (DW_FORM_data1) */
375         .uleb128 0x3    /* (DW_AT_name) */
376         .uleb128 0x8    /* (DW_FORM_string) */
377         .byte   0x0
378         .byte   0x0
379
380         .uleb128 0x3    /* (abbrev code) */
381         .uleb128 0x16   /* (TAG: DW_TAG_typedef) */
382         .byte   0x0     /* DW_children_no */
383         .uleb128 0x3    /* (DW_AT_name) */
384         .uleb128 0x8    /* (DW_FORM_string) */
385         .uleb128 0x49   /* (DW_AT_type) */
386         .uleb128 0x13   /* (DW_FORM_ref4) */
387         .byte   0x0
388         .byte   0x0
389
390         .uleb128 0x4    /* (abbrev code) */
391         .uleb128 0x39   /* (TAG: DW_TAG_namespace) */
392         .byte   0x1     /* DW_children_yes */
393         .uleb128 0x3    /* (DW_AT_name) */
394         .uleb128 0x8    /* (DW_FORM_string) */
395         .uleb128 0x1    /* (DW_AT_sibling) */
396         .uleb128 0x13   /* (DW_FORM_ref4) */
397         .byte   0x0
398         .byte   0x0
399
400         .uleb128 0x5    /* (abbrev code) */
401         .uleb128 0x8    /* (TAG: DW_TAG_imported_declaration) */
402         .byte   0x0     /* DW_children_no */
403         .uleb128 0x18   /* (DW_AT_import) */
404         .uleb128 0x13   /* (DW_FORM_ref4) */
405         .byte   0x0
406         .byte   0x0
407
408         .uleb128 0x8    /* (abbrev code) */
409         .uleb128 0x2    /* (TAG: DW_TAG_class_type) */
410         .byte   0x0     /* DW_children_no */
411         .uleb128 0x3    /* (DW_AT_name) */
412         .uleb128 0x8    /* (DW_FORM_string) */
413         .uleb128 0x3c   /* (DW_AT_declaration) */
414         .uleb128 0xc    /* (DW_FORM_flag) */
415         .byte   0x0
416         .byte   0x0
417
418         .uleb128 0x9    /* (abbrev code) */
419         .uleb128 0x13   /* (TAG: DW_TAG_structure_type) */
420         .byte   0x1     /* DW_children_yes */
421         .uleb128 0x3    /* (DW_AT_name) */
422         .uleb128 0x8    /* (DW_FORM_string) */
423         .uleb128 0x3c   /* (DW_AT_declaration) */
424         .uleb128 0xc    /* (DW_FORM_flag) */
425         .uleb128 0x1    /* (DW_AT_sibling) */
426         .uleb128 0x13   /* (DW_FORM_ref4) */
427         .byte   0x0
428         .byte   0x0
429
430         .uleb128 0xa    /* (abbrev code) */
431         .uleb128 0x13   /* (TAG: DW_TAG_structure_type) */
432         .byte   0x1     /* DW_children_yes */
433         .uleb128 0x3    /* (DW_AT_name) */
434         .uleb128 0x8    /* (DW_FORM_string) */
435         .uleb128 0xb    /* (DW_AT_byte_size) */
436         .uleb128 0xb    /* (DW_FORM_data1) */
437         .byte   0x0
438         .byte   0x0
439
440         .uleb128 0xb    /* (abbrev code) */
441         .uleb128 0x1c   /* (TAG: DW_TAG_inheritance) */
442         .byte   0x0     /* DW_children_no */
443         .uleb128 0x49   /* (DW_AT_type) */
444         .uleb128 0x13   /* (DW_FORM_ref4) */
445         .uleb128 0x38   /* (DW_AT_data_member_location) */
446         .uleb128 0xd    /* (DW_FORM_sdata) */
447         .uleb128 0x32   /* (DW_AT_accessibility) */
448         .uleb128 0xb    /* (DW_FORM_data1) */
449         .byte   0x0
450         .byte   0x0
451
452         .uleb128 0xe    /* (abbrev code) */
453         .uleb128 0x5    /* (TAG: DW_TAG_formal_parameter) */
454         .byte   0x0     /* DW_children_no */
455         .uleb128 0x49   /* (DW_AT_type) */
456         .uleb128 0x13   /* (DW_FORM_ref4) */
457         .uleb128 0x34   /* (DW_AT_artificial) */
458         .uleb128 0xc    /* (DW_FORM_flag) */
459         .byte   0x0
460         .byte   0x0
461
462         .uleb128 0xf    /* (abbrev code) */
463         .uleb128 0x5    /* (TAG: DW_TAG_formal_parameter) */
464         .byte   0x0     /* DW_children_no */
465         .uleb128 0x49   /* (DW_AT_type) */
466         .uleb128 0x13   /* (DW_FORM_ref4) */
467         .byte   0x0
468         .byte   0x0
469
470         .uleb128 0x11   /* (abbrev code) */
471         .uleb128 0x2e   /* (DW_TAG_subprogram) */
472         .byte   0x1     /* DW_children_yes */
473         .uleb128 0x3    /* (DW_AT_name) */
474         .uleb128 0x8    /* (DW_FORM_string) */
475         .uleb128 0x3c   /* (DW_AT_declaration) */
476         .uleb128 0xc    /* (DW_FORM_flag) */
477         .uleb128 0x1    /* (DW_AT_sibling) */
478         .uleb128 0x13   /* (DW_FORM_ref4) */
479         .byte   0x0
480         .byte   0x0
481
482         .uleb128 0x13   /* (abbrev code) */
483         .uleb128 0x24   /* (DW_TAG_base_type) */
484         .byte   0x0     /* DW_children_no */
485         .uleb128 0xb    /* (DW_AT_byte_size) */
486         .uleb128 0xb    /* (DW_FORM_data1) */
487         .uleb128 0x3e   /* (DW_AT_encoding) */
488         .uleb128 0xb    /* (DW_FORM_data1) */
489         .byte   0x0
490         .byte   0x0
491
492         .uleb128 0x17   /* (abbrev code) */
493         .uleb128 0xf    /* (TAG: DW_TAG_pointer_type) */
494         .byte   0x0     /* DW_children_no */
495         .uleb128 0xb    /* (DW_AT_byte_size) */
496         .uleb128 0xb    /* (DW_FORM_data1) */
497         .uleb128 0x49   /* (DW_AT_type) */
498         .uleb128 0x13   /* (DW_FORM_ref4) */
499         .byte   0x0
500         .byte   0x0
501
502         .uleb128 0x18   /* (abbrev code) */
503         .uleb128 0x26   /* (TAG: DW_TAG_const_type) */
504         .byte   0x0     /* DW_children_no */
505         .byte   0x0
506         .byte   0x0
507
508         .uleb128 0x19   /* (abbrev code) */
509         .uleb128 0x26   /* (TAG: DW_TAG_const_type) */
510         .byte   0x0     /* DW_children_no */
511         .uleb128 0x49   /* (DW_AT_type) */
512         .uleb128 0x13   /* (DW_FORM_ref4) */
513         .byte   0x0
514         .byte   0x0
515
516         .uleb128 0x1a   /* (abbrev code) */
517         .uleb128 0x13   /* (TAG: DW_TAG_structure_type) */
518         .byte   0x1     /* DW_children_yes */
519         .uleb128 0x47   /* (DW_AT_specification) */
520         .uleb128 0x13   /* (DW_FORM_ref4) */
521         .uleb128 0xb    /* (DW_AT_byte_size) */
522         .uleb128 0xb    /* (DW_FORM_data1) */
523         .uleb128 0x1    /* (DW_AT_sibling) */
524         .uleb128 0x13   /* (DW_FORM_ref4) */
525         .byte   0x0
526         .byte   0x0
527
528         .uleb128 0x1b   /* (abbrev code) */
529         .uleb128 0x2    /* (TAG: DW_TAG_class_type) */
530         .byte   0x1     /* DW_children_yes */
531         .uleb128 0x3    /* (DW_AT_name) */
532         .uleb128 0x8    /* (DW_FORM_string) */
533         .uleb128 0xb    /* (DW_AT_byte_size) */
534         .uleb128 0xb    /* (DW_FORM_data1) */
535         .uleb128 0x1    /* (DW_AT_sibling) */
536         .uleb128 0x13   /* (DW_FORM_ref4) */
537         .byte   0x0
538         .byte   0x0
539
540         .uleb128 0x1c   /* (abbrev code) */
541         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
542         .byte   0x1     /* DW_children_yes */
543         .uleb128 0x3f   /* (DW_AT_external) */
544         .uleb128 0xc    /* (DW_FORM_flag) */
545         .uleb128 0x3    /* (DW_AT_name) */
546         .uleb128 0x8    /* (DW_FORM_string) */
547         .uleb128 0x3c   /* (DW_AT_declaration) */
548         .uleb128 0xc    /* (DW_FORM_flag) */
549         .byte   0x0
550         .byte   0x0
551
552         .uleb128 0x1d   /* (abbrev code) */
553         .uleb128 0xd    /* (TAG: DW_TAG_member) */
554         .byte   0x0     /* DW_children_no */
555         .uleb128 0x3    /* (DW_AT_name) */
556         .uleb128 0x8    /* (DW_FORM_string) */
557         .uleb128 0x49   /* (DW_AT_type) */
558         .uleb128 0x13   /* (DW_FORM_ref4) */
559         .uleb128 0x38   /* (DW_AT_data_member_location) */
560         .uleb128 0xd    /* (DW_FORM_sdata) */
561         .uleb128 0x32   /* (DW_AT_accessibility) */
562         .uleb128 0xb    /* (DW_FORM_data1) */
563         .byte   0x0
564         .byte   0x0
565
566         .uleb128 0x1e   /* (abbrev code) */
567         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
568         .byte   0x1     /* DW_children_yes */
569         .uleb128 0x3f   /* (DW_AT_external) */
570         .uleb128 0xc    /* (DW_FORM_flag) */
571         .uleb128 0x3    /* (DW_AT_name) */
572         .uleb128 0x8    /* (DW_FORM_string) */
573         .uleb128 0x34   /* (DW_AT_artificial) */
574         .uleb128 0xc    /* (DW_FORM_flag) */
575         .uleb128 0x3c   /* (DW_AT_declaration) */
576         .uleb128 0xc    /* (DW_FORM_flag) */
577         .uleb128 0x1    /* (DW_AT_sibling) */
578         .uleb128 0x13   /* (DW_FORM_ref4) */
579         .byte   0x0
580         .byte   0x0
581
582         .uleb128 0x1f   /* (abbrev code) */
583         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
584         .byte   0x1     /* DW_children_yes */
585         .uleb128 0x3f   /* (DW_AT_external) */
586         .uleb128 0xc    /* (DW_FORM_flag) */
587         .uleb128 0x3    /* (DW_AT_name) */
588         .uleb128 0x8    /* (DW_FORM_string) */
589         .uleb128 0x34   /* (DW_AT_artificial) */
590         .uleb128 0xc    /* (DW_FORM_flag) */
591         .uleb128 0x3c   /* (DW_AT_declaration) */
592         .uleb128 0xc    /* (DW_FORM_flag) */
593         .byte   0x0
594         .byte   0x0
595
596         .uleb128 0x20   /* (abbrev code) */
597         .uleb128 0x2    /* (TAG: DW_TAG_class_type) */
598         .byte   0x1     /* DW_children_yes */
599         .uleb128 0x47   /* (DW_AT_specification) */
600         .uleb128 0x13   /* (DW_FORM_ref4) */
601         .uleb128 0xb    /* (DW_AT_byte_size) */
602         .uleb128 0xb    /* (DW_FORM_data1) */
603         .uleb128 0x1    /* (DW_AT_sibling) */
604         .uleb128 0x13   /* (DW_FORM_ref4) */
605         .byte   0x0
606         .byte   0x0
607
608         .uleb128 0x21   /* (abbrev code) */
609         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
610         .byte   0x1     /* DW_children_yes */
611         .uleb128 0x3f   /* (DW_AT_external) */
612         .uleb128 0xc    /* (DW_FORM_flag) */
613         .uleb128 0x3    /* (DW_AT_name) */
614         .uleb128 0x8    /* (DW_FORM_string) */
615         .uleb128 0x49   /* (DW_AT_type) */
616         .uleb128 0x13   /* (DW_FORM_ref4) */
617         .uleb128 0x3c   /* (DW_AT_declaration) */
618         .uleb128 0xc    /* (DW_FORM_flag) */
619         .uleb128 0x1    /* (DW_AT_sibling) */
620         .uleb128 0x13   /* (DW_FORM_ref4) */
621         .byte   0x0
622         .byte   0x0
623
624         .uleb128 0x22   /* (abbrev code) */
625         .uleb128 0x10   /* (TAG: DW_TAG_reference_type) */
626         .byte   0x0     /* DW_children_no */
627         .uleb128 0xb    /* (DW_AT_byte_size) */
628         .uleb128 0xb    /* (DW_FORM_data1) */
629         .uleb128 0x49   /* (DW_AT_type) */
630         .uleb128 0x13   /* (DW_FORM_ref4) */
631         .byte   0x0
632         .byte   0x0
633
634         .uleb128 0x23   /* (abbrev code) */
635         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
636         .byte   0x0     /* DW_children_no */
637         .uleb128 0x3f   /* (DW_AT_external) */
638         .uleb128 0xc    /* (DW_FORM_flag) */
639         .uleb128 0x3    /* (DW_AT_name) */
640         .uleb128 0x8    /* (DW_FORM_string) */
641         .uleb128 0x49   /* (DW_AT_type) */
642         .uleb128 0x13   /* (DW_FORM_ref4) */
643         .uleb128 0x3c   /* (DW_AT_declaration) */
644         .uleb128 0xc    /* (DW_FORM_flag) */
645         .uleb128 0x1    /* (DW_AT_sibling) */
646         .uleb128 0x13   /* (DW_FORM_ref4) */
647         .byte   0x0
648         .byte   0x0
649
650         .byte   0x0
651         .byte   0x0
652