I'm trying to understand how to use this.
Is it already enabled and it's just looking for the values of various virtual methods that can be overridden?
Mips 16 only has 8 free general registers but there are a lot of mips32 registers that I can use in limited ways.
Some fancy schemes for addressing can cause too much register pressure to make it worth it.
if I want to maintain an additional pointer I can for example, using a pair of unused Mips32 registers, keep the value in a mips32 register and bring it back to live quickl.
Value is in Reg32X.
Reg32Y = Reg16Z
Reg16Z = Reg32X
... do some things with Reg16Z/Reg32X
Reg16z = Reg32Y ; restore Reg16Z
These move instructions are both 16 bit instructions.
At some point I have think of some more formal ways to use the Mips32 registers.