1. 06 Jul, 1999 1 commit
  2. 21 May, 1999 1 commit
    • sof's avatar
      [project @ 1999-05-21 14:46:19 by sof] · 263aaaa5
      sof authored
      Made rts_evalIO() stricter, i.e.,
      
         rts_evalIO( action );
      
      will now essentially cause `action' to be applied
      to the following (imaginary) defn of `evalIO':
      
          evalIO :: IO a -> IO a
          evalIO action = action >>= \ x -> x `seq` return x
      
      instead of just
      
          evalIO :: IO a -> IO a
          evalIO action = action >>= \ x -> return x
      
      The old, lazier behaviour is now available via rts_evalLazyIO().
      263aaaa5
  3. 11 May, 1999 1 commit
    • keithw's avatar
      [project @ 1999-05-11 16:47:39 by keithw] · eb407ca1
      keithw authored
      (this is number 9 of 9 commits to be applied together)
      
        Usage verification changes / ticky-ticky changes:
      
        We want to verify that SingleEntry thunks are indeed entered at most
        once.  In order to do this, -ticky / -DTICKY_TICKY turns on eager
        blackholing.  We blackhole with new blackholes: SE_BLACKHOLE and
        SE_CAF_BLACKHOLE.  We will enter one of these if we attempt to enter
        a SingleEntry thunk twice.  Note that CAFs are dealt with in by
        codeGen, and ordinary thunks by the RTS.
      
        We also want to see how many times we enter each Updatable thunk.
        To this end, we have modified -ticky.  When -ticky is on, we update
        with a permanent indirection, and arrange that when we enter a
        permanent indirection we count the entry and then convert the
        indirection to a normal indirection.  This gives us a means of
        counting the number of thunks entered again after the first entry.
        Obviously this screws up profiling, and so you can't build a ticky
        and profiling compiler any more.
      
        Also a few other changes that didn't make it into the previous 8
        commits, but form a part of this set.
      eb407ca1
  4. 02 Mar, 1999 1 commit
  5. 11 Feb, 1999 1 commit
  6. 05 Feb, 1999 2 commits
  7. 01 Feb, 1999 1 commit
  8. 26 Jan, 1999 1 commit
    • simonm's avatar
      [project @ 1999-01-26 11:12:41 by simonm] · ed4cd6d4
      simonm authored
      - Add Stable Names
      
      - Stable pointers and stable names are now both provided by the
        "Stable" module in ghc/lib/exts.  Documentation is updated, and Foriegn
        still exports the stable pointer operations for backwards compatibility.
      ed4cd6d4
  9. 15 Jan, 1999 2 commits
    • simonm's avatar
      [project @ 1999-01-15 17:57:03 by simonm] · 4ec89230
      simonm authored
      - Add new object BLACKHOLE_BQ: now a BLACKHOLE is defined as having an
        empty blocking queue, and the first time a thread blocks on a BLACKHOLE
        it is changed into a BLACKHOLE_BQ.
      
      - Remove UPD_INPLACE1 and replace it with UPD_IND in the two places it
        was used.  UPD_INPLACE1 wouldn't have worked in a generational setting.
      4ec89230
    • sewardj's avatar
      [project @ 1999-01-15 12:47:19 by sewardj] · f77b5a62
      sewardj authored
      Remove 'const' modifier from static closure declarations.  Static
      closures are meant to live in R/W data space.
      f77b5a62
  10. 13 Jan, 1999 1 commit
    • simonm's avatar
      [project @ 1999-01-13 17:25:37 by simonm] · 4391e44f
      simonm authored
      Added a generational garbage collector.
      
      The collector is reliable but fairly untuned as yet.  It works with an
      arbitrary number of generations: use +RTS -G<gens> to change the
      number of generations used (default 2).
      
      Stats: +RTS -Sstderr is quite useful, but to really see what's going
      on compile the RTS with -DDEBUG and use +RTS -D32.
      
      ARR_PTRS removed - it wasn't used anywhere.
      
      Sanity checking improved:
      	- free blocks are now spammed when sanity checking is turned on
      	- a check for leaking blocks is performed after each GC.
      4391e44f
  11. 02 Dec, 1998 1 commit