1. 20 Sep, 2007 2 commits
  2. 21 Sep, 2007 4 commits
  3. 19 Sep, 2007 2 commits
  4. 20 Sep, 2007 2 commits
  5. 19 Sep, 2007 6 commits
  6. 18 Sep, 2007 1 commit
  7. 19 Sep, 2007 1 commit
  8. 18 Sep, 2007 4 commits
  9. 16 Sep, 2007 2 commits
  10. 18 Sep, 2007 1 commit
  11. 17 Sep, 2007 3 commits
    • Ben.Lippmeier@anu.edu.au's avatar
      Tune coalescing in non-iterative register allocator · fff4dee0
      Ben.Lippmeier@anu.edu.au authored
      If iterative coalescing isn't turned on, then do a single aggressive
      coalescing pass for the first build/color cycle and then back off to 
      conservative coalescing for subseqent passes.
      
      Aggressive coalescing is a cheap way to eliminate lots of the reg-reg
      moves, but it can make the graph less colorable - if we turn it on 
      for every pass then allocation for code with a large amount of register
      pressure (ie SHA1) doesn't converge in a sensible number of cycles.
      fff4dee0
    • Ben.Lippmeier@anu.edu.au's avatar
      Bugfix to iterative coalescer · 6a347ffc
      Ben.Lippmeier@anu.edu.au authored
      Coalescences must be applied to the unsimplified graph in the same order 
      they were found by the iterative coalescing algorithm - otherwise
      the vreg rewrite mapping will be wrong and badness will ensue.
      6a347ffc
    • Ben.Lippmeier@anu.edu.au's avatar
      Add -dasm-lint · 1116b874
      Ben.Lippmeier@anu.edu.au authored
      When -dasm-lint is turned on the register conflict graph is checked for 
      internal consistency after each build/color pass. Make sure that all 
      edges point to valid nodes, that nodes are colored differently to their
      neighbours, and if the graph is supposed to be colored, that all nodes
      actually have a color.
      1116b874
  12. 14 Sep, 2007 4 commits
  13. 17 Sep, 2007 8 commits