paul99/v8m-rb — comment on commit 5e6309a9a108e8751692e6bced5cdc95cdee11fa
File: src/mips/deoptimizer-mips.cc line 861
By paul99:

Looks like ra is always stored below sp, per comment above: an interrupt will break things. And you have several instructions span where you rely on this value staying valid.
Now the only code I saw that executes one of these un-patched deopt entries, came via a computed goto: li(t9, 0xZZZZZZZ); jr(t9); If that is truly the only way to enter an un-patched deopt table entry, then the register t9 would be available as a temporary to hold ra.