Skip to content
  1. Aug 30, 2005
  2. 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
  3. Aug 22, 2005
  4. Apr 22, 2005
  5. Jan 23, 2005
  6. Jan 08, 2005
  7. Dec 15, 2004
  8. Dec 07, 2004
  9. Nov 18, 2004
  10. Nov 05, 2004
  11. Sep 30, 2004
  12. Sep 03, 2004
  13. 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
  14. Aug 27, 2004
  15. Aug 04, 2004
  16. Jul 25, 2004
  17. Jul 24, 2004
  18. Jul 23, 2004
  19. Jul 22, 2004
  20. Jul 21, 2004
  21. Jul 20, 2004
  22. Jul 19, 2004
  23. Jul 04, 2004
  24. Jun 21, 2004
  25. May 30, 2004
Loading