Skip to content
  1. Mar 17, 2011
  2. Mar 16, 2011
  3. Mar 13, 2011
  4. Mar 10, 2011
  5. Mar 09, 2011
  6. Mar 08, 2011
    • Jakob Stoklund Olesen's avatar
      Delete dead code after rematerializing. · ea5ebfed
      Jakob Stoklund Olesen authored
      LiveRangeEdit::eliminateDeadDefs() will eventually be used by coalescing,
      splitting, and spilling for dead code elimination. It can delete chains of dead
      instructions as long as there are no dependency loops.
      
      llvm-svn: 127287
      ea5ebfed
  7. Mar 07, 2011
  8. Mar 03, 2011
  9. Feb 19, 2011
  10. Feb 18, 2011
  11. Feb 03, 2011
    • Eric Christopher's avatar
      Reapply this. · ede62679
      Eric Christopher authored
      llvm-svn: 124779
      ede62679
    • Eric Christopher's avatar
    • Jakob Stoklund Olesen's avatar
      Defer SplitKit value mapping until all defs are available. · dca2917e
      Jakob Stoklund Olesen authored
      The greedy register allocator revealed some problems with the value mapping in
      SplitKit. We would sometimes start mapping values before all defs were known,
      and that could change a value from a simple 1-1 mapping to a multi-def mapping
      that requires ssa update.
      
      The new approach collects all defs and register assignments first without
      filling in any live intervals. Only when finish() is called, do we compute
      liveness and mapped values. At this time we know with certainty which values map
      to multiple values in a split range.
      
      This also has the advantage that we can compute live ranges based on the
      remaining uses after rematerializing at split points.
      
      The current implementation has many opportunities for compile time optimization.
      
      llvm-svn: 124765
      dca2917e
  12. Dec 18, 2010
  13. Nov 10, 2010
  14. Nov 01, 2010
  15. Oct 29, 2010
  16. Oct 27, 2010
  17. Oct 21, 2010
  18. Oct 15, 2010
Loading