Skip to content
  1. Oct 24, 2006
  2. Aug 27, 2006
  3. Aug 02, 2006
  4. Aug 01, 2006
  5. Jul 20, 2006
  6. Jun 29, 2006
  7. May 12, 2006
  8. May 11, 2006
  9. Mar 26, 2006
  10. Feb 23, 2006
  11. Jan 23, 2006
  12. Dec 28, 2005
  13. Nov 21, 2005
  14. Sep 21, 2005
  15. Aug 30, 2005
  16. Aug 24, 2005
    • Chris Lattner's avatar
      Keep track of which registers are related to which other registers. · 22e91cc3
      Chris Lattner authored
      Use this information to avoid doing expensive interval intersections for
      registers that could not possible be interesting.  This speeds up linscan
      on ia64 compiling kc++ in release mode from taking 7.82s to 4.8s(!), total
      itanium llc time on this program is 27.3s now.  This marginally speeds up
      PPC and X86, but they appear to be limited by other parts of linscan, not
      this code.
      
      On this program, on itanium, live intervals now takes 41% of llc time.
      
      llvm-svn: 22986
      22e91cc3
  17. Aug 22, 2005
  18. Apr 22, 2005
  19. Jan 23, 2005
  20. Jan 08, 2005
  21. Dec 15, 2004
  22. Dec 07, 2004
  23. Nov 18, 2004
  24. Nov 05, 2004
  25. Sep 30, 2004
  26. Sep 03, 2004
  27. Sep 02, 2004
    • Alkis Evlogimenos's avatar
      Change the way we choose a free register: instead of picking the first · 095c3a80
      Alkis Evlogimenos authored
      free allocatable register, we prefer the a free one with the most uses
      of inactive intervals. This causes less spills and performes a bit
      better compared to gcc:
      
      Program                 | GCC/LLC (Before)| GCC/LLC (After)
      164.gzip/164.gzip       | 0.59            | 0.60
      175.vpr/175.vpr         | 0.57            | 0.58
      176.gcc/176.gcc         | 0.59            | 0.61
      181.mcf/181.mcf         | 0.94            | 0.95
      186.crafty/186.crafty   | 0.62            | 0.62
      197.parser/197.parser   | 0.89            | 0.88
      252.eon/252.eon         | 0.61            | 0.66
      253.perlbmk/253.perlbmk | 0.79            | 0.84
      254.gap/254.gap         | 0.81            | 0.81
      255.vortex/255.vortex   | 0.92            | 0.93
      256.bzip2/256.bzip2     | 0.69            | 0.69
      300.twolf/300.twolf     | 0.91            | 0.90
      
      llvm-svn: 16147
      095c3a80
    • Alkis Evlogimenos's avatar
      We don't need to sort the added vector as unhandled intervals are · dcbf8930
      Alkis Evlogimenos authored
      stored in a binary heap.
      
      llvm-svn: 16143
      dcbf8930
    • 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
    • Alkis Evlogimenos's avatar
      Be a bit more efficient when processing the active and inactive · fae8f6a4
      Alkis Evlogimenos authored
      lists. Instead of scanning the vector backwards, scan it forward and
      swap each element we want to erase. Then at the end erase all removed
      intervals at once. This doesn't save much: 0.08s out of 4s when
      compiling 176.gcc.
      
      llvm-svn: 16136
      fae8f6a4
  28. Aug 27, 2004
Loading