source: Deliverables/D2.2/8051/tests/clight/fib.ERTL.expected @ 486

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

Deliverable D2.2

File size: 3.7 KB
Line 
1program
2
3globals 0
4
5procedure fib(1)
6var %0, %1, %2, %3, %4, %5, %6,
7    %7, %8, %9, %10, %11, %12, %13,
8    %14, %15, %16, %17, %18, %19
9entry fib37
10fib37: newframe          --> fib36       
11fib36: move  %19, $ra    --> fib35       
12fib35: move  %18, $s7    --> fib34       
13fib34: move  %17, $s6    --> fib33       
14fib33: move  %16, $s5    --> fib32       
15fib32: move  %15, $s4    --> fib31       
16fib31: move  %14, $s3    --> fib30       
17fib30: move  %13, $s2    --> fib29       
18fib29: move  %12, $s1    --> fib28       
19fib28: move  %11, $s0    --> fib27       
20fib27: move  %0, $a0     --> fib26       
21fib26: li    %1, 0       --> fib25       
22fib25: li    %2, 0       --> fib24       
23fib24: li    %4, 0       --> fib23       
24fib23: li    %5, 0       --> fib22       
25fib22: li    %6, 0       --> fib21       
26fib21: li    %7, 0       --> fib20       
27fib20: li    %8, 0       --> fib19       
28fib19: li    %9, 0       --> fib18       
29fib18: li    %10, 0      --> fib17       
30fib17: emit c4           --> fib16       
31fib16: li    %9, 0       --> fib15       
32fib15: li    %10, 2      --> fib14       
33fib14: slt   %8, %0, %10 --> fib13       
34fib13: beq   %8, %9      --> fib10, fib12
35fib12: emit c3           --> fib11       
36fib11: li    %3, 1       --> fib0       
37fib0 : j                 --> fib49       
38fib49: move  $v0, %3     --> fib48       
39fib48: move  $ra, %19    --> fib47       
40fib47: move  $s7, %18    --> fib46       
41fib46: move  $s6, %17    --> fib45       
42fib45: move  $s5, %16    --> fib44       
43fib44: move  $s4, %15    --> fib43       
44fib43: move  $s3, %14    --> fib42       
45fib42: move  $s2, %13    --> fib41       
46fib41: move  $s1, %12    --> fib40       
47fib40: move  $s0, %11    --> fib39       
48fib39: delframe          --> fib38       
49fib38: jr    $ra         (xmits $v0)     
50fib10: emit c2           --> fib9       
51fib9 : li    %7, 1       --> fib8       
52fib8 : subu  %6, %0, %7  --> fib7       
53fib7 : j                 --> fib55       
54fib55: move  $a0, %6     --> fib54       
55fib54: call  fib(1)      --> fib53       
56fib53: move  %1, $v0     --> fib6       
57fib6 : emit c1           --> fib5       
58fib5 : li    %5, 2       --> fib4       
59fib4 : subu  %4, %0, %5  --> fib3       
60fib3 : j                 --> fib52       
61fib52: move  $a0, %4     --> fib51       
62fib51: call  fib(1)      --> fib50       
63fib50: move  %2, $v0     --> fib2       
64fib2 : emit c0           --> fib1       
65fib1 : addu  %3, %1, %2  --> fib0       
66
67procedure _main(0)
68var %0, %1, %2, %3, %4, %5, %6,
69    %7, %8, %9, %10, %11
70entry main17
71main17: newframe       --> main16
72main16: move  %11, $ra --> main15
73main15: move  %10, $s7 --> main14
74main14: move  %9, $s6  --> main13
75main13: move  %8, $s5  --> main12
76main12: move  %7, $s4  --> main11
77main11: move  %6, $s3  --> main10
78main10: move  %5, $s2  --> main9 
79main9 : move  %4, $s1  --> main8 
80main8 : move  %3, $s0  --> main7 
81main7 : li    %0, 0    --> main6 
82main6 : li    %2, 0    --> main5 
83main5 : emit c6        --> main4 
84main4 : li    %2, 10   --> main3 
85main3 : j              --> main32
86main32: move  $a0, %2  --> main31
87main31: call  fib(1)   --> main30
88main30: move  %0, $v0  --> main2 
89main2 : emit c5        --> main1 
90main1 : move  %1, %0   --> main0 
91main0 : j              --> main29
92main29: move  $v0, %1  --> main28
93main28: move  $ra, %11 --> main27
94main27: move  $s7, %10 --> main26
95main26: move  $s6, %9  --> main25
96main25: move  $s5, %8  --> main24
97main24: move  $s4, %7  --> main23
98main23: move  $s3, %6  --> main22
99main22: move  $s2, %5  --> main21
100main21: move  $s1, %4  --> main20
101main20: move  $s0, %3  --> main19
102main19: delframe       --> main18
103main18: jr    $ra      (xmits $v0)
104
Note: See TracBrowser for help on using the repository browser.