• simonmar's avatar
    [project @ 1999-11-09 15:46:49 by simonmar] · 30681e79
    simonmar authored
    A slew of SMP-related changes.
     - New locking scheme for thunks: we now check whether the thunk
       being entered is in our private allocation area, and if so
       we don't lock it.  Well, that's the upshot.  In practice it's
       a lot more fiddly than that.
     - I/O blocking is handled a bit more sanely now (but still not
       properly, methinks)
     - deadlock detection is back
     - remove old pre-SMP scheduler code
     - revamp the timing code.  We actually get reasonable-looking
       timing info for SMP programs now.
     - fix a bug in the garbage collector to do with IND_OLDGENs appearing
       on the mutable list of the old generation.
     - move BDescr() function from rts/BlockAlloc.h to includes/Block.h.
     - move struct generation and struct step into includes/StgStorage.h (sigh)
     - add UPD_IND_NOLOCK for updating with an indirection where locking
       the black hole is not required.
Rts.h 2.63 KB