938ff208ac685166bd0e9c9f0d6fd9c823876f79
[platform/upstream/gdb.git] / gdb / testsuite / gdb.dwarf2 / dw2-icycle.S
1 /* This testcase is part of GDB, the GNU debugger.
2
3    Copyright 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         .text
19
20 .Ltext0:
21         .type   p__top__middle__inside.3062, @function
22 p__top__middle__inside.3062:
23 .LFB4:
24         .file 1 "p.adb"
25         .4byte 0
26 .LBE6:
27
28         .globl  p__top
29         .type   p__top, @function
30 p__top:
31 .LFB2:
32         .4byte 0
33 .LFE2:
34 .Letext0:
35
36         .section        .debug_info
37 .Ldebug_info0:
38         .4byte  .Ledebug_info0 - .Lsdebug_info0  /* Length of CU Info */
39 .Lsdebug_info0:
40         .2byte  0x4     /* DWARF version number */
41         .4byte  .Ldebug_abbrev0 /* Offset Into Abbrev. Section */
42         .byte   0x4     /* Pointer Size (in bytes) */
43         .uleb128 0x1    /* (DIE (0xb) DW_TAG_compile_unit) */
44         .ascii  "GNU Ada 4.9.0 20140126\0" /* DW_AT_producer */
45         .byte   0xd     /* DW_AT_language */
46         .ascii  "p.adb\0" /* DW_AT_name */
47         .ascii  "/tmp\0"  /* DW_AT_comp_dir */
48         .4byte  .Ltext0 /* DW_AT_low_pc */
49         .4byte  .Letext0-.Ltext0        /* DW_AT_high_pc */
50 .S0x142:
51         .uleb128 0x8    /* (DIE (0x142) DW_TAG_base_type) */
52         .byte   0x4     /* DW_AT_byte_size */
53         .byte   0x5     /* DW_AT_encoding */
54         .ascii  "integer\0" /* DW_AT_name */
55
56         .uleb128 0x13   /* (DIE (0x1b4) DW_TAG_subprogram) */
57                         /* DW_AT_external */
58         .ascii  "p__top\0" /* DW_AT_name */
59         .byte   0x1     /* DW_AT_decl_file (p.adb) */
60         .byte   0x3     /* DW_AT_decl_line */
61         .4byte  .LFB2   /* DW_AT_low_pc */
62         .4byte  .LFE2-.LFB2     /* DW_AT_high_pc */
63         .uleb128 0x1    /* DW_AT_frame_base */
64         .byte   0x9c    /* DW_OP_call_frame_cfa */
65                         /* DW_AT_GNU_all_call_sites */
66 .S0x1e0:
67         .uleb128 0x15   /* (DIE (0x1e0) DW_TAG_subprogram) */
68         .ascii  "p__top__middle\0" /* DW_AT_name */
69         .byte   0x1     /* DW_AT_decl_file (p.adb) */
70         .byte   0x4     /* DW_AT_decl_line */
71         .byte   0x1     /* DW_AT_inline */
72 .S0x202:
73         .uleb128 0x15   /* (DIE (0x202) DW_TAG_subprogram) */
74         .ascii  "p__top__middle__inside\0" /* DW_AT_name */
75         .byte   0x1     /* DW_AT_decl_file (p.adb) */
76         .byte   0x5     /* DW_AT_decl_line */
77         .byte   0x1     /* DW_AT_inline */
78         .byte   0       /* end of children of DIE 0x202 */
79 .S0x225:
80         .uleb128 0x18   /* (DIE (0x225) DW_TAG_subprogram) */
81         .4byte  .S0x202 - .Ldebug_info0 /* DW_AT_abstract_origin */
82         .4byte  .LFB4   /* DW_AT_low_pc */
83         .4byte  .LBE6-.LFB4     /* DW_AT_high_pc */
84         .uleb128 0x1    /* DW_AT_frame_base */
85         .byte   0x9c    /* DW_OP_call_frame_cfa */
86         .uleb128 0x1    /* DW_AT_static_link */
87         .byte   0x56    /* DW_OP_reg6 */
88                         /* DW_AT_GNU_all_call_sites */
89         .uleb128 0x1a   /* (DIE (0x247) DW_TAG_inlined_subroutine) */
90         .4byte  .S0x1e0 - .Ldebug_info0 /* DW_AT_abstract_origin */
91         .4byte  .LFB4   /* DW_AT_low_pc */
92         .4byte  .LBE6-.LFB4     /* DW_AT_high_pc */
93         .byte   0x1     /* DW_AT_call_file (p.adb) */
94         .byte   0x14    /* DW_AT_call_line */
95         .byte   0       /* end of children of DIE 0x247 */
96         .byte   0       /* end of children of DIE 0x225 */
97         .byte   0       /* end of children of DIE 0x1e0 */
98 .S0x374:
99         .uleb128 0x23   /* (DIE (0x382) DW_TAG_inlined_subroutine) */
100         .4byte  .S0x1e0 - .Ldebug_info0 /* DW_AT_abstract_origin */
101         .4byte  .LFB4   /* DW_AT_low_pc */
102         .4byte  .LBE6-.LFB4     /* DW_AT_high_pc */
103         .byte   0x1     /* DW_AT_call_file (p.adb) */
104         .byte   0x1d    /* DW_AT_call_line */
105         .byte   0       /* end of children of DIE 0x382 */
106         .byte   0       /* end of children of DIE 0x1b4 */
107 .S0x4fc:
108         .uleb128 0x28   /* (DIE (0x52e) DW_TAG_subprogram) */
109                         /* DW_AT_external */
110         .ascii  "__gnat_rcheck_PE_Explicit_Raise\0" /* DW_AT_name */
111                         /* DW_AT_artificial */
112                         /* DW_AT_declaration */
113         .byte   0       /* end of children of DIE 0x52e */
114         .byte   0       /* end of children of DIE 0xb */
115 .Ledebug_info0:
116
117         .section        .debug_abbrev
118 .Ldebug_abbrev0:
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         .uleb128 0x12   /* (DW_AT_high_pc) */
133         .uleb128 0x6    /* (DW_FORM_data4) */
134         .byte   0
135         .byte   0
136         .uleb128 0x8    /* (abbrev code) */
137         .uleb128 0x24   /* (TAG: DW_TAG_base_type) */
138         .byte   0       /* DW_children_no */
139         .uleb128 0xb    /* (DW_AT_byte_size) */
140         .uleb128 0xb    /* (DW_FORM_data1) */
141         .uleb128 0x3e   /* (DW_AT_encoding) */
142         .uleb128 0xb    /* (DW_FORM_data1) */
143         .uleb128 0x3    /* (DW_AT_name) */
144         .uleb128 0x8    /* (DW_FORM_string) */
145         .byte   0
146         .byte   0
147         .uleb128 0x13   /* (abbrev code) */
148         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
149         .byte   0x1     /* DW_children_yes */
150         .uleb128 0x3f   /* (DW_AT_external) */
151         .uleb128 0x19   /* (DW_FORM_flag_present) */
152         .uleb128 0x3    /* (DW_AT_name) */
153         .uleb128 0x8    /* (DW_FORM_string) */
154         .uleb128 0x3a   /* (DW_AT_decl_file) */
155         .uleb128 0xb    /* (DW_FORM_data1) */
156         .uleb128 0x3b   /* (DW_AT_decl_line) */
157         .uleb128 0xb    /* (DW_FORM_data1) */
158         .uleb128 0x11   /* (DW_AT_low_pc) */
159         .uleb128 0x1    /* (DW_FORM_addr) */
160         .uleb128 0x12   /* (DW_AT_high_pc) */
161         .uleb128 0x6    /* (DW_FORM_data4) */
162         .uleb128 0x40   /* (DW_AT_frame_base) */
163         .uleb128 0x18   /* (DW_FORM_exprloc) */
164         .uleb128 0x2117 /* (DW_AT_GNU_all_call_sites) */
165         .uleb128 0x19   /* (DW_FORM_flag_present) */
166         .byte   0
167         .byte   0
168         .uleb128 0x15   /* (abbrev code) */
169         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
170         .byte   0x1     /* DW_children_yes */
171         .uleb128 0x3    /* (DW_AT_name) */
172         .uleb128 0x8    /* (DW_FORM_string) */
173         .uleb128 0x3a   /* (DW_AT_decl_file) */
174         .uleb128 0xb    /* (DW_FORM_data1) */
175         .uleb128 0x3b   /* (DW_AT_decl_line) */
176         .uleb128 0xb    /* (DW_FORM_data1) */
177         .uleb128 0x20   /* (DW_AT_inline) */
178         .uleb128 0xb    /* (DW_FORM_data1) */
179         .byte   0
180         .byte   0
181         .uleb128 0x18   /* (abbrev code) */
182         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
183         .byte   0x1     /* DW_children_yes */
184         .uleb128 0x31   /* (DW_AT_abstract_origin) */
185         .uleb128 0x13   /* (DW_FORM_ref4) */
186         .uleb128 0x11   /* (DW_AT_low_pc) */
187         .uleb128 0x1    /* (DW_FORM_addr) */
188         .uleb128 0x12   /* (DW_AT_high_pc) */
189         .uleb128 0x6    /* (DW_FORM_data4) */
190         .uleb128 0x40   /* (DW_AT_frame_base) */
191         .uleb128 0x18   /* (DW_FORM_exprloc) */
192         .uleb128 0x48   /* (DW_AT_static_link) */
193         .uleb128 0x18   /* (DW_FORM_exprloc) */
194         .uleb128 0x2117 /* (DW_AT_GNU_all_call_sites) */
195         .uleb128 0x19   /* (DW_FORM_flag_present) */
196         .byte   0
197         .byte   0
198         .uleb128 0x1a   /* (abbrev code) */
199         .uleb128 0x1d   /* (TAG: DW_TAG_inlined_subroutine) */
200         .byte   0x1     /* DW_children_yes */
201         .uleb128 0x31   /* (DW_AT_abstract_origin) */
202         .uleb128 0x13   /* (DW_FORM_ref4) */
203         .uleb128 0x11   /* (DW_AT_low_pc) */
204         .uleb128 0x1    /* (DW_FORM_addr) */
205         .uleb128 0x12   /* (DW_AT_high_pc) */
206         .uleb128 0x6    /* (DW_FORM_data4) */
207         .uleb128 0x58   /* (DW_AT_call_file) */
208         .uleb128 0xb    /* (DW_FORM_data1) */
209         .uleb128 0x59   /* (DW_AT_call_line) */
210         .uleb128 0xb    /* (DW_FORM_data1) */
211         .byte   0
212         .byte   0
213         .uleb128 0x23   /* (abbrev code) */
214         .uleb128 0x1d   /* (TAG: DW_TAG_inlined_subroutine) */
215         .byte   0x1     /* DW_children_yes */
216         .uleb128 0x31   /* (DW_AT_abstract_origin) */
217         .uleb128 0x13   /* (DW_FORM_ref4) */
218         .uleb128 0x11   /* (DW_AT_low_pc) */
219         .uleb128 0x1    /* (DW_FORM_addr) */
220         .uleb128 0x12   /* (DW_AT_high_pc) */
221         .uleb128 0x6    /* (DW_FORM_data4) */
222         .uleb128 0x58   /* (DW_AT_call_file) */
223         .uleb128 0xb    /* (DW_FORM_data1) */
224         .uleb128 0x59   /* (DW_AT_call_line) */
225         .uleb128 0xb    /* (DW_FORM_data1) */
226         .byte   0
227         .byte   0
228         .uleb128 0x28   /* (abbrev code) */
229         .uleb128 0x2e   /* (TAG: DW_TAG_subprogram) */
230         .byte   0x1     /* DW_children_yes */
231         .uleb128 0x3f   /* (DW_AT_external) */
232         .uleb128 0x19   /* (DW_FORM_flag_present) */
233         .uleb128 0x3    /* (DW_AT_name) */
234         .uleb128 0x8    /* (DW_FORM_string) */
235         .uleb128 0x34   /* (DW_AT_artificial) */
236         .uleb128 0x19   /* (DW_FORM_flag_present) */
237         .uleb128 0x3c   /* (DW_AT_declaration) */
238         .uleb128 0x19   /* (DW_FORM_flag_present) */
239         .byte   0
240         .byte   0
241         .byte   0
242         .byte   0
243         .byte   0
244
245         .section .debug_line
246 .Lline1_begin:
247         .byte   0
248