stg_gc_unpt_r1_ret: if R1 isn't mapped to a real register,
keep it on the stack.
I confess to 'pushing symbols' here a bit, as the exact
nature (and function) of stg_gc_unpt_r1_info isn't clear
to me (documentation isn't abundant, for one.) However,
it will now behave in a manner consistent with what
the code generator emits in the unregisterised case.
/* -----------------------------------------------------------------------------
- * $Id: HeapStackCheck.hc,v 1.24 2002/02/28 16:25:15 sof Exp $
+ * $Id: HeapStackCheck.hc,v 1.25 2002/02/28 18:54:53 sof Exp $
*
* (c) The GHC Team, 1998-1999
*
EXTFUN(stg_gc_unpt_r1_ret)
{
FB_
+#ifdef REG_R1
R1.w = Sp[0];
Sp += 1;
JMP_(ENTRY_CODE(Sp[0]));
+#else
+ /* Keep R1 on the stack */
+ JMP_(ENTRY_CODE(Sp[1]));
+#endif
FE_
}