current->[fp-4] last->[fp-8] sum->[fp-12] x->[fp+68] _fib: save sp,-112,sp st R0,[fp+68] mov 1,R0 st R0,[fp-4] st R0,[fp-8] st R0,[fp-12] ld [fp+68],R0 sub R0,2,R0 st R0,[fp+68] cond: ld [fp+68],R0 mov 0,R1 cmp R0,R1 ble body b exit body: ld [fp-4],R0 ld [fp-8],R1 add R0,R1,R0 st R0,[fp-12] ld [fp-4],R0 st R0,[fp-8] ld [fp-12],R0 st R0,[fp-4] ld [fp+68],R0 sub R0,1,R0 st R0,[fp+68] b cond exit: ld [fp-12],R0 restore ret