Skip to content
  1. Sep 03, 2006
  2. Aug 27, 2006
  3. Aug 02, 2006
  4. Aug 01, 2006
  5. Jul 21, 2006
  6. Jul 20, 2006
  7. Jun 29, 2006
  8. Jun 16, 2006
  9. May 04, 2006
  10. Jan 23, 2006
  11. Nov 09, 2005
  12. Sep 30, 2005
  13. Aug 24, 2005
  14. Apr 22, 2005
  15. Jan 23, 2005
  16. Oct 26, 2004
  17. Sep 02, 2004
    • Reid Spencer's avatar
      Changes For Bug 352 · 7c16caa3
      Reid Spencer authored
      Move include/Config and include/Support into include/llvm/Config,
      include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
      public header files must be under include/llvm/.
      
      llvm-svn: 16137
      7c16caa3
  18. Aug 16, 2004
  19. Aug 15, 2004
  20. Jul 21, 2004
  21. Jun 16, 2004
  22. Jun 02, 2004
  23. Mar 14, 2004
  24. Feb 26, 2004
  25. Feb 25, 2004
  26. Feb 23, 2004
    • Alkis Evlogimenos's avatar
      Refactor rewinding code for finding the first terminator of a basic · af2de484
      Alkis Evlogimenos authored
      block into MachineBasicBlock::getFirstTerminator().
      
      This also fixes a bug in the implementation of the above in both
      RegAllocLocal and InstrSched, where instructions where added after the
      terminator if the basic block's only instruction was a terminator (it
      shouldn't matter for RegAllocLocal since this case never occurs in
      practice).
      
      llvm-svn: 11748
      af2de484
  27. Feb 22, 2004
  28. Feb 21, 2004
  29. Feb 19, 2004
  30. Feb 17, 2004
    • Chris Lattner's avatar
      Remove the -disable-kill option. The register allocator is buggy with it, · 3d894dd3
      Chris Lattner authored
      and it was only for debugging in the first place.
      
      llvm-svn: 11557
      3d894dd3
    • Chris Lattner's avatar
      Add support to the local allocator for fusing spill code into the instructions · 4e21b235
      Chris Lattner authored
      that need them.  This is very useful on CISCy targets like the X86 because it
      reduces the total spill pressure, and makes better use of it's (large)
      instruction set.  Though the X86 backend doesn't know how to rewrite many
      instructions yet, this already makes a substantial difference on 176.gcc for
      example:
      
      Before:
      Time:
         8.0099 ( 31.2%)   0.0100 ( 12.5%)   8.0199 ( 31.2%)   7.7186 ( 30.0%)  Local Register Allocator
      
      Code quality:
      734559 asm-printer           - Number of machine instrs printed
      111395 ra-local              - Number of registers reloaded
       79902 ra-local              - Number of registers spilled
      231554 x86-peephole          - Number of peephole optimization performed
      
      After:
      Time:
         7.8700 ( 30.6%)   0.0099 ( 19.9%)   7.8800 ( 30.6%)   7.7892 ( 30.2%)  Local Register Allocator
      Code quality:
      733083 asm-printer           - Number of machine instrs printed
        2379 ra-local              - Number of reloads fused into instructions
      109046 ra-local              - Number of registers reloaded
       79881 ra-local              - Number of registers spilled
      230658 x86-peephole          - Number of peephole optimization performed
      
      So by fusing 2300 instructions, we reduced the  static number of instructions
      by 1500, and reduces the number of peepholes (and thus the work) by about 900.
      This also clearly reduces the number of reload/spill instructions that are
      emitted.
      
      llvm-svn: 11542
      4e21b235
    • Chris Lattner's avatar
      Fix a bug in my previous refactoring change... arg! · d1289d0f
      Chris Lattner authored
      llvm-svn: 11535
      d1289d0f
    • Chris Lattner's avatar
Loading