]> matita.cs.unibo.it Git - pkg-cerco/acc.git/blob - tests/clight/ifthenelse.ASM.expected
Package description and copyright added.
[pkg-cerco/acc.git] / tests / clight / ifthenelse.ASM.expected
1 .data                  
2 globals:               
3 .space 0           
4 nl:                    
5 .asciiz "\n"      
6 .align 2             
7 .text                 
8 main:                 
9 la    $gp, globals    
10 j     main91              
11 write:                
12 li    $v0, 1          
13 syscall               
14 jr     $ra            
15 writeln:              
16 li    $v0, 1          
17 syscall               
18 la    $a0, nl         
19 li    $v0, 4          
20 syscall               
21 jr     $ra            
22 readln:               
23 li    $v0, 5          
24 syscall               
25 jr     $ra            
26 alloc:                
27 li    $v0, 9          
28 syscall               
29 jr     $ra            
30
31 # begin if_ual
32 if_ual84:
33 li    $v0, 0
34 c74:
35 li    $a3, 0
36 seq   $a3, $a0, $a3
37 beq   $a3, $zero, if_ual43
38 c73:
39 addu  $v0, $a1, $a2
40 if_ual2:
41 c62:
42 jr    $ra
43 if_ual43:
44 c72:
45 li    $a3, 1
46 seq   $a3, $a0, $a3
47 beq   $a3, $zero, if_ual36
48 c71:
49 subu  $v0, $a1, $a2
50 j     if_ual2
51 if_ual36:
52 c70:
53 li    $a3, 2
54 seq   $a3, $a0, $a3
55 beq   $a3, $zero, if_ual19
56 c69:
57 c68:
58 beq   $a1, $zero, if_ual20
59 c67:
60 beq   $a2, $zero, if_ual21
61 li    $v0, 1
62 j     if_ual2
63 if_ual21:
64 li    $v0, 0
65 j     if_ual2
66 if_ual20:
67 li    $v0, 0
68 j     if_ual2
69 if_ual19:
70 c66:
71 li    $a3, 3
72 seq   $a0, $a0, $a3
73 beq   $a0, $zero, if_ual2
74 c65:
75 c64:
76 beq   $a1, $zero, if_ual7
77 li    $v0, 1
78 j     if_ual2
79 if_ual7:
80 c63:
81 beq   $a2, $zero, if_ual3
82 li    $v0, 1
83 j     if_ual2
84 if_ual3:
85 li    $v0, 0
86 j     if_ual2
87 # end if_ual
88
89 # begin if_test
90 if_test55:
91 c61:
92 li    $v0, 0
93 c60:
94 c59:
95 c58:
96 c57:
97 c56:
98 slt   $t0, $a0, $a1
99 beq   $t0, $zero, if_test15
100 c55:
101 addu  $v0, $a0, $a1
102 if_test15:
103 c54:
104 slt   $a0, $a2, $a3
105 beq   $a0, $zero, if_test7
106 c53:
107 c52:
108 if_test7:
109 c51:
110 c50:
111 c49:
112 jr    $ra
113 # end if_test
114
115 # begin if_sansElse
116 if_sansElse25:
117 c48:
118 li    $v0, 0
119 c47:
120 slt   $a1, $a0, $a1
121 beq   $a1, $zero, if_sansElse2
122 c46:
123 move  $v0, $a0
124 if_sansElse2:
125 c45:
126 jr    $ra
127 # end if_sansElse
128
129 # begin if_prog
130 if_prog30:
131 c44:
132 addu  $v0, $a1, $a0
133 c43:
134 li    $a0, 0
135 slt   $v0, $v0, $zero
136 beq   $v0, $a0, if_prog4
137 c42:
138 li    $v0, 2
139 if_prog2:
140 c40:
141 jr    $ra
142 if_prog4:
143 c41:
144 li    $v0, 3
145 j     if_prog2
146 # end if_prog
147
148 # begin if_min
149 if_min25:
150 move  $v0, $a1
151 c39:
152 sgt   $a1, $a0, $v0
153 beq   $a1, $zero, if_min4
154 c38:
155 if_min2:
156 c36:
157 jr    $ra
158 if_min4:
159 c37:
160 move  $v0, $a0
161 j     if_min2
162 # end if_min
163
164 # begin if_jian
165 if_jian92:
166 addiu $sp, $sp, -20
167 lw    $t4, 0($sp)
168 lw    $t3, 4($sp)
169 lw    $t2, 8($sp)
170 lw    $t0, 12($sp)
171 lw    $t1, 16($sp)
172 li    $v0, 0
173 c15:
174 addu  $a0, $a0, $a1
175 slt   $t5, $a0, $a2
176 c14:
177 addu  $a1, $a3, $t4
178 c13:
179 li    $a0, 1
180 addu  $a2, $a2, $a0
181 c12:
182 li    $a0, 1
183 seq   $a0, $t1, $a0
184 beq   $a0, $zero, if_jian8
185 c11:
186 beq   $t5, $zero, if_jian30
187 c10:
188 addu  $v0, $a2, $a3
189 if_jian24:
190 c7:
191 li    $a1, 0
192 c6:
193 li    $a0, 0
194 seq   $a0, $t5, $a0
195 beq   $a0, $a1, if_jian12
196 li    $a0, 0
197 c5:
198 beq   $t0, $a0, if_jian13
199 li    $a0, 1
200 if_jian11:
201 beq   $a0, $zero, if_jian2
202 c4:
203 if_jian2:
204 c0:
205 addiu $sp, $sp, 20
206 jr    $ra
207 if_jian13:
208 li    $a0, 0
209 j     if_jian11
210 if_jian12:
211 li    $a0, 0
212 j     if_jian11
213 if_jian30:
214 c9:
215 li    $a0, 0
216 seq   $a0, $t0, $a0
217 beq   $a0, $zero, if_jian24
218 c8:
219 addu  $v0, $a1, $a3
220 j     if_jian24
221 if_jian8:
222 c3:
223 addu  $v0, $a2, $t4
224 c2:
225 addu  $v0, $v0, $t3
226 c1:
227 addu  $v0, $v0, $t2
228 j     if_jian2
229 # end if_jian
230
231 # begin if_imbriq2
232 if_imbriq234:
233 move  $v0, $a0
234 c35:
235 slt   $a0, $v0, $a1
236 beq   $a0, $zero, if_imbriq24
237 c34:
238 slt   $v0, $a1, $a2
239 beq   $v0, $zero, if_imbriq26
240 c33:
241 move  $v0, $a1
242 if_imbriq22:
243 c30:
244 jr    $ra
245 if_imbriq26:
246 c32:
247 li    $v0, 47
248 j     if_imbriq22
249 if_imbriq24:
250 c31:
251 j     if_imbriq22
252 # end if_imbriq2
253
254 # begin if_imbriq1
255 if_imbriq134:
256 move  $v0, $a2
257 c29:
258 slt   $a2, $a0, $a1
259 beq   $a2, $zero, if_imbriq14
260 c28:
261 slt   $a0, $a1, $v0
262 beq   $a0, $zero, if_imbriq16
263 c27:
264 move  $v0, $a1
265 if_imbriq12:
266 c24:
267 jr    $ra
268 if_imbriq16:
269 c26:
270 j     if_imbriq12
271 if_imbriq14:
272 c25:
273 move  $v0, $a0
274 j     if_imbriq12
275 # end if_imbriq1
276
277 # begin if_exSimple
278 if_exSimple39:
279 c23:
280 slt   $v0, $a0, $a1
281 beq   $v0, $zero, if_exSimple9
282 c22:
283 addu  $v0, $a0, $a1
284 c21:
285 li    $a0, 2
286 mul   $v0, $a0, $v0
287 c20:
288 if_exSimple2:
289 c16:
290 jr    $ra
291 if_exSimple9:
292 c19:
293 li    $v0, 2
294 mul   $v0, $v0, $a1
295 c18:
296 addu  $v0, $v0, $a0
297 c17:
298 addu  $v0, $v0, $a1
299 j     if_exSimple2
300 # end if_exSimple
301
302 # begin _main
303 main91:
304 addiu $sp, $sp, -4
305 sw    $ra, 0($sp)
306 c84:
307 li    $a0, 1
308 li    $a1, 2
309 li    $a2, 3
310 li    $a3, 4
311 li    $t3, 5
312 li    $t2, 6
313 li    $t1, 7
314 li    $t0, 8
315 li    $v0, 9
316 sw    $t3, -20($sp)
317 sw    $t2, -16($sp)
318 sw    $t1, -12($sp)
319 sw    $t0, -8($sp)
320 sw    $v0, -4($sp)
321 jal   if_jian92
322 c83:
323 li    $a0, 1
324 li    $a1, 2
325 jal   if_exSimple39
326 c82:
327 li    $a0, 1
328 li    $a1, 2
329 li    $a2, 3
330 jal   if_imbriq134
331 c81:
332 li    $a0, 1
333 li    $a1, 2
334 li    $a2, 3
335 jal   if_imbriq234
336 c80:
337 li    $a0, 1
338 li    $a1, 2
339 jal   if_min25
340 c79:
341 li    $a0, 1
342 li    $a1, 2
343 jal   if_prog30
344 c78:
345 li    $a0, 1
346 li    $a1, 2
347 jal   if_sansElse25
348 c77:
349 li    $a0, 1
350 li    $a1, 2
351 li    $a2, 3
352 li    $a3, 4
353 jal   if_test55
354 c76:
355 li    $a0, 1
356 li    $a1, 2
357 li    $a2, 3
358 jal   if_ual84
359 c75:
360 lw    $ra, 0($sp)
361 addiu $sp, $sp, 4
362 jr    $ra
363 # end _main