Skip to content
  1. May 21, 2006
  2. May 20, 2006
  3. May 03, 2006
  4. Apr 08, 2006
  5. Mar 27, 2006
    • Nate Begeman's avatar
      SelectionDAGISel can now natively handle Switch instructions, in the same · ed728c12
      Nate Begeman authored
      manner that the LowerSwitch LLVM to LLVM pass does: emitting a binary
      search tree of basic blocks.  The new approach has several advantages:
      it is faster, it generates significantly smaller code in many cases, and
      it paves the way for implementing dense switch tables as a jump table by
      handling switches directly in the instruction selector.
      
      This functionality is currently only enabled on x86, but should be safe for
      every target.  In anticipation of making it the default, the cfg is now
      properly updated in the x86, ppc, and sparc select lowering code.
      
      llvm-svn: 27156
      ed728c12
  6. Mar 23, 2006
  7. Mar 19, 2006
  8. Mar 16, 2006
  9. Mar 14, 2006
  10. Mar 09, 2006
  11. Feb 22, 2006
  12. Feb 18, 2006
  13. Feb 17, 2006
  14. Feb 03, 2006
  15. Jan 27, 2006
  16. Jan 26, 2006
  17. Jan 23, 2006
  18. Jan 20, 2006
  19. Dec 20, 2005
  20. Dec 17, 2005
  21. Dec 12, 2005
  22. Nov 16, 2005
  23. Nov 15, 2005
  24. Nov 08, 2005
  25. Sep 01, 2005
    • Jim Laskey's avatar
      · 19058c39
      Jim Laskey authored
      1. Use SubtargetFeatures in llc/lli.
      
      2. Propagate feature "string" to all targets.
      
      3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget.
      
      llvm-svn: 23192
      19058c39
  26. Aug 19, 2005
  27. Jul 27, 2005
  28. Jul 12, 2005
    • Nate Begeman's avatar
      Implement Subtarget support · f26625e1
      Nate Begeman authored
      Implement the X86 Subtarget.
      
      This consolidates the checks for target triple, and setting options based
      on target triple into one place.  This allows us to convert the asm printer
      and isel over from being littered with "forDarwin", "forCygwin", etc. into
      just having the appropriate flags for each subtarget feature controlling
      the code for that feature.
      
      This patch also implements indirect external and weak references in the
      X86 pattern isel, for darwin.  Next up is to convert over the asm printers
      to use this new interface.
      
      llvm-svn: 22389
      f26625e1
  29. Jul 11, 2005
  30. 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
  31. Jun 27, 2005
  32. Jun 25, 2005
  33. May 12, 2005
  34. Apr 22, 2005
  35. Apr 16, 2005
    • Nate Begeman's avatar
      Make pattern isel default for ppc · 779c5cbb
      Nate Begeman authored
      Add new ppc beta option related to using condition registers
      Make pattern isel control flag (-enable-pattern-isel) global and tristate
        0 == off
        1 == on
        2 == target default
      
      llvm-svn: 21309
      779c5cbb
Loading