From 7506b61eb225c4e4a0f7d0cd46eb9a4d38028475 Mon Sep 17 00:00:00 2001 From: simonmar Date: Fri, 25 Jan 2002 16:35:29 +0000 Subject: [PATCH] [project @ 2002-01-25 16:35:29 by simonmar] Fix bit-rot in TICKY_TICKY --- ghc/rts/Storage.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ghc/rts/Storage.h b/ghc/rts/Storage.h index f746d1f..d57057b 100644 --- a/ghc/rts/Storage.h +++ b/ghc/rts/Storage.h @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: Storage.h,v 1.37 2001/11/22 14:25:12 simonmar Exp $ + * $Id: Storage.h,v 1.38 2002/01/25 16:35:29 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -284,16 +284,21 @@ updateWithPermIndirection(const StgInfoTable *info, StgClosure *p1, StgClosure * ASSERT( p1 != p2 && !closure_IND(p1) ); +#ifdef PROFILING // @LDV profiling // Destroy the old closure. + // Nb: LDV_* stuff cannot mix with ticky-ticky LDV_recordDead_FILL_SLOP_DYNAMIC(p1); +#endif bd = Bdescr((P_)p1); if (bd->gen_no == 0) { ((StgInd *)p1)->indirectee = p2; SET_INFO(p1,&stg_IND_PERM_info); +#ifdef PROFILING // @LDV profiling // We have just created a new closure. LDV_recordCreate(p1); +#endif TICK_UPD_NEW_PERM_IND(p1); } else { ((StgIndOldGen *)p1)->indirectee = p2; @@ -304,9 +309,11 @@ updateWithPermIndirection(const StgInfoTable *info, StgClosure *p1, StgClosure * RELEASE_LOCK(&sm_mutex); } SET_INFO(p1,&stg_IND_OLDGEN_PERM_info); +#ifdef PROFILING // @LDV profiling // We have just created a new closure. LDV_recordCreate(p1); +#endif TICK_UPD_OLD_PERM_IND(); } } -- 1.7.10.4