Skip to content
  1. 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
  2. Jun 27, 2005
    • Nate Begeman's avatar
      Initial set of .td file changes necessary to get scalar fp in xmm registers · db329215
      Nate Begeman authored
      working.  The instruction selector changes will hopefully be coming later
      this week once they are debugged.  This is necessary to support the darwin
      x86 FP model, and is recommended by intel as the replacement for x87.  As
      a bonus, the register allocator knows how to deal with these registers
      across basic blocks, unliky the FP stackifier.  This leads to significantly
      better codegen in several cases.
      
      llvm-svn: 22300
      db329215
  3. May 15, 2005
  4. May 13, 2005
  5. May 09, 2005
  6. Apr 28, 2005
  7. Apr 06, 2005
  8. Apr 02, 2005
  9. Feb 27, 2005
  10. Jan 19, 2005
  11. Jan 10, 2005
  12. Jan 03, 2005
  13. Jan 02, 2005
    • Chris Lattner's avatar
      Two changes here: · 295e45e6
      Chris Lattner authored
      1. Add new instructions for checking parity flags: JP, JNP, SETP, SETNP.
      2. Set the isCommutable and isPromotableTo3Address bits on several
         instructions.
      
      llvm-svn: 19246
      295e45e6
  14. Nov 10, 2004
  15. Oct 06, 2004
  16. Oct 04, 2004
  17. Oct 03, 2004
  18. Sep 08, 2004
  19. Aug 11, 2004
  20. Aug 10, 2004
Loading