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-05-18 09:18:05 by simonmar]
[ghc-hetmet.git]
/
ghc
/
rts
/
Storage.c
diff --git
a/ghc/rts/Storage.c
b/ghc/rts/Storage.c
index
eb9e989
..
c2939d9
100644
(file)
--- a/
ghc/rts/Storage.c
+++ b/
ghc/rts/Storage.c
@@
-1,5
+1,5
@@
/* -----------------------------------------------------------------------------
/* -----------------------------------------------------------------------------
- * $Id: Storage.c,v 1.35 2001/01/31 11:04:29 simonmar Exp $
+ * $Id: Storage.c,v 1.37 2001/03/22 03:51:10 hwloidl Exp $
*
* (c) The GHC Team, 1998-1999
*
*
* (c) The GHC Team, 1998-1999
*
@@
-249,7
+249,6
@@
newCAF(StgClosure* caf)
*/
ACQUIRE_LOCK(&sm_mutex);
*/
ACQUIRE_LOCK(&sm_mutex);
-#ifdef GHCI
if (is_dynamically_loaded_rwdata_ptr((StgPtr)caf)) {
((StgIndStatic *)caf)->saved_info = (StgInfoTable *)caf->header.info;
((StgIndStatic *)caf)->static_link = caf_list;
if (is_dynamically_loaded_rwdata_ptr((StgPtr)caf)) {
((StgIndStatic *)caf)->saved_info = (StgInfoTable *)caf->header.info;
((StgIndStatic *)caf)->static_link = caf_list;
@@
-259,13
+258,17
@@
newCAF(StgClosure* caf)
((StgMutClosure *)caf)->mut_link = oldest_gen->mut_once_list;
oldest_gen->mut_once_list = (StgMutClosure *)caf;
}
((StgMutClosure *)caf)->mut_link = oldest_gen->mut_once_list;
oldest_gen->mut_once_list = (StgMutClosure *)caf;
}
-#else
- ASSERT( ((StgMutClosure*)caf)->mut_link == NULL );
- ((StgMutClosure *)caf)->mut_link = oldest_gen->mut_once_list;
- oldest_gen->mut_once_list = (StgMutClosure *)caf;
-#endif
RELEASE_LOCK(&sm_mutex);
RELEASE_LOCK(&sm_mutex);
+
+#ifdef PAR
+ /* If we are PAR or DIST then we never forget a CAF */
+ { globalAddr *newGA;
+ //belch("<##> Globalising CAF %08x %s",caf,info_type(caf));
+ newGA=makeGlobal(caf,rtsTrue); /*given full weight*/
+ ASSERT(newGA);
+ }
+#endif PAR
}
/* -----------------------------------------------------------------------------
}
/* -----------------------------------------------------------------------------