Skip to content
  1. May 17, 2010
  2. May 15, 2010
  3. May 14, 2010
  4. May 13, 2010
  5. May 12, 2010
  6. May 11, 2010
    • Jakob Stoklund Olesen's avatar
      Simplify the tracking of used physregs to a bulk bitor followed by a transitive · 3f0241e0
      Jakob Stoklund Olesen authored
      closure after allocating all blocks.
      
      Add a few more test cases for -regalloc=fast.
      
      llvm-svn: 103500
      3f0241e0
    • Jakob Stoklund Olesen's avatar
      Mostly rewrite RegAllocFast. · f1b3029a
      Jakob Stoklund Olesen authored
      Sorry for the big change. The path leading up to this patch had some TableGen
      changes that I didn't want to commit before I knew they were useful. They
      weren't, and this version does not need them.
      
      The fast register allocator now does no liveness calculations. Instead it relies
      on kill flags provided by isel. (Currently those kill flags are also ignored due
      to isel bugs). The allocation algorithm is supposed to work with any subset of
      valid kill flags. More kill flags simply means fewer spills inserted.
      
      Registers are allocated from a working set that contains no aliases. That means
      most allocations can be done directly without expensive alias checks. When the
      working set runs out of registers we do the full alias check to find new free
      registers.
      
      llvm-svn: 103488
      f1b3029a
    • Evan Cheng's avatar
  7. May 06, 2010
  8. Apr 22, 2010
  9. Apr 21, 2010
    • Jakob Stoklund Olesen's avatar
      Add fast register allocator, enabled with -regalloc=fast. · 8a070a54
      Jakob Stoklund Olesen authored
      So far this is just a clone of -regalloc=local that has been lobotomized to run
      25% faster. It drops the least-recently-used calculations, and is just plain
      stupid when it runs out of registers.
      
      The plan is to make this go even faster for -O0 by taking advantage of the short
      live intervals in unoptimized code. It should not be necessary to calculate
      liveness when most virtual registers are killed 2-3 instructions after they are
      born.
      
      llvm-svn: 102006
      8a070a54
  10. Apr 17, 2010
  11. Apr 08, 2010
  12. Mar 31, 2010
  13. Mar 18, 2010
  14. Mar 16, 2010
  15. Feb 16, 2010
  16. Feb 15, 2010
Loading