Caller-Saved Registers
These are registers that be pushed to the OS Stack before function call, because the callee will modify them.
- Registers
$t0-$t7are caller saved - Registers
$a0-$a3are caller saved If you don’t care about these registers, then you dont need to push them.
Callee-Saved Registers
These are registers that are pushed to the OS Stack if the callee wants saved variables between calls.
- Registers
$s0-$s7are saved temporaries