Sure. And that new subroutine can call another one and so on.
In the Simple Linkage convention,
registers $s0―$s7 must not be altered by a subroutine.
But this restriction creates a problem when subroutines call other subroutines.
Say that main calls subA and
that subA calls subB.
subA can't save any values in $s0―$s7
(because it is not allowed to alter them).
But any values it saves in $t0―$t9 might be
clobbered by subB (because subB is
allowed to alter them).
In effect,
subA can't use any registers!
Not good.
The solution is to allow subA to use
$s0―$s7.
However, before using one of these registers,
subA must save its value on the stack.
Later, when
subA
returns to its caller,
it must restore the register to its initial state.