simonmar    2005/02/11 06:01:36 PST

  Modified files:
    ghc/rts              GC.c 
  Log:
  Careful with mutable list entries that point to THUNKs: the thunk
  might be updated, and the resulting IND_OLDGEN will be on the mutable
  list twice.
  
  We previously avoided this problem by having an extra MUT_CONS object
  on the mutable list pointing to the THUNK, so that we could tell the
  difference between the entry on the mutable list that used to be the
  THUNK, and the new entry for the IND_OLDGEN.
  
  We don't have MUT_CONS any more (this was part of the cleanup from
  separating the mutable list from the heap).  So, now, when scavenging
  an IND_OLDGEN on the mutable list, we check whether it is pointing to
  an already-evacuated object.  This is a bit crude, but at least it is
  a localised hack.
  
  Revision  Changes    Path
  1.177     +18 -7     fptools/ghc/rts/GC.c
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to