Analog Devices ADSP-BF53x Blackfin Reference page 150

Table of Contents

Advertisement

Branches
CALL _sub;
R1 = [SP++];
R0 = [SP++];
...
_parent.end:
_sub:
[--SP] = FP;
FP = SP;
[--SP] = (R7:5);
R6 = [FP+4];
R7 = [FP+8];
R5 = R6 + R7;
R6 = R6 - R7;
[FP+4] = R5;
[FP+8] = R6;
(R7:5) = [SP++];
FP = [SP++];
RTS;
_sub.end:
Since the stack pointer
operations, the frame pointer
Because the 32-bit frame pointer itself must be pushed onto the stack first,
the
is four bytes off the original
FP
4-16
ADSP-BF53x/BF56x Blackfin Processor Programming Reference
/* R1 = 4 */
/* R0 = 2 */
/* save frame pointer */
/* new frame */
/* multiple push */
/* R6 = 3 */
/* R7 = 1 */
/* calculate anything */
/* R5 = 4 */
/* R6 = 2 */
/* multiple pop */
/* restore frame pointer */
is modified inside the subroutine for local stack
SP
is used to save the original state of
FP
value.
SP
.
SP

Advertisement

Table of Contents
loading

This manual is also suitable for:

Adsp-bf56x blackfin

Table of Contents