PR symtab/11942
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.dwarf2 / pr11465.S
1 /* Copyright 2010 Free Software Foundation, Inc.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 3 of the License, or
6 (at your option) any later version.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12
13 You should have received a copy of the GNU General Public License
14 along with this program. If not, see <http://www.gnu.org/licenses/>. */
15
16 /* Compiled from:
17
18 namespace N
19 {
20 class C
21 {
22 public:
23 typedef void (*t) (C);
24 C (t) {}
25 };
26 typedef C::t u;
27 u f;
28 C c (f);
29 };
30
31 int
32 main ()
33 {
34 return 0;
35 }
36 */
37
38 .text
39 _ZN1N1cE:
40 .section .debug_info
41 d:
42 .long .Ldebug_info_end - 1f /* Length of CU info */
43 1:
44 .2byte 0x2 /* DWARF version number */
45 .long .Ldebug_abbrev0 /* Abbrev offset */
46 .byte 0x4 /* Pointer size */
47 dieb: .uleb128 0x1 /* DW_TAG_compile_unit */
48 .long .LASF4 /* DW_AT_producer */
49 .byte 0x4 /* DW_AT_language */
50 .long .LASF5 /* DW_AT_name */
51 .long .LASF6 /* DW_AT_comp_dir */
52 .long 0x0 /* DW_AT_low_pc */
53 .long 0x0 /* DW_AT_high_pc */
54 .long 0x0 /* DW_AT_entry_pc */
55 die29: .uleb128 0x2 /* DW_TAG_namespace */
56 .string "N" /* DW_AT_name */
57 die32: .uleb128 0x3 /* DW_TAG_class_type */
58 .string "C" /* DW_AT_name */
59 .byte 0x1 /* DW_AT_declaration */
60 die36: .uleb128 0x4 /* DW_TAG_typedef */
61 .string "u" /* DW_AT_name */
62 .long die7e-d /* DW_AT_type */
63 die3f: .uleb128 0x5 /* DW_TAG_variable */
64 .string "f" /* DW_AT_name */
65 .long .LASF0 /* DW_AT_MIPS_linkage_name */
66 .long die36-d /* DW_AT_type */
67 .byte 0x1 /* DW_AT_external */
68 .byte 0x1 /* DW_AT_declaration */
69 die4e: .uleb128 0x5 /* DW_TAG_variable */
70 .string "c" /* DW_AT_name */
71 .long .LASF1 /* DW_AT_MIPS_linkage_name */
72 .long die5e-d /* DW_AT_type */
73 .byte 0x1 /* DW_AT_external */
74 .byte 0x1 /* DW_AT_declaration */
75 .byte 0x0
76 die5e: .uleb128 0x6 /* DW_TAG_class_type */
77 .long die32-d /* DW_AT_specification */
78 .byte 0x1 /* DW_AT_byte_size */
79 die6a: .uleb128 0x7 /* DW_TAG_subprogram */
80 .byte 0x1 /* DW_AT_external */
81 .string "C" /* DW_AT_name */
82 .byte 0x1 /* DW_AT_declaration */
83 die71: .uleb128 0x8 /* DW_TAG_formal_parameter */
84 .long die8f-d /* DW_AT_type */
85 .byte 0x1 /* DW_AT_artificial */
86 die77: .uleb128 0x9 /* DW_TAG_formal_parameter */
87 .long die7e-d /* DW_AT_type */
88 .byte 0x0
89 .byte 0x0
90 die7e: .uleb128 0xa /* DW_TAG_pointer_type */
91 .byte 0x4 /* DW_AT_byte_size */
92 .long die84-d /* DW_AT_type */
93 die84: .uleb128 0xb /* DW_TAG_subroutine_type */
94 die89: .uleb128 0x9 /* DW_TAG_formal_parameter */
95 .long die5e-d /* DW_AT_type */
96 .byte 0x0
97 die8f: .uleb128 0xa /* DW_TAG_pointer_type */
98 .byte 0x4 /* DW_AT_byte_size */
99 .long die5e-d /* DW_AT_type */
100 die95: .uleb128 0xc /* DW_TAG_subprogram */
101 .long die6a-d /* DW_AT_specification */
102 .byte 0x2 /* DW_AT_inline */
103 die9f: .uleb128 0xd /* DW_TAG_formal_parameter */
104 .long .LASF7 /* DW_AT_name */
105 .long dieaf-d /* DW_AT_type */
106 .byte 0x1 /* DW_AT_artificial */
107 diea9: .uleb128 0x9 /* DW_TAG_formal_parameter */
108 .long die7e-d /* DW_AT_type */
109 .byte 0x0
110 dieaf: .uleb128 0xe /* DW_TAG_const_type */
111 .long die8f-d /* DW_AT_type */
112 dieb4: .uleb128 0xf /* DW_TAG_subprogram */
113 .long die95-d /* DW_AT_abstract_origin */
114 .long _ZN1N1cE /* DW_AT_low_pc */
115 .long _ZN1N1cE /* DW_AT_high_pc */
116 diec9: .uleb128 0x10 /* DW_TAG_subprogram */
117 .long die9f-d /* DW_AT_abstract_origin */
118 .byte 2f-1f /* DW_AT_location */
119 1:
120 .byte 0x50 /* DW_OP_reg0 */
121 2:
122 died1: .uleb128 0x10 /* DW_TAG_formal_parameter */
123 .long diea9-d /* DW_AT_abstract_origin */
124 .byte 2f-1f /* DW_AT_location */
125 1:
126 .byte 0x51 /* DW_OP_reg1 */
127 2:
128 .byte 0x0
129 dieda: .uleb128 0x11 /* DW_TAG_subprogram */
130 .byte 0x1 /* DW_AT_external */
131 .long .LASF8 /* DW_AT_name */
132 .long dief2-d /* DW_AT_type */
133 .long _ZN1N1cE /* DW_AT_low_pc */
134 .long _ZN1N1cE /* DW_AT_high_pc */
135 dief2: .uleb128 0x12 /* DW_TAG_base_type */
136 .byte 0x4 /* DW_AT_byte_size */
137 .byte 0x5 /* DW_AT_encoding */
138 .string "int" /* DW_AT_name */
139 die149: .uleb128 0x16 /* DW_TAG_variable */
140 .long die4e-d /* DW_AT_specification */
141 .byte 0x5 /* DW_AT_location */
142 .byte 0x3
143 .long _ZN1N1cE
144 .byte 0x0
145 .Ldebug_info_end:
146 .section .debug_abbrev
147 .Ldebug_abbrev0:
148 .uleb128 0x1 /* abbrev code*/
149 .uleb128 0x11 /* DW_TAG_compile_unit */
150 .byte 0x1 /* DW_children_yes */
151 .uleb128 0x25 /* DW_AT_producer*/
152 .uleb128 0xe /* DW_FORM_strp */
153 .uleb128 0x13 /* DW_AT_language */
154 .uleb128 0xb /* DW_FORM_data1 */
155 .uleb128 0x3 /* DW_AT_name */
156 .uleb128 0xe /* DW_FORM_strp */
157 .uleb128 0x1b /* DW_AT_comp_dir */
158 .uleb128 0xe /* DW_FORM_strp */
159 .uleb128 0x11 /* DW_AT_low_pc */
160 .uleb128 0x1 /* DW_FORM_addr */
161 .uleb128 0x12 /* DW_AT_high_pc */
162 .uleb128 0x1 /* DW_FORM_addr */
163 .uleb128 0x52 /* DW_AT_entry_pc */
164 .uleb128 0x1 /* DW_FORM_addr */
165 .byte 0x0
166 .byte 0x0
167 .uleb128 0x2 /* abbrev code */
168 .uleb128 0x39 /* DW_TAG_namespace */
169 .byte 0x1 /* DW_children_yes */
170 .uleb128 0x3 /* DW_AT_name */
171 .uleb128 0x8 /* DW_FORM_string */
172 .byte 0x0
173 .byte 0x0
174 .uleb128 0x3 /* abbrev code */
175 .uleb128 0x2 /* DW_TAG_class_type */
176 .byte 0x0 /* DW_has_children_no */
177 .uleb128 0x3 /* DW_AT_name */
178 .uleb128 0x8 /* DW_FORM_string */
179 .uleb128 0x3c /* DW_AT_declaration */
180 .uleb128 0xc /* DW_FORM_flag */
181 .byte 0x0
182 .byte 0x0
183 .uleb128 0x4 /* abbrev code */
184 .uleb128 0x16 /* DW_TAG_typedef */
185 .byte 0x0 /* DW_has_children_no */
186 .uleb128 0x3 /* DW_AT_name */
187 .uleb128 0x8 /* DW_FORM_string */
188 .uleb128 0x49 /* DW_AT_type */
189 .uleb128 0x13 /* DW_FORM_ref4 */
190 .byte 0x0
191 .byte 0x0
192 .uleb128 0x5 /* abbrev code */
193 .uleb128 0x34 /* DW_TAG_variable */
194 .byte 0x0 /* DW_has_children_no */
195 .uleb128 0x3 /* DW_AT_name */
196 .uleb128 0x8 /* DW_FORM_string */
197 .uleb128 0x2007 /* DW_AT_MIPS_linkage_name */
198 .uleb128 0xe /* DW_FORM_strp */
199 .uleb128 0x49 /* DW_AT_TYPE */
200 .uleb128 0x13 /* DW_FORM_ref4 */
201 .uleb128 0x3f /* DW_AT_external */
202 .uleb128 0xc /* DW_FORM_flag */
203 .uleb128 0x3c /* DW_AT_declaration */
204 .uleb128 0xc /* DW_FORM_flag */
205 .byte 0x0
206 .byte 0x0
207 .uleb128 0x6 /* abbrev code */
208 .uleb128 0x2 /* DW_TAG_class_type */
209 .byte 0x1 /* DW_has_children_yes */
210 .uleb128 0x47 /* DW_AT_specification */
211 .uleb128 0x13 /* DW_FORM_ref4 */
212 .uleb128 0xb /* DW_AT_byte_size */
213 .uleb128 0xb /* DW_FORM_data1 */
214 .byte 0x0
215 .byte 0x0
216 .uleb128 0x7 /* abbrev code */
217 .uleb128 0x2e /* DW_TAG_subprogra */
218 .byte 0x1 /* DW_has_children_yes */
219 .uleb128 0x3f /* DW_AT_external */
220 .uleb128 0xc /* DW_FORM_flag */
221 .uleb128 0x3 /* DW_AT_name */
222 .uleb128 0x8 /* DW_FORM_string */
223 .uleb128 0x3c /* DW_AT_declaration */
224 .uleb128 0xc /* DW_FORM_flag */
225 .byte 0x0
226 .byte 0x0
227 .uleb128 0x8 /* abbrev code */
228 .uleb128 0x5 /* DW_TAG_formal_parameter */
229 .byte 0x0 /* DW_has_children_no */
230 .uleb128 0x49 /* DW_AT_type */
231 .uleb128 0x13 /* DW_FORM_ref4 */
232 .uleb128 0x34 /* DW_AT_artificial */
233 .uleb128 0xc /* DW_FORM_flag */
234 .byte 0x0
235 .byte 0x0
236 .uleb128 0x9 /* abbrev code */
237 .uleb128 0x5 /* DW_TAG_formal_parameter */
238 .byte 0x0 /* DW_has_children_no */
239 .uleb128 0x49 /* DW_AT_type */
240 .uleb128 0x13 /* DW_FORM_ref4 */
241 .byte 0x0
242 .byte 0x0
243 .uleb128 0xa /* abbrev code */
244 .uleb128 0xf /* DW_TAG_pointer_type */
245 .byte 0x0 /* DW_has_children_no */
246 .uleb128 0xb /* DW_AT_byte_size */
247 .uleb128 0xb /* DW_FORM_data1 */
248 .uleb128 0x49 /* DW_AT_type */
249 .uleb128 0x13 /* DW_FORM_ref4 */
250 .byte 0x0
251 .byte 0x0
252 .uleb128 0xb /* abbrev code */
253 .uleb128 0x15 /* DW_TAG_subroutine_type */
254 .byte 0x1 /* DW_has_children_yes */
255 .byte 0x0
256 .byte 0x0
257 .uleb128 0xc /* abbrev code */
258 .uleb128 0x2e /* DW_TAG_subprogram */
259 .byte 0x1 /* DW_has_children_yes */
260 .uleb128 0x47 /* DW_AT_specification */
261 .uleb128 0x13 /* DW_FORM_ref4 */
262 .uleb128 0x20 /* DW_AT_inline */
263 .uleb128 0xb /* DW_FORM_data1 */
264 .byte 0x0
265 .byte 0x0
266 .uleb128 0xd /* abbrev code */
267 .uleb128 0x5 /* DW_TAG_formal_parameter */
268 .byte 0x0 /* DW_has_children_no */
269 .uleb128 0x3 /* DW_AT_name */
270 .uleb128 0xe /* DW_FORM_strp */
271 .uleb128 0x49 /* DW_AT_type */
272 .uleb128 0x13 /* DW_FORM_ref4 */
273 .uleb128 0x34 /* DW_AT_artificial */
274 .uleb128 0xc /* DW_FORM_flag */
275 .byte 0x0
276 .byte 0x0
277 .uleb128 0xe /* abbrev code */
278 .uleb128 0x26 /* DW_TAG_const_type */
279 .byte 0x0 /* DW_has_children_no */
280 .uleb128 0x49 /* DW_AT_type */
281 .uleb128 0x13 /* DW_FORM_ref4 */
282 .byte 0x0
283 .byte 0x0
284 .uleb128 0xf /* abbrev code */
285 .uleb128 0x2e /* DW_TAG_subprogram */
286 .byte 0x1 /* DW_has_children_yes */
287 .uleb128 0x31 /* DW_AT_abstract_origin */
288 .uleb128 0x13 /* DW_FORM_ref4 */
289 .uleb128 0x11 /* DW_AT_low_pc */
290 .uleb128 0x1 /* DW_FORM_addr */
291 .uleb128 0x12 /* DW_AT_high_pc */
292 .uleb128 0x1 /* DW_FORM_addr */
293 .byte 0x0
294 .byte 0x0
295 .uleb128 0x10 /* abbrev code */
296 .uleb128 0x5 /* DW_TAG_formal_parameter */
297 .byte 0x0 /* DW_has_children_no */
298 .uleb128 0x31 /* DW_AT_abstract_origin */
299 .uleb128 0x13 /* DW_FORM_ref4 */
300 .uleb128 0x2 /* DW_AT_location */
301 .uleb128 0xa /* DW_FORM_block1 */
302 .byte 0x0
303 .byte 0x0
304 .uleb128 0x11 /* abbrev code */
305 .uleb128 0x2e /* DW_TAG_subprogram */
306 .byte 0x0 /* DW_has_children_no */
307 .uleb128 0x3f /* DW_AT_external */
308 .uleb128 0xc /* DW_FORM_flag */
309 .uleb128 0x3 /* DW_AT_name */
310 .uleb128 0xe /* DW_FORM_strp */
311 .uleb128 0x49 /* DW_AT_type */
312 .uleb128 0x13 /* DW_FORM_ref4 */
313 .uleb128 0x11 /* DW_AT_low_pc */
314 .uleb128 0x1 /* DW_FORM_addr */
315 .uleb128 0x12 /* DW_AT_high_pc */
316 .uleb128 0x1 /* DW_FORM_addr */
317 .byte 0x0
318 .byte 0x0
319 .uleb128 0x12 /* abbrev code */
320 .uleb128 0x24 /* DW_TAG_base_type */
321 .byte 0x0 /* DW_has_children_no */
322 .uleb128 0xb /* DW_AT_byte_size */
323 .uleb128 0xb /* DW_FORM_data1 */
324 .uleb128 0x3e /* DW_AT_encoding */
325 .uleb128 0xb /* DW_FORM_data1 */
326 .uleb128 0x3 /* DW_AT_name */
327 .uleb128 0x8 /* DW_FORM_string */
328 .byte 0x0
329 .byte 0x0
330 .uleb128 0x16 /* abbrev code */
331 .uleb128 0x34 /* DW_TAG_variable */
332 .byte 0x0 /* DW_has_children_no */
333 .uleb128 0x47 /* DW_AT_specification */
334 .uleb128 0x13 /* DW_FORM_ref4 */
335 .uleb128 0x2 /* DW_AT_location */
336 .uleb128 0xa /* DW_FORM_block1 */
337 .byte 0x0
338 .byte 0x0
339 .byte 0x0
340 .section .debug_str
341 .LASF0:
342 .string "_ZN1N1fE"
343 .LASF7:
344 .string "this"
345 .LASF6:
346 .string ""
347 .LASF8:
348 .string "main"
349 .LASF1:
350 .string "_ZN1N1cE"
351 .LASF5:
352 .string "pr11465.cc"
353 .LASF4:
354 .string "GNU C++ 4.4.2"
355 .ident "GCC: (GNU) 4.4.2"
This page took 0.036952 seconds and 4 git commands to generate.