]>
Commit | Line | Data |
---|---|---|
42a4f53d | 1 | /* Copyright (C) 2012-2019 Free Software Foundation, Inc. |
06d66ee9 TT |
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 | This was created using clang -g -S dw2-restrict.c. | |
17 | ||
18 | */ | |
19 | ||
06d66ee9 | 20 | .text |
5c2c8c69 TV |
21 | .file "dw2-restrict.c" |
22 | .globl f # -- Begin function f | |
23 | .p2align 4, 0x90 | |
06d66ee9 TT |
24 | .type f,@function |
25 | f: # @f | |
06d66ee9 | 26 | .Lfunc_begin0: |
5c2c8c69 TV |
27 | .file 1 "dw2-restrict.c" |
28 | .loc 1 19 0 # dw2-restrict.c:19:0 | |
29 | .cfi_startproc | |
06d66ee9 | 30 | # BB#0: |
5c2c8c69 TV |
31 | pushq %rbp |
32 | .Lcfi0: | |
33 | .cfi_def_cfa_offset 16 | |
34 | .Lcfi1: | |
35 | .cfi_offset %rbp, -16 | |
36 | movq %rsp, %rbp | |
37 | .Lcfi2: | |
38 | .cfi_def_cfa_register %rbp | |
39 | movq %rdi, -8(%rbp) | |
40 | .Ltmp0: | |
41 | .loc 1 20 10 prologue_end # dw2-restrict.c:20:10 | |
42 | movq -8(%rbp), %rdi | |
43 | movsbl (%rdi), %eax | |
44 | .loc 1 20 3 is_stmt 0 # dw2-restrict.c:20:3 | |
45 | popq %rbp | |
46 | retq | |
06d66ee9 | 47 | .Ltmp1: |
06d66ee9 | 48 | .Lfunc_end0: |
5c2c8c69 TV |
49 | .size f, .Lfunc_end0-f |
50 | .cfi_endproc | |
51 | # -- End function | |
52 | .globl main # -- Begin function main | |
53 | .p2align 4, 0x90 | |
06d66ee9 TT |
54 | .type main,@function |
55 | main: # @main | |
06d66ee9 | 56 | .Lfunc_begin1: |
5c2c8c69 TV |
57 | .loc 1 24 0 is_stmt 1 # dw2-restrict.c:24:0 |
58 | .cfi_startproc | |
06d66ee9 TT |
59 | # BB#0: |
60 | pushq %rbp | |
5c2c8c69 TV |
61 | .Lcfi3: |
62 | .cfi_def_cfa_offset 16 | |
63 | .Lcfi4: | |
64 | .cfi_offset %rbp, -16 | |
06d66ee9 | 65 | movq %rsp, %rbp |
5c2c8c69 TV |
66 | .Lcfi5: |
67 | .cfi_def_cfa_register %rbp | |
06d66ee9 | 68 | subq $16, %rsp |
5c2c8c69 | 69 | movabsq $.L.str, %rdi |
06d66ee9 | 70 | movl $0, -4(%rbp) |
5c2c8c69 TV |
71 | .Ltmp2: |
72 | .loc 1 25 10 prologue_end # dw2-restrict.c:25:10 | |
73 | callq f | |
74 | .loc 1 25 3 is_stmt 0 # dw2-restrict.c:25:3 | |
75 | addq $16, %rsp | |
76 | popq %rbp | |
77 | retq | |
78 | .Ltmp3: | |
06d66ee9 | 79 | .Lfunc_end1: |
5c2c8c69 TV |
80 | .size main, .Lfunc_end1-main |
81 | .cfi_endproc | |
82 | # -- End function | |
06d66ee9 TT |
83 | .type .L.str,@object # @.str |
84 | .section .rodata.str1.1,"aMS",@progbits,1 | |
85 | .L.str: | |
5c2c8c69 | 86 | .asciz "hi bob" |
06d66ee9 TT |
87 | .size .L.str, 7 |
88 | ||
5c2c8c69 TV |
89 | .section .debug_str,"MS",@progbits,1 |
90 | .Linfo_string0: | |
91 | .asciz "clang version 5.0.1 (tags/RELEASE_501/final 312548)" # string offset=0 | |
92 | .Linfo_string1: | |
93 | .asciz "dw2-restrict.c" # string offset=52 | |
94 | .Linfo_string2: | |
95 | .asciz "/data/gdb_versions/devel/src/gdb/testsuite/gdb.dwarf2" # string offset=67 | |
96 | .Linfo_string3: | |
97 | .asciz "f" # string offset=121 | |
98 | .Linfo_string4: | |
99 | .asciz "int" # string offset=123 | |
100 | .Linfo_string5: | |
101 | .asciz "main" # string offset=127 | |
102 | .Linfo_string6: | |
103 | .asciz "x" # string offset=132 | |
104 | .Linfo_string7: | |
105 | .asciz "char" # string offset=134 | |
06d66ee9 | 106 | .section .debug_abbrev,"",@progbits |
06d66ee9 TT |
107 | .byte 1 # Abbreviation Code |
108 | .byte 17 # DW_TAG_compile_unit | |
109 | .byte 1 # DW_CHILDREN_yes | |
110 | .byte 37 # DW_AT_producer | |
5c2c8c69 | 111 | .byte 14 # DW_FORM_strp |
06d66ee9 TT |
112 | .byte 19 # DW_AT_language |
113 | .byte 5 # DW_FORM_data2 | |
114 | .byte 3 # DW_AT_name | |
5c2c8c69 | 115 | .byte 14 # DW_FORM_strp |
06d66ee9 | 116 | .byte 16 # DW_AT_stmt_list |
5c2c8c69 | 117 | .byte 23 # DW_FORM_sec_offset |
06d66ee9 | 118 | .byte 27 # DW_AT_comp_dir |
5c2c8c69 TV |
119 | .byte 14 # DW_FORM_strp |
120 | .ascii "\264B" # DW_AT_GNU_pubnames | |
121 | .byte 25 # DW_FORM_flag_present | |
122 | .byte 17 # DW_AT_low_pc | |
123 | .byte 1 # DW_FORM_addr | |
124 | .byte 18 # DW_AT_high_pc | |
125 | .byte 6 # DW_FORM_data4 | |
06d66ee9 TT |
126 | .byte 0 # EOM(1) |
127 | .byte 0 # EOM(2) | |
128 | .byte 2 # Abbreviation Code | |
06d66ee9 TT |
129 | .byte 46 # DW_TAG_subprogram |
130 | .byte 1 # DW_CHILDREN_yes | |
5c2c8c69 TV |
131 | .byte 17 # DW_AT_low_pc |
132 | .byte 1 # DW_FORM_addr | |
133 | .byte 18 # DW_AT_high_pc | |
134 | .byte 6 # DW_FORM_data4 | |
135 | .byte 64 # DW_AT_frame_base | |
136 | .byte 24 # DW_FORM_exprloc | |
06d66ee9 | 137 | .byte 3 # DW_AT_name |
5c2c8c69 | 138 | .byte 14 # DW_FORM_strp |
06d66ee9 TT |
139 | .byte 58 # DW_AT_decl_file |
140 | .byte 11 # DW_FORM_data1 | |
141 | .byte 59 # DW_AT_decl_line | |
142 | .byte 11 # DW_FORM_data1 | |
143 | .byte 39 # DW_AT_prototyped | |
5c2c8c69 | 144 | .byte 25 # DW_FORM_flag_present |
06d66ee9 TT |
145 | .byte 73 # DW_AT_type |
146 | .byte 19 # DW_FORM_ref4 | |
147 | .byte 63 # DW_AT_external | |
5c2c8c69 | 148 | .byte 25 # DW_FORM_flag_present |
06d66ee9 TT |
149 | .byte 0 # EOM(1) |
150 | .byte 0 # EOM(2) | |
5c2c8c69 | 151 | .byte 3 # Abbreviation Code |
06d66ee9 TT |
152 | .byte 5 # DW_TAG_formal_parameter |
153 | .byte 0 # DW_CHILDREN_no | |
5c2c8c69 TV |
154 | .byte 2 # DW_AT_location |
155 | .byte 24 # DW_FORM_exprloc | |
06d66ee9 | 156 | .byte 3 # DW_AT_name |
5c2c8c69 | 157 | .byte 14 # DW_FORM_strp |
06d66ee9 TT |
158 | .byte 58 # DW_AT_decl_file |
159 | .byte 11 # DW_FORM_data1 | |
160 | .byte 59 # DW_AT_decl_line | |
161 | .byte 11 # DW_FORM_data1 | |
162 | .byte 73 # DW_AT_type | |
163 | .byte 19 # DW_FORM_ref4 | |
06d66ee9 TT |
164 | .byte 0 # EOM(1) |
165 | .byte 0 # EOM(2) | |
5c2c8c69 | 166 | .byte 4 # Abbreviation Code |
06d66ee9 TT |
167 | .byte 46 # DW_TAG_subprogram |
168 | .byte 0 # DW_CHILDREN_no | |
5c2c8c69 TV |
169 | .byte 17 # DW_AT_low_pc |
170 | .byte 1 # DW_FORM_addr | |
171 | .byte 18 # DW_AT_high_pc | |
172 | .byte 6 # DW_FORM_data4 | |
173 | .byte 64 # DW_AT_frame_base | |
174 | .byte 24 # DW_FORM_exprloc | |
06d66ee9 | 175 | .byte 3 # DW_AT_name |
5c2c8c69 | 176 | .byte 14 # DW_FORM_strp |
06d66ee9 TT |
177 | .byte 58 # DW_AT_decl_file |
178 | .byte 11 # DW_FORM_data1 | |
179 | .byte 59 # DW_AT_decl_line | |
180 | .byte 11 # DW_FORM_data1 | |
181 | .byte 73 # DW_AT_type | |
182 | .byte 19 # DW_FORM_ref4 | |
183 | .byte 63 # DW_AT_external | |
5c2c8c69 TV |
184 | .byte 25 # DW_FORM_flag_present |
185 | .byte 0 # EOM(1) | |
186 | .byte 0 # EOM(2) | |
187 | .byte 5 # Abbreviation Code | |
188 | .byte 36 # DW_TAG_base_type | |
189 | .byte 0 # DW_CHILDREN_no | |
190 | .byte 3 # DW_AT_name | |
191 | .byte 14 # DW_FORM_strp | |
192 | .byte 62 # DW_AT_encoding | |
193 | .byte 11 # DW_FORM_data1 | |
194 | .byte 11 # DW_AT_byte_size | |
195 | .byte 11 # DW_FORM_data1 | |
06d66ee9 TT |
196 | .byte 0 # EOM(1) |
197 | .byte 0 # EOM(2) | |
198 | .byte 6 # Abbreviation Code | |
5c2c8c69 | 199 | .byte 55 # DW_TAG_restrict_type |
06d66ee9 TT |
200 | .byte 0 # DW_CHILDREN_no |
201 | .byte 73 # DW_AT_type | |
202 | .byte 19 # DW_FORM_ref4 | |
06d66ee9 TT |
203 | .byte 0 # EOM(1) |
204 | .byte 0 # EOM(2) | |
205 | .byte 7 # Abbreviation Code | |
5c2c8c69 | 206 | .byte 15 # DW_TAG_pointer_type |
06d66ee9 TT |
207 | .byte 0 # DW_CHILDREN_no |
208 | .byte 73 # DW_AT_type | |
209 | .byte 19 # DW_FORM_ref4 | |
210 | .byte 0 # EOM(1) | |
211 | .byte 0 # EOM(2) | |
212 | .byte 0 # EOM(3) | |
5c2c8c69 TV |
213 | .section .debug_info,"",@progbits |
214 | .Lcu_begin0: | |
215 | .long 128 # Length of Unit | |
216 | .short 4 # DWARF version number | |
217 | .long .debug_abbrev # Offset Into Abbrev. Section | |
218 | .byte 8 # Address Size (in bytes) | |
219 | .byte 1 # Abbrev [1] 0xb:0x79 DW_TAG_compile_unit | |
220 | .long .Linfo_string0 # DW_AT_producer | |
221 | .short 12 # DW_AT_language | |
222 | .long .Linfo_string1 # DW_AT_name | |
223 | .long .Lline_table_start0 # DW_AT_stmt_list | |
224 | .long .Linfo_string2 # DW_AT_comp_dir | |
225 | # DW_AT_GNU_pubnames | |
226 | .quad .Lfunc_begin0 # DW_AT_low_pc | |
227 | .long .Lfunc_end1-.Lfunc_begin0 # DW_AT_high_pc | |
228 | .byte 2 # Abbrev [2] 0x2a:0x28 DW_TAG_subprogram | |
229 | .quad .Lfunc_begin0 # DW_AT_low_pc | |
230 | .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc | |
231 | .byte 1 # DW_AT_frame_base | |
232 | .byte 86 | |
233 | .long .Linfo_string3 # DW_AT_name | |
234 | .byte 1 # DW_AT_decl_file | |
235 | .byte 18 # DW_AT_decl_line | |
236 | # DW_AT_prototyped | |
237 | .long 107 # DW_AT_type | |
238 | # DW_AT_external | |
239 | .byte 3 # Abbrev [3] 0x43:0xe DW_TAG_formal_parameter | |
240 | .byte 2 # DW_AT_location | |
241 | .byte 145 | |
242 | .byte 120 | |
243 | .long .Linfo_string6 # DW_AT_name | |
244 | .byte 1 # DW_AT_decl_file | |
245 | .byte 18 # DW_AT_decl_line | |
246 | .long 114 # DW_AT_type | |
247 | .byte 0 # End Of Children Mark | |
248 | .byte 4 # Abbrev [4] 0x52:0x19 DW_TAG_subprogram | |
249 | .quad .Lfunc_begin1 # DW_AT_low_pc | |
250 | .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc | |
251 | .byte 1 # DW_AT_frame_base | |
252 | .byte 86 | |
253 | .long .Linfo_string5 # DW_AT_name | |
254 | .byte 1 # DW_AT_decl_file | |
255 | .byte 23 # DW_AT_decl_line | |
256 | .long 107 # DW_AT_type | |
257 | # DW_AT_external | |
258 | .byte 5 # Abbrev [5] 0x6b:0x7 DW_TAG_base_type | |
259 | .long .Linfo_string4 # DW_AT_name | |
260 | .byte 5 # DW_AT_encoding | |
261 | .byte 4 # DW_AT_byte_size | |
262 | .byte 6 # Abbrev [6] 0x72:0x5 DW_TAG_restrict_type | |
263 | .long 119 # DW_AT_type | |
264 | .byte 7 # Abbrev [7] 0x77:0x5 DW_TAG_pointer_type | |
265 | .long 124 # DW_AT_type | |
266 | .byte 5 # Abbrev [5] 0x7c:0x7 DW_TAG_base_type | |
267 | .long .Linfo_string7 # DW_AT_name | |
268 | .byte 6 # DW_AT_encoding | |
269 | .byte 1 # DW_AT_byte_size | |
270 | .byte 0 # End Of Children Mark | |
271 | .section .debug_ranges,"",@progbits | |
272 | .section .debug_macinfo,"",@progbits | |
273 | .Lcu_macro_begin0: | |
274 | .byte 0 # End Of Macro List Mark | |
06d66ee9 | 275 | .section .debug_pubnames,"",@progbits |
5c2c8c69 TV |
276 | .long .LpubNames_end0-.LpubNames_begin0 # Length of Public Names Info |
277 | .LpubNames_begin0: | |
06d66ee9 | 278 | .short 2 # DWARF Version |
5c2c8c69 TV |
279 | .long .Lcu_begin0 # Offset of Compilation Unit Info |
280 | .long 132 # Compilation Unit Length | |
281 | .long 82 # DIE offset | |
282 | .asciz "main" # External Name | |
283 | .long 42 # DIE offset | |
284 | .asciz "f" # External Name | |
06d66ee9 | 285 | .long 0 # End Mark |
5c2c8c69 | 286 | .LpubNames_end0: |
06d66ee9 | 287 | .section .debug_pubtypes,"",@progbits |
5c2c8c69 TV |
288 | .long .LpubTypes_end0-.LpubTypes_begin0 # Length of Public Types Info |
289 | .LpubTypes_begin0: | |
06d66ee9 | 290 | .short 2 # DWARF Version |
5c2c8c69 TV |
291 | .long .Lcu_begin0 # Offset of Compilation Unit Info |
292 | .long 132 # Compilation Unit Length | |
293 | .long 107 # DIE offset | |
294 | .asciz "int" # External Name | |
295 | .long 124 # DIE offset | |
296 | .asciz "char" # External Name | |
06d66ee9 | 297 | .long 0 # End Mark |
5c2c8c69 | 298 | .LpubTypes_end0: |
06d66ee9 | 299 | |
5c2c8c69 | 300 | .ident "clang version 5.0.1 (tags/RELEASE_501/final 312548)" |
06d66ee9 | 301 | .section ".note.GNU-stack","",@progbits |
5c2c8c69 TV |
302 | .section .debug_line,"",@progbits |
303 | .Lline_table_start0: |