This is due to the use of an agreement, in particular an agreement for calls . In MIPS, calleรฉ saves some registers on the stack, if they need to use them, and registers need to be saved and where on the stack they are stored, it is indicated in some agreement. The IDK is about SPIM, but SGI IRIX has two different conventions: o32 and n32 (for "old" and "new"), you may have some luck for Google.
source share