Commit | Line | Data |
---|---|---|
46f35228 TT |
1 | /* This file was created using Clang -g -S from this source |
2 | code: | |
3 | ||
4 | int func(int p) { | |
5 | int x = p + 3; | |
6 | return x; | |
7 | } | |
8 | ||
9 | int main() { return func(3); } | |
10 | ||
11 | See http://sourceware.org/bugzilla/show_bug.cgi?id=14999 | |
12 | */ | |
13 | ||
14 | .file "trace-crash.c" | |
15 | .file 1 "trace-crash.c" | |
16 | .text | |
17 | .globl func | |
18 | .align 16, 0x90 | |
19 | .type func,@function | |
20 | func: # @func | |
21 | .cfi_startproc | |
22 | .Lfunc_begin0: | |
23 | .loc 1 1 0 # trace-crash.c:1:0 | |
24 | # BB#0: # %entry | |
25 | movl %edi, -4(%rsp) | |
26 | .loc 1 2 0 prologue_end # trace-crash.c:2:0 | |
27 | .Ltmp0: | |
28 | movl -4(%rsp), %edi | |
29 | addl $3, %edi | |
30 | movl %edi, -8(%rsp) | |
31 | .loc 1 3 0 # trace-crash.c:3:0 | |
32 | movl -8(%rsp), %eax | |
33 | ret | |
34 | .Ltmp1: | |
35 | .Ltmp2: | |
36 | .size func, .Ltmp2-func | |
37 | .Lfunc_end0: | |
38 | .cfi_endproc | |
39 | ||
40 | .globl main | |
41 | .align 16, 0x90 | |
42 | .type main,@function | |
43 | main: # @main | |
44 | .cfi_startproc | |
45 | .Lfunc_begin1: | |
46 | .loc 1 6 0 # trace-crash.c:6:0 | |
47 | # BB#0: # %entry | |
48 | pushq %rbp | |
49 | .Ltmp5: | |
50 | .cfi_def_cfa_offset 16 | |
51 | .Ltmp6: | |
52 | .cfi_offset %rbp, -16 | |
53 | movq %rsp, %rbp | |
54 | .Ltmp7: | |
55 | .cfi_def_cfa_register %rbp | |
56 | subq $16, %rsp | |
57 | movl $3, %edi | |
58 | movl $0, -4(%rbp) | |
59 | .loc 1 6 0 prologue_end # trace-crash.c:6:0 | |
60 | .Ltmp8: | |
61 | callq func | |
62 | addq $16, %rsp | |
63 | popq %rbp | |
64 | ret | |
65 | .Ltmp9: | |
66 | .Ltmp10: | |
67 | .size main, .Ltmp10-main | |
68 | .Lfunc_end1: | |
69 | .cfi_endproc | |
70 | ||
71 | .Ltext_end: | |
72 | .data | |
73 | .Ldata_end: | |
74 | .text | |
75 | .Lsection_end1: | |
76 | .section .debug_info,"",@progbits | |
77 | .Lsection_info: | |
78 | .section .debug_abbrev,"",@progbits | |
79 | .Lsection_abbrev: | |
80 | .section .debug_aranges,"",@progbits | |
81 | .section .debug_macinfo,"",@progbits | |
82 | .section .debug_line,"",@progbits | |
83 | .Lsection_line: | |
84 | .section .debug_loc,"",@progbits | |
85 | .section .debug_pubtypes,"",@progbits | |
86 | .section .debug_str,"MS",@progbits,1 | |
87 | .Linfo_string: | |
88 | .section .debug_ranges,"",@progbits | |
89 | .Ldebug_range: | |
90 | .section .debug_loc,"",@progbits | |
91 | .Lsection_debug_loc: | |
92 | .text | |
93 | .Ltext_begin: | |
94 | .data | |
95 | .section .debug_info,"",@progbits | |
96 | .L.debug_info_begin0: | |
97 | .long 147 # Length of Compilation Unit Info | |
98 | .short 2 # DWARF version number | |
99 | .long .L.debug_abbrev_begin # Offset Into Abbrev. Section | |
100 | .byte 8 # Address Size (in bytes) | |
101 | .byte 1 # Abbrev [1] 0xb:0x8c DW_TAG_compile_unit | |
102 | .long .Linfo_string0 # DW_AT_producer | |
103 | .short 12 # DW_AT_language | |
104 | .long .Linfo_string1 # DW_AT_name | |
105 | .quad 0 # DW_AT_low_pc | |
106 | .long .Lsection_line # DW_AT_stmt_list | |
107 | .long .Linfo_string2 # DW_AT_comp_dir | |
108 | .byte 2 # Abbrev [2] 0x26:0x4c DW_TAG_subprogram | |
109 | .long .Linfo_string3 # DW_AT_name | |
110 | .byte 1 # DW_AT_decl_file | |
111 | .byte 1 # DW_AT_decl_line | |
112 | # DW_AT_prototyped | |
113 | .long 114 # DW_AT_type | |
114 | # DW_AT_external | |
115 | .quad .Lfunc_begin0 # DW_AT_low_pc | |
116 | .quad .Lfunc_end0 # DW_AT_high_pc | |
117 | .byte 1 # DW_AT_frame_base | |
118 | .byte 87 | |
119 | # DW_AT_APPLE_omit_frame_ptr | |
120 | .byte 3 # Abbrev [3] 0x43:0xe DW_TAG_formal_parameter | |
121 | .long .Linfo_string6 # DW_AT_name | |
122 | .byte 1 # DW_AT_decl_file | |
123 | .byte 1 # DW_AT_decl_line | |
124 | .long 114 # DW_AT_type | |
125 | .byte 2 # DW_AT_location | |
126 | .byte 145 | |
127 | .byte 124 | |
128 | .byte 4 # Abbrev [4] 0x51:0x20 DW_TAG_lexical_block | |
129 | .quad .Ltmp0 # DW_AT_low_pc | |
130 | .quad .Ltmp1 # DW_AT_high_pc | |
131 | .byte 5 # Abbrev [5] 0x62:0xe DW_TAG_variable | |
132 | .long .Linfo_string7 # DW_AT_name | |
133 | .byte 1 # DW_AT_decl_file | |
134 | .byte 2 # DW_AT_decl_line | |
135 | .long 114 # DW_AT_type | |
136 | .byte 2 # DW_AT_location | |
137 | .byte 145 | |
138 | .byte 120 | |
139 | .byte 0 # End Of Children Mark | |
140 | .byte 0 # End Of Children Mark | |
141 | .byte 6 # Abbrev [6] 0x72:0x7 DW_TAG_base_type | |
142 | .long .Linfo_string4 # DW_AT_name | |
143 | .byte 5 # DW_AT_encoding | |
144 | .byte 4 # DW_AT_byte_size | |
145 | .byte 7 # Abbrev [7] 0x79:0x1d DW_TAG_subprogram | |
146 | .long .Linfo_string5 # DW_AT_name | |
147 | .byte 1 # DW_AT_decl_file | |
148 | .byte 6 # DW_AT_decl_line | |
149 | .long 114 # DW_AT_type | |
150 | # DW_AT_external | |
151 | .quad .Lfunc_begin1 # DW_AT_low_pc | |
152 | .quad .Lfunc_end1 # DW_AT_high_pc | |
153 | .byte 1 # DW_AT_frame_base | |
154 | .byte 86 | |
155 | .byte 0 # End Of Children Mark | |
156 | .L.debug_info_end0: | |
157 | .section .debug_abbrev,"",@progbits | |
158 | .L.debug_abbrev_begin: | |
159 | .byte 1 # Abbreviation Code | |
160 | .byte 17 # DW_TAG_compile_unit | |
161 | .byte 1 # DW_CHILDREN_yes | |
162 | .byte 37 # DW_AT_producer | |
163 | .byte 14 # DW_FORM_strp | |
164 | .byte 19 # DW_AT_language | |
165 | .byte 5 # DW_FORM_data2 | |
166 | .byte 3 # DW_AT_name | |
167 | .byte 14 # DW_FORM_strp | |
168 | .byte 17 # DW_AT_low_pc | |
169 | .byte 1 # DW_FORM_addr | |
170 | .byte 16 # DW_AT_stmt_list | |
171 | .byte 6 # DW_FORM_data4 | |
172 | .byte 27 # DW_AT_comp_dir | |
173 | .byte 14 # DW_FORM_strp | |
174 | .byte 0 # EOM(1) | |
175 | .byte 0 # EOM(2) | |
176 | .byte 2 # Abbreviation Code | |
177 | .byte 46 # DW_TAG_subprogram | |
178 | .byte 1 # DW_CHILDREN_yes | |
179 | .byte 3 # DW_AT_name | |
180 | .byte 14 # DW_FORM_strp | |
181 | .byte 58 # DW_AT_decl_file | |
182 | .byte 11 # DW_FORM_data1 | |
183 | .byte 59 # DW_AT_decl_line | |
184 | .byte 11 # DW_FORM_data1 | |
185 | .byte 39 # DW_AT_prototyped | |
186 | .byte 25 # DW_FORM_flag_present | |
187 | .byte 73 # DW_AT_type | |
188 | .byte 19 # DW_FORM_ref4 | |
189 | .byte 63 # DW_AT_external | |
190 | .byte 25 # DW_FORM_flag_present | |
191 | .byte 17 # DW_AT_low_pc | |
192 | .byte 1 # DW_FORM_addr | |
193 | .byte 18 # DW_AT_high_pc | |
194 | .byte 1 # DW_FORM_addr | |
195 | .byte 64 # DW_AT_frame_base | |
196 | .byte 10 # DW_FORM_block1 | |
197 | .ascii "\347\177" # DW_AT_APPLE_omit_frame_ptr | |
198 | .byte 25 # DW_FORM_flag_present | |
199 | .byte 0 # EOM(1) | |
200 | .byte 0 # EOM(2) | |
201 | .byte 3 # Abbreviation Code | |
202 | .byte 5 # DW_TAG_formal_parameter | |
203 | .byte 0 # DW_CHILDREN_no | |
204 | .byte 3 # DW_AT_name | |
205 | .byte 14 # DW_FORM_strp | |
206 | .byte 58 # DW_AT_decl_file | |
207 | .byte 11 # DW_FORM_data1 | |
208 | .byte 59 # DW_AT_decl_line | |
209 | .byte 11 # DW_FORM_data1 | |
210 | .byte 73 # DW_AT_type | |
211 | .byte 19 # DW_FORM_ref4 | |
212 | .byte 2 # DW_AT_location | |
213 | .byte 10 # DW_FORM_block1 | |
214 | .byte 0 # EOM(1) | |
215 | .byte 0 # EOM(2) | |
216 | .byte 4 # Abbreviation Code | |
217 | .byte 11 # DW_TAG_lexical_block | |
218 | .byte 1 # DW_CHILDREN_yes | |
219 | .byte 17 # DW_AT_low_pc | |
220 | .byte 1 # DW_FORM_addr | |
221 | .byte 18 # DW_AT_high_pc | |
222 | .byte 1 # DW_FORM_addr | |
223 | .byte 0 # EOM(1) | |
224 | .byte 0 # EOM(2) | |
225 | .byte 5 # Abbreviation Code | |
226 | .byte 52 # DW_TAG_variable | |
227 | .byte 0 # DW_CHILDREN_no | |
228 | .byte 3 # DW_AT_name | |
229 | .byte 14 # DW_FORM_strp | |
230 | .byte 58 # DW_AT_decl_file | |
231 | .byte 11 # DW_FORM_data1 | |
232 | .byte 59 # DW_AT_decl_line | |
233 | .byte 11 # DW_FORM_data1 | |
234 | .byte 73 # DW_AT_type | |
235 | .byte 19 # DW_FORM_ref4 | |
236 | .byte 2 # DW_AT_location | |
237 | .byte 10 # DW_FORM_block1 | |
238 | .byte 0 # EOM(1) | |
239 | .byte 0 # EOM(2) | |
240 | .byte 6 # Abbreviation Code | |
241 | .byte 36 # DW_TAG_base_type | |
242 | .byte 0 # DW_CHILDREN_no | |
243 | .byte 3 # DW_AT_name | |
244 | .byte 14 # DW_FORM_strp | |
245 | .byte 62 # DW_AT_encoding | |
246 | .byte 11 # DW_FORM_data1 | |
247 | .byte 11 # DW_AT_byte_size | |
248 | .byte 11 # DW_FORM_data1 | |
249 | .byte 0 # EOM(1) | |
250 | .byte 0 # EOM(2) | |
251 | .byte 7 # Abbreviation Code | |
252 | .byte 46 # DW_TAG_subprogram | |
253 | .byte 0 # DW_CHILDREN_no | |
254 | .byte 3 # DW_AT_name | |
255 | .byte 14 # DW_FORM_strp | |
256 | .byte 58 # DW_AT_decl_file | |
257 | .byte 11 # DW_FORM_data1 | |
258 | .byte 59 # DW_AT_decl_line | |
259 | .byte 11 # DW_FORM_data1 | |
260 | .byte 73 # DW_AT_type | |
261 | .byte 19 # DW_FORM_ref4 | |
262 | .byte 63 # DW_AT_external | |
263 | .byte 25 # DW_FORM_flag_present | |
264 | .byte 17 # DW_AT_low_pc | |
265 | .byte 1 # DW_FORM_addr | |
266 | .byte 18 # DW_AT_high_pc | |
267 | .byte 1 # DW_FORM_addr | |
268 | .byte 64 # DW_AT_frame_base | |
269 | .byte 10 # DW_FORM_block1 | |
270 | .byte 0 # EOM(1) | |
271 | .byte 0 # EOM(2) | |
272 | .byte 0 # EOM(3) | |
273 | .L.debug_abbrev_end: | |
274 | .section .debug_aranges,"",@progbits | |
275 | .section .debug_ranges,"",@progbits | |
276 | .section .debug_macinfo,"",@progbits | |
277 | .section .debug_str,"MS",@progbits,1 | |
278 | .Linfo_string0: | |
279 | .asciz "clang version 3.3 " | |
280 | .Linfo_string1: | |
281 | .asciz "trace-crash.c" | |
282 | .Linfo_string2: | |
283 | .asciz "/tmp" | |
284 | .Linfo_string3: | |
285 | .asciz "func" | |
286 | .Linfo_string4: | |
287 | .asciz "int" | |
288 | .Linfo_string5: | |
289 | .asciz "main" | |
290 | .Linfo_string6: | |
291 | .asciz "p" | |
292 | .Linfo_string7: | |
293 | .asciz "x" | |
294 | ||
295 | .section ".note.GNU-stack","",@progbits |