Commit 76ad1b30 authored by sof's avatar sof
Browse files

[project @ 2002-02-28 18:54:53 by sof]

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.
parent f3a251e3
/* -----------------------------------------------------------------------------
* $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
*
......@@ -669,9 +669,14 @@ INFO_TABLE_SRT_BITMAP(stg_gc_unpt_r1_info, stg_gc_unpt_r1_ret, 0/*BITMAP*/,
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_
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment