interpreter: Fix underflow frame lookups
Whilst a BCO is being interpreted the stack may overflow. At this point, not enough context from the old stack may be copied onto the new stack. PUSH_L etc instructions which refer to positions further up the stack may not be able to directly access the stack position they need (as it will be on the previous stack chunk).
Therefore GetSpW
first performs a bounds check to ensure that accesses onto
the stack will succeed. If they will underflow then the slow_spw
function is called,
which dereferences the underflow frame before performing the lookup.
See ticket #25750 (closed)