23 lines
449 B
ArmAsm
23 lines
449 B
ArmAsm
_start:
|
|
li x1, 8 // ITERATION * 4
|
|
li x2, 5 * 4 // MAX ITERATIONS * 4
|
|
li x6, 0x100000 // MEM OFFSET
|
|
|
|
li x5, 1
|
|
sw x5, 4(x6)
|
|
fib:
|
|
add x3, x6, x1
|
|
lw x4, -4(x3) // get a
|
|
lw x5, -8(x3) // get b
|
|
add x4, x4, x5 // a = a + b
|
|
sw x4, (x3) // store a to c
|
|
|
|
// increment or stop
|
|
add x1, x1, 4
|
|
bne x1, x2, fib
|
|
|
|
li x5, 12345678
|
|
sw x5, (x6)
|
|
li x5, 0
|
|
lw x5, (x6)
|
|
mv x6, x5 |