s3e: fix build break
[calu.git] / 8_benchs / src / fib.s
1 .text
2 main:
3         ldi r1, 9;
4         call+ fib;
5         br+ main;
6
7
8 fib:  ; a = r1
9         ldi r2, 0;
10         ldi r0, 0;
11 fib_2:
12         ;if(a < 2)
13         cmpi r1, 2;
14         addidlt r0, r0, 1;
15         retlt-; 
16         ;} else {
17         ;fib(a-1)
18 fib_3:
19         push r1;
20         subi r1, r1, 1;
21         call+ fib_2;
22         ;fib(a-1) + fib(a-2)
23         add r2, r0, r2;
24         ;fib(a-2)
25         pop r1;
26         subi r1, r1, 2;
27         br+ fib_2;