Returning from the STG world.
-------------------------------------------------------------------------- */
+INFO_TABLE_RET( stg_stop_thread, STOP_FRAME,
#if defined(PROFILING)
-#define STOP_THREAD_BITMAP 3
-#define STOP_THREAD_WORDS 2
-#else
-#define STOP_THREAD_BITMAP 0
-#define STOP_THREAD_WORDS 0
+ W_ unused,
+ W_ unused
#endif
-
-INFO_TABLE_RET( stg_stop_thread, STOP_THREAD_WORDS, STOP_THREAD_BITMAP,
- STOP_FRAME)
+)
{
/*
The final exit.
jump R2;
}
+stg_threadFinished
+{
+ StgRegTable_rRet(BaseReg) = ThreadFinished;
+ R1 = BaseReg;
+ jump StgReturn;
+}
+
/* -----------------------------------------------------------------------------
Strict IO application - performing an IO action and entering its result.
forceIO takes care of this, performing the IO action and entering the
results that comes back.
+
------------------------------------------------------------------------- */
-INFO_TABLE_RET( stg_forceIO, 0/*size*/, 0/*bitmap*/, RET_SMALL)
+INFO_TABLE_RET( stg_forceIO, RET_SMALL)
#ifdef REG_R1
{
is a register or not.
------------------------------------------------------------------------- */
-INFO_TABLE_RET( stg_noforceIO, 0/*size*/, 0/*bitmap*/, RET_SMALL )
+INFO_TABLE_RET( stg_noforceIO, RET_SMALL )
#ifdef REG_R1
{