1. 26 Sep, 2007 1 commit
  2. 08 Oct, 2007 1 commit
  3. 02 Oct, 2007 5 commits
  4. 01 Oct, 2007 1 commit
  5. 29 Sep, 2007 2 commits
  6. 28 Sep, 2007 1 commit
  7. 27 Sep, 2007 6 commits
  8. 26 Sep, 2007 5 commits
  9. 25 Sep, 2007 1 commit
  10. 24 Sep, 2007 2 commits
  11. 17 Sep, 2007 1 commit
    • Simon Marlow's avatar
      FIX #1038: failure of selector-thunk machinery to do its job · 2018c430
      Simon Marlow authored
      After a couple of abortive attempts, I think I've got this right.
      When the GC sees a chain of the form 
      
         snd (_, snd (_, snd (_, ...)))
      
      it can now deal with an arbitrary nesting depth, whereas previously it
      had a depth limit which was necessitated by the use of recursion.  Now
      we chain all the selector thunks together in the heap, and go back and
      update them all when we find the value at the end of the chain.
      
      While I was here I removed some old cruft in eval_thunk_selector()
      which was carefully manintaing invariants that aren't necessary any
      more, the main one being that evacuate() can safely be passed a
      to-space pointer now.
      
      In addition to validate I've tested building a stage3 compiler with
      and without +RTS -c, so I'm reasonably sure this is safe.
      2018c430
  12. 14 Sep, 2007 1 commit
  13. 23 Sep, 2007 7 commits
  14. 20 Sep, 2007 2 commits
  15. 21 Sep, 2007 4 commits