source: Deliverables/D2.2/8051/tests/clight/ifthenelse.LIN.expected

Last change on this file was 486, checked in by ayache, 9 years ago

Deliverable D2.2

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