[project @ 1999-11-09 15:46:49 by simonmar]
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.
Showing
- ghc/includes/Block.h 11 additions, 1 deletionghc/includes/Block.h
- ghc/includes/Regs.h 3 additions, 3 deletionsghc/includes/Regs.h
- ghc/includes/Rts.h 2 additions, 2 deletionsghc/includes/Rts.h
- ghc/includes/Stg.h 4 additions, 4 deletionsghc/includes/Stg.h
- ghc/includes/StgMacros.h 27 additions, 7 deletionsghc/includes/StgMacros.h
- ghc/includes/StgStorage.h 74 additions, 1 deletionghc/includes/StgStorage.h
- ghc/includes/Updates.h 47 additions, 22 deletionsghc/includes/Updates.h
- ghc/rts/BlockAlloc.h 1 addition, 11 deletionsghc/rts/BlockAlloc.h
- ghc/rts/ClosureFlags.c 3 additions, 3 deletionsghc/rts/ClosureFlags.c
- ghc/rts/GC.c 24 additions, 3 deletionsghc/rts/GC.c
- ghc/rts/HeapStackCheck.hc 13 additions, 1 deletionghc/rts/HeapStackCheck.hc
- ghc/rts/PrimOps.hc 4 additions, 2 deletionsghc/rts/PrimOps.hc
- ghc/rts/Schedule.c 57 additions, 272 deletionsghc/rts/Schedule.c
- ghc/rts/Schedule.h 3 additions, 1 deletionghc/rts/Schedule.h
- ghc/rts/Signals.c 2 additions, 2 deletionsghc/rts/Signals.c
- ghc/rts/Stats.c 53 additions, 13 deletionsghc/rts/Stats.c
- ghc/rts/Stats.h 2 additions, 1 deletionghc/rts/Stats.h
- ghc/rts/StgStdThunks.hc 4 additions, 2 deletionsghc/rts/StgStdThunks.hc
- ghc/rts/Storage.c 14 additions, 4 deletionsghc/rts/Storage.c
- ghc/rts/Storage.h 24 additions, 20 deletionsghc/rts/Storage.h
Loading
Please register or sign in to comment