Skip to content
  1. Jul 25, 2006
  2. Mar 14, 2006
  3. Feb 17, 2006
  4. Feb 03, 2006
  5. Jan 27, 2006
  6. Jan 26, 2006
  7. Dec 17, 2005
  8. Dec 12, 2005
  9. Nov 15, 2005
  10. Aug 19, 2005
  11. Jul 11, 2005
  12. Jul 06, 2005
    • Nate Begeman's avatar
      First round of support for doing scalar FP using the SSE2 ISA extension and · 8a093360
      Nate Begeman authored
      XMM registers.  There are many known deficiencies and fixmes, which will be
      addressed ASAP.  The major benefit of this work is that it will allow the
      LLVM register allocator to allocate FP registers across basic blocks.
      
      The x86 backend will still default to x87 style FP.  To enable this work,
      you must pass -enable-sse-scalar-fp and either -sse2 or -sse3 to llc.
      
      An example before and after would be for:
      double foo(double *P) { double Sum = 0; int i; for (i = 0; i < 1000; ++i)
                              Sum += P[i]; return Sum; }
      
      The inner loop looks like the following:
      x87:
      .LBB_foo_1:     # no_exit
              fldl (%esp)
              faddl (%eax,%ecx,8)
              fstpl (%esp)
              incl %ecx
              cmpl $1000, %ecx
              #FP_REG_KILL
              jne .LBB_foo_1  # no_exit
      
      SSE2:
              addsd (%eax,%ecx,8), %xmm0
              incl %ecx
              cmpl $1000, %ecx
              #FP_REG_KILL
              jne .LBB_foo_1  # no_exit
      
      llvm-svn: 22340
      8a093360
  13. Jun 27, 2005
  14. Apr 22, 2005
  15. Jan 07, 2005
  16. Aug 24, 2004
  17. Aug 16, 2004
  18. Jul 22, 2004
  19. Apr 06, 2004
    • Jakub Staszak's avatar
      · de647007
      Jakub Staszak authored
      Tablgen files for really simple instruction selector
      
      llvm-svn: 12714
      de647007
  20. Dec 28, 2003
  21. Dec 13, 2003
    • Alkis Evlogimenos's avatar
      Add a floating point killer pass. This pass runs before register · 904cd6d4
      Alkis Evlogimenos authored
      allocaton on the X86 to add information to the machine code denoting
      that our floating point stackifier cannot handle virtual point
      register that are alive across basic blocks. This pass adds an
      implicit def of all virtual floating point register at the end of each
      basic block.
      
      llvm-svn: 10446
      904cd6d4
  22. Dec 01, 2003
    • Chris Lattner's avatar
      Add an option to enable the SSA based peephole optimizer. · 6d760d7c
      Chris Lattner authored
      Eventually this pass will provide substantially better code in the interim between when we
      have a crappy isel and nice isel.  Unfortunately doing so requires fixing the backend to
      actually SUPPORT all of the fancy addressing modes that we now generate, and writing a DCE
      pass for machine code.  Each of these is a fairly substantial job, so this will remain disabled
      for the immediate future.  :(
      
      llvm-svn: 10276
      6d760d7c
  23. Nov 11, 2003
  24. Oct 21, 2003
  25. Aug 13, 2003
  26. Aug 11, 2003
  27. Aug 03, 2003
  28. Jul 27, 2003
  29. Jul 23, 2003
    • Brian Gaeke's avatar
      Printer.cpp: Ditch addRequired/getAnalysis, because they leave · a92dce47
      Brian Gaeke authored
        Printer::doFinalization() out in the cold.  Now we pass in a TargetMachine
        to Printer's constructor and get the TargetData from the TargetMachine.
       Don't pass TargetMachine or MRegisterInfo objects around in the Printer.
       Constify TargetData references.
      X86.h: Update comment and prototype of createX86CodePrinterPass().
      X86TargetMachine.cpp: Update callers of createX86CodePrinterPass().
      
      llvm-svn: 7275
      a92dce47
  30. Jun 03, 2003
  31. Jan 13, 2003
  32. Dec 28, 2002
  33. Dec 16, 2002
  34. Dec 03, 2002
Loading