Skip to content
  1. Jul 11, 2006
  2. Jun 27, 2006
  3. Jun 21, 2006
  4. Jun 13, 2006
    • Chris Lattner's avatar
      Gaar! Don't use r11 for CR save/restore, use R0. R11 can be register · ac59ab51
      Chris Lattner authored
      allocated, thus live across the save/reload.  This fixes
      
      llc-beta /MultiSource/Applications/spiff/spiff
      llc-beta /MultiSource/Benchmarks/sim/sim:
      llc-beta /MultiSource/Benchmarks/Ptrdist/bc/bc
      llc-beta /MultiSource/Benchmarks/McCat/12-IOtest/iotest:
      llc-beta /MultiSource/Benchmarks/FreeBench/fourinarow/fourinarow
      llc-beta /MultiSource/Benchmarks/Fhourstones-3.1/fhourstones3.1
      llc-beta /MultiSource/Benchmarks/mediabench/adpcm/rawdaudio/rawdaudio
      llc-beta /MultiSource/Benchmarks/mediabench/adpcm/rawcaudio/rawcaudio
      llc-beta /MultiSource/Benchmarks/mediabench/g721/g721encode/encode
      llc-beta /MultiSource/Benchmarks/mediabench/jpeg/jpeg-6a/cjpeg
      
      and probably others, with -regalloc=local.
      
      llvm-svn: 28761
      ac59ab51
  5. Jun 12, 2006
  6. May 18, 2006
  7. May 10, 2006
  8. May 04, 2006
  9. May 02, 2006
  10. Apr 17, 2006
  11. Apr 11, 2006
  12. Apr 07, 2006
  13. Apr 04, 2006
  14. Mar 28, 2006
  15. Mar 27, 2006
  16. Mar 23, 2006
  17. Mar 22, 2006
    • Chris Lattner's avatar
      When possible, custom lower 32-bit SINT_TO_FP to this: · 4a66d694
      Chris Lattner authored
      _foo2:
              extsw r2, r3
              std r2, -8(r1)
              lfd f0, -8(r1)
              fcfid f0, f0
              frsp f1, f0
              blr
      
      instead of this:
      
      _foo2:
              lis r2, ha16(LCPI2_0)
              lis r4, 17200
              xoris r3, r3, 32768
              stw r3, -4(r1)
              stw r4, -8(r1)
              lfs f0, lo16(LCPI2_0)(r2)
              lfd f1, -8(r1)
              fsub f0, f1, f0
              frsp f1, f0
              blr
      
      This speeds up Misc/pi from 2.44s->2.09s with LLC and from 3.01->2.18s
      with llcbeta (16.7% and 38.1% respectively).
      
      llvm-svn: 26943
      4a66d694
  18. Mar 17, 2006
  19. Mar 16, 2006
  20. Mar 13, 2006
    • Chris Lattner's avatar
      For functions that use vector registers, save VRSAVE, mark used · 02e2c18c
      Chris Lattner authored
      registers, and update it on entry to each function, then restore it on exit.
      
      This compiles:
      
      void func(vfloat *a, vfloat *b, vfloat *c) {
              *a = *b * *c + *c;
      }
      
      to this:
      
      _func:
              mfspr r2, 256
              oris r6, r2, 49152
              mtspr 256, r6
              lvx v0, 0, r5
              lvx v1, 0, r4
              vmaddfp v0, v1, v0, v0
              stvx v0, 0, r3
              mtspr 256, r2
              blr
      
      GCC produces this (which has additional stack accesses):
      
      _func:
              mfspr r0,256
              stw r0,-4(r1)
              oris r0,r0,0xc000
              mtspr 256,r0
              lvx v0,0,r5
              lvx v1,0,r4
              lwz r12,-4(r1)
              vmaddfp v0,v0,v1,v0
              stvx v0,0,r3
              mtspr 256,r12
              blr
      
      llvm-svn: 26733
      02e2c18c
  21. Feb 02, 2006
  22. Jan 12, 2006
  23. Jan 09, 2006
  24. Dec 23, 2005
  25. Nov 06, 2005
  26. Oct 18, 2005
  27. Oct 16, 2005
Loading