X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FStorage.c;h=7957d73ce582e0de3d04c3e5c18cd29c624f1232;hb=2109f5e292cca24ab8bfeee4d6aba375e9f3dc84;hp=0e25b4200a7cfca82afc4e7ba10abd522f0879b0;hpb=5a148f04e9deedc21d06d1aaf869542624858af4;p=ghc-hetmet.git diff --git a/ghc/rts/Storage.c b/ghc/rts/Storage.c index 0e25b42..7957d73 100644 --- a/ghc/rts/Storage.c +++ b/ghc/rts/Storage.c @@ -368,13 +368,16 @@ void resetNurseries( void ) { bdescr *bd; -#ifdef SMP Capability *cap; - + +#ifdef SMP /* All tasks must be stopped */ ASSERT(rts_n_free_capabilities == RtsFlags.ParFlags.nNodes); - - for (cap = free_capabilities; cap != NULL; cap = cap->link) { + for (cap = free_capabilities; cap != NULL; cap = cap->link) +#else + cap = &MainCapability; +#endif + { for (bd = cap->r.rNursery; bd; bd = bd->link) { bd->free = bd->start; ASSERT(bd->gen_no == 0); @@ -383,16 +386,6 @@ resetNurseries( void ) } cap->r.rCurrentNursery = cap->r.rNursery; } -#else - for (bd = g0s0->blocks; bd; bd = bd->link) { - bd->free = bd->start; - ASSERT(bd->gen_no == 0); - ASSERT(bd->step == g0s0); - IF_DEBUG(sanity,memset(bd->start, 0xaa, BLOCK_SIZE)); - } - MainCapability.r.rNursery = g0s0->blocks; - MainCapability.r.rCurrentNursery = g0s0->blocks; -#endif } bdescr *