After a Procedure Call

Shrink the stack to pop off the arguments (if any):

    addi $sp, $sp, 4 * number of arguments

Restore any saved registers (if any):

    lw   $t0, 0($sp)
    lw   $t1, 4($sp)
    ...

Shrink the stack again (if needed):

    addi $sp, $sp, 4 * number of caller saved registers

To summarize:

    addi $sp, $sp, 4 * number of arguments
    lw   $t0, 0($sp)
    lw   $t1, 4($sp)
    ...
    addi $sp, $sp, 4 * number of caller saved registers


CSE 378 Spring 2002 - Section 4
First Previous Page 4 Next Last