* Copyright (c) 1994-1998.
*
* $RCSfile: Evaluator.c,v $
- * $Revision: 1.15 $
- * $Date: 1999/04/28 12:59:51 $
+ * $Revision: 1.16 $
+ * $Date: 1999/05/11 16:47:50 $
* ---------------------------------------------------------------------------*/
#include "Rts.h"
goto enterLoop;
}
case BLACKHOLE:
+ case SE_BLACKHOLE:
case CAF_BLACKHOLE:
+ case SE_CAF_BLACKHOLE:
{
/*was StgBlackHole* */
StgBlockingQueue* bh = (StgBlockingQueue*)obj;
xPushWord(payloadWord(ap,i));
}
obj = ap->fun;
-#ifndef LAZY_BLACKHOLING
-#error no no no
+#ifdef EAGER_BLACKHOLING
{
/* superfluous - but makes debugging easier */
StgBlackHole* bh = stgCast(StgBlackHole*,ap);
IF_DEBUG(gccafs,fprintf(stderr,"Eagerly blackholed AP_UPD %p in evaluator\n",bh));
/*printObj(bh); */
}
-#endif /* LAZY_BLACKHOLING */
+#endif /* EAGER_BLACKHOLING */
goto enterLoop;
}
case PAP:
printObj(obj);
fprintf(stderr,"Sp = %p\tSu = %p\n\n", Sp, Su);
);
-#ifndef LAZY_BLACKHOLING
+#ifdef EAGER_BLACKHOLING
ASSERT(get_itbl(Su->updatee)->type == BLACKHOLE
+ || get_itbl(Su->updatee)->type == SE_BLACKHOLE
|| get_itbl(Su->updatee)->type == CAF_BLACKHOLE
+ || get_itbl(Su->updatee)->type == SE_CAF_BLACKHOLE
);
-#endif /* LAZY_BLACKHOLING */
+#endif /* EAGER_BLACKHOLING */
UPD_IND(Su->updatee,obj);
Sp = stgCast(StgStackPtr,Su) + sizeofW(StgUpdateFrame);
Su = Su->link;