1. 07 Jul, 2009 1 commit
  2. 16 Mar, 2009 1 commit
    • dias@eecs.tufts.edu's avatar
      stack overflows and out of memory's · 5dc8b425
      dias@eecs.tufts.edu authored
      1. Stack overflow fixed by making dataflow monad strict in the state.
      2. Out of memory fixed by "forgetting" lastoutfacts in the dataflow monad
         where we should. We were creating an unnecessarily long list that grew
         exponentially...
      5dc8b425
  3. 03 Mar, 2009 1 commit
    • dias@eecs.harvard.edu's avatar
      A few bug fixes; some improvements spurred by paper writing · 31a9d048
      dias@eecs.harvard.edu authored
      Among others:
      - Fixed Stg->C-- translation of let-no-escapes -- it's important to use the
        right continuation...
      - Fixed infinite recursion in X86 backend (shortcutJump mishandled infinite loops)
      - Fixed yet another wrong calling convention -- primops take args only in vanilla regs,
        but they may return results on the stack!
      - Removed StackInfo from LGraph and Block -- now in LastCall and CmmZ
      - Updated avail-variable and liveness code
      31a9d048
  4. 17 Oct, 2008 1 commit
  5. 16 Oct, 2008 1 commit
    • dias@eecs.harvard.edu's avatar
      Fixed linear regalloc bug, dropped some tracing code · c62b824e
      dias@eecs.harvard.edu authored
      o The linear-scan register allocator sometimes allocated a block
        before allocating one of its predecessors, which could lead
        to inconsistent allocations. Now, we allocate a block only
        if a predecessor has set the "incoming" assignments for the block
        (or if it's the procedure's entry block).
      o Also commented out some tracing code on the new codegen path.
      c62b824e
  6. 14 Oct, 2008 1 commit
    • dias@eecs.harvard.edu's avatar
      Clarify the SRT building process · e367ebeb
      dias@eecs.harvard.edu authored
      Before: building a closure that would build an SRT given the top-level
      SRT. It was somewhat difficult to understand the control flow, and it
      may have had held onto some data structures long after they should be dead.
      Now, I just bundle the info we need about CAFs along with the procedure
      and directly call a new top-level function to build the SRTs later.
      e367ebeb
  7. 13 Oct, 2008 2 commits