Example 10. Moving a Function from Slow to Fast Memory at Run Time

.sect ".fir" .align 4 .label fir_src fir ; insert code here .label fir_end .text MVKL fir_src, A4 MVKH fir_src, A4 MVKL fir_end, A5 MVKH fir_end, A5 MVKL fir, A6 MVKH fir, A6 SUB A5, A4, A1 loop: [!A1] B done LDW *A4+ +, B3 NOP 4 ; branch occurs STW B3, *A6+ + SUB A1, 4, A1 B loop NOP 5 ; branch occurs done: B fir NOP 5 ; call occurs