Skip to content
  1. Oct 12, 2010
  2. Oct 08, 2010
  3. Aug 12, 2010
  4. Aug 10, 2010
    • Jakob Stoklund Olesen's avatar
      Give up on register class recalculation when the register is used with subreg · 57f3db6e
      Jakob Stoklund Olesen authored
      operands. We don't currently have a hook to provide "the largest super class of
      A where all registers' getSubReg(subidx) is valid and in B".
      
      llvm-svn: 110730
      57f3db6e
    • Jakob Stoklund Olesen's avatar
      Implement register class inflation. · 53c50220
      Jakob Stoklund Olesen authored
      When splitting a live range, the new registers have fewer uses and the
      permissible register class may be less constrained. Recompute the register class
      constraint from the uses of new registers created for a split. This may let them
      be allocated from a larger set, possibly avoiding a spill.
      
      llvm-svn: 110703
      53c50220
    • Jakob Stoklund Olesen's avatar
      Transpose the calculation of spill weights such that we are calculating one · e00c49da
      Jakob Stoklund Olesen authored
      register at a time. This turns out to be slightly faster than iterating over
      instructions, but more importantly, it allows us to compute spill weights for
      new registers created after the spill weight pass has run.
      
      Also compute the allocation hint at the same time as the spill weight. This
      allows us to use the spill weight as a cost metric for copies, and choose the
      most profitable hint if there is more than one possibility.
      
      The new hints provide a very small (< 0.1%) but universal code size improvement.
      
      llvm-svn: 110631
      e00c49da
  5. Jul 22, 2010
  6. Jul 16, 2010
  7. Jul 03, 2010
  8. Feb 18, 2010
    • Jakob Stoklund Olesen's avatar
      Always normalize spill weights, also for intervals created by spilling. · c953acbd
      Jakob Stoklund Olesen authored
      Moderate the weight given to very small intervals.
      
      The spill weight given to new intervals created when spilling was not
      normalized in the same way as the original spill weights calculated by
      CalcSpillWeights. That meant that restored registers would tend to hang around
      because they had a much higher spill weight that unspilled registers.
      
      This improves the runtime of a few tests by up to 10%, and there are no
      significant regressions.
      
      llvm-svn: 96613
      c953acbd
  9. Feb 10, 2010
  10. Feb 09, 2010
  11. Dec 24, 2009
    • David Greene's avatar
      · e40730d8
      David Greene authored
      Change errs() to dbgs().
      
      llvm-svn: 92099
      e40730d8
  12. Dec 22, 2009
  13. Dec 14, 2009
Loading