projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 2001-08-29 15:12:21 by sewardj]
[ghc-hetmet.git]
/
ghc
/
rts
/
Exception.hc
diff --git
a/ghc/rts/Exception.hc
b/ghc/rts/Exception.hc
index
564420e
..
f7b5887
100644
(file)
--- a/
ghc/rts/Exception.hc
+++ b/
ghc/rts/Exception.hc
@@
-1,5
+1,5
@@
/* -----------------------------------------------------------------------------
/* -----------------------------------------------------------------------------
- * $Id: Exception.hc,v 1.18 2000/12/04 12:31:20 simonmar Exp $
+ * $Id: Exception.hc,v 1.21 2001/08/17 14:44:54 simonmar Exp $
*
* (c) The GHC Team, 1998-2000
*
*
* (c) The GHC Team, 1998-2000
*
@@
-7,6
+7,7
@@
*
* ---------------------------------------------------------------------------*/
*
* ---------------------------------------------------------------------------*/
+#include "Stg.h"
#include "Rts.h"
#include "Exception.h"
#include "Schedule.h"
#include "Rts.h"
#include "Exception.h"
#include "Schedule.h"
@@
-75,12
+76,12
@@
FN_(stg_unblockAsyncExceptionszh_ret_entry)
ASSERT(CurrentTSO->blocked_exceptions != NULL);
#if defined(GRAN)
awakenBlockedQueue(CurrentTSO->blocked_exceptions,
ASSERT(CurrentTSO->blocked_exceptions != NULL);
#if defined(GRAN)
awakenBlockedQueue(CurrentTSO->blocked_exceptions,
- CurrentTSO->block_info.closure);
+ (StgClosure*)NULL);
#elif defined(PAR)
#elif defined(PAR)
- // is CurrentTSO->block_info.closure always set to the node
- // holding the blocking queue !? -- HWL
+ /* we don't need node info (2nd arg) in this case
+ (note that CurrentTSO->block_info.closure isn't always set) */
awakenBlockedQueue(CurrentTSO->blocked_exceptions,
awakenBlockedQueue(CurrentTSO->blocked_exceptions,
- CurrentTSO->block_info.closure);
+ (StgClosure*)NULL);
#else
awakenBlockedQueue(CurrentTSO->blocked_exceptions);
#endif
#else
awakenBlockedQueue(CurrentTSO->blocked_exceptions);
#endif
@@
-348,7
+349,6
@@
FN_(raisezh_fast)
#if defined(PROFILING)
#if defined(PROFILING)
-
/* Debugging tool: on raising an exception, show where we are. */
/* ToDo: currently this is a hack. Would be much better if
/* Debugging tool: on raising an exception, show where we are. */
/* ToDo: currently this is a hack. Would be much better if
@@
-357,7
+357,6
@@
FN_(raisezh_fast)
if (RtsFlags.ProfFlags.showCCSOnException) {
STGCALL2(print_ccs,stderr,CCCS);
}
if (RtsFlags.ProfFlags.showCCSOnException) {
STGCALL2(print_ccs,stderr,CCCS);
}
-
#endif
p = Su;
#endif
p = Su;
@@
-368,7
+367,7
@@
FN_(raisezh_fast)
*/
raise_closure = (StgClosure *)RET_STGCALL1(P_,allocate,
sizeofW(StgClosure)+1);
*/
raise_closure = (StgClosure *)RET_STGCALL1(P_,allocate,
sizeofW(StgClosure)+1);
- raise_closure->header.info = &stg_raise_info;
+ SET_HDR(raise_closure, &stg_raise_info, CCCS);
raise_closure->payload[0] = R1.cl;
while (1) {
raise_closure->payload[0] = R1.cl;
while (1) {