Skip to content
  1. Apr 17, 2012
  2. Apr 14, 2012
  3. Apr 13, 2012
  4. Apr 11, 2012
  5. Apr 10, 2012
    • Andrew Trick's avatar
      Fix for register pressure tables. · 7d52db98
      Andrew Trick authored
      Recent refactoring introduced a bug. Fix: added buildRegUnitSets.
      
      llvm-svn: 154382
      7d52db98
    • Andrew Trick's avatar
      Use std::includes instead of my own implementation. · 9002c315
      Andrew Trick authored
      Jakob's review.
      
      llvm-svn: 154377
      9002c315
    • Andrew Trick's avatar
      Added register unit sets to the target description. · 739a0038
      Andrew Trick authored
      This is a new algorithm that finds sets of register units that can be
      used to model registers pressure. This handles arbitrary, overlapping
      register classes. Each register class is associated with a (small)
      list of pressure sets. These are the dimensions of pressure affected
      by the register class's liveness.
      
      llvm-svn: 154374
      739a0038
    • Andrew Trick's avatar
      Added register unit weights to the target description. · 1d7a2c57
      Andrew Trick authored
      This is a new algorithm that associates registers with weighted
      register units to accuretely model their effect on register
      pressure. This handles registers with multiple overlapping
      subregisters. It is possible, but almost inconceivable that the
      algorithm fails to find an exact solution for a target description. If
      an exact solution cannot be found, an inexact, but reasonable solution
      will be chosen.
      
      llvm-svn: 154373
      1d7a2c57
    • Andrew Trick's avatar
      Fix header comment · 3a6e88dc
      Andrew Trick authored
      llvm-svn: 154372
      3a6e88dc
  6. Apr 05, 2012
  7. Apr 04, 2012
  8. Apr 03, 2012
  9. Apr 02, 2012
  10. Apr 01, 2012
    • Craig Topper's avatar
      Use SequenceToOffsetTable to create instruction name table. Saves space... · 91773ab2
      Craig Topper authored
      Use SequenceToOffsetTable to create instruction name table. Saves space particularly on X86 where AVX instructions just add a 'v' to the front of other instructions.
      
      llvm-svn: 153841
      91773ab2
    • Benjamin Kramer's avatar
      Emit the LLVM<->DWARF register mapping as a sorted table and use binary search to do the lookup. · 12af4285
      Benjamin Kramer authored
      This also avoids emitting the information twice, which led to code bloat. On i386-linux-Release+Asserts
      with all targets built this change shaves a whopping 1.3 MB off clang. The number is probably exaggerated
      by recent inliner changes but the methods were already enormous with the old inline cost computation.
      
      The DWARF reg -> LLVM reg mapping doesn't seem to have holes in it, so it could be a simple lookup table.
      I didn't implement that optimization yet to avoid potentially changing functionality.
      
      There is still some duplication both in tablegen and the generated code that should be cleaned up eventually.
      
      llvm-svn: 153837
      12af4285
  11. Mar 31, 2012
Loading