Skip to content
  1. Dec 12, 2011
  2. Dec 09, 2011
  3. Dec 08, 2011
    • Evan Cheng's avatar
      Many of the SSE patterns should not be selected when AVX is available. This... · 4d1a2d44
      Evan Cheng authored
      Many of the SSE patterns should not be selected when AVX is available. This led to the following code in X86Subtarget.cpp
      
        if (HasAVX)
          X86SSELevel = NoMMXSSE;
      
      This is so patterns that are predicated on hasSSE3, etc. would not be selected when avx is available. Instead, the AVX variant is selected.
      However, this breaks instructions which do not have AVX variants.
      
      The right way to fix this is for the SSE but not-AVX patterns to predicate on something like hasSSE3() && !hasAVX().
      Then we can take out the hack in X86Subtarget.cpp. Patterns which do not have AVX variants do not need to change.
      
      However, we need to audit all the patterns before we make the change. This patch is workaround that fixes one specific case,
      the prefetch instructions. rdar://10538297
      
      llvm-svn: 146163
      4d1a2d44
  4. Nov 25, 2011
  5. Nov 07, 2011
  6. Nov 06, 2011
  7. Oct 23, 2011
  8. Oct 16, 2011
  9. Oct 04, 2011
  10. Jul 26, 2011
    • Bruno Cardoso Lopes's avatar
      - Handle special scalar_to_vector case: splats. Using a native 128-bit · 123dff0f
      Bruno Cardoso Lopes authored
      shuffle before inserting on a 256-bit vector.
      - Add AVX versions of movd/movq instructions
      - Introduce a few COPY patterns to match insert_subvector instructions.
      This turns a trivial insert_subvector instruction into a register copy,
      coalescing the xmm into a ymm and avoid emiting on more instruction.
      
      llvm-svn: 136002
      123dff0f
  11. Jul 05, 2011
  12. Apr 04, 2011
  13. Mar 15, 2011
  14. Feb 22, 2011
  15. Nov 30, 2010
  16. Oct 31, 2010
  17. Oct 03, 2010
  18. Sep 17, 2010
  19. Aug 26, 2010
  20. Aug 19, 2010
  21. Jul 23, 2010
  22. Jul 20, 2010
  23. Jul 13, 2010
  24. Jul 08, 2010
  25. Jul 07, 2010
  26. Jul 01, 2010
    • Bruno Cardoso Lopes's avatar
      · 05166740
      Bruno Cardoso Lopes authored
      - Add AVX SSE2 Move doubleword and quadword instructions.
      - Add encode bits for VEX_W
      - All 128-bit SSE 1 & SSE2 instructions that are described
        in the .td file now have a AVX encoded form already working.
      
      llvm-svn: 107365
      05166740
  27. Jun 26, 2010
  28. Jun 24, 2010
  29. Jun 23, 2010
  30. Jun 19, 2010
Loading