Skip to content
  1. Aug 22, 2011
  2. Aug 20, 2011
  3. Aug 19, 2011
  4. Aug 18, 2011
  5. Aug 17, 2011
  6. Aug 16, 2011
    • Bruno Cardoso Lopes's avatar
      Instead of always leaving the work to the generic legalizer when · 2e99f1b3
      Bruno Cardoso Lopes authored
      there is no support for native 256-bit shuffles, be more smart in some
      cases, for example, when you can extract specific 128-bit parts and use
      regular 128-bit shuffles for them. Example:
      
      For this shuffle:
        shufflevector <4 x i64> %a, <4 x i64> %b, <4 x i32>
                      <i32 1, i32 0, i32 7, i32 6>
      
      This was expanded to:
        vextractf128  $1, %ymm1, %xmm2
        vpextrq $0, %xmm2, %rax
        vmovd %rax, %xmm1
        vpextrq $1, %xmm2, %rax
        vmovd %rax, %xmm2
        vpunpcklqdq %xmm1, %xmm2, %xmm1
        vpextrq $0, %xmm0, %rax
        vmovd %rax, %xmm2
        vpextrq $1, %xmm0, %rax
        vmovd %rax, %xmm0
        vpunpcklqdq %xmm2, %xmm0, %xmm0
        vinsertf128 $1, %xmm1, %ymm0, %ymm0
        ret
      
      Now we get:
        vshufpd $1, %xmm0, %xmm0, %xmm0
        vextractf128  $1, %ymm1, %xmm1
        vshufpd $1, %xmm1, %xmm1, %xmm1
        vinsertf128 $1, %xmm1, %ymm0, %ymm0
      
      llvm-svn: 137733
      2e99f1b3
    • Bruno Cardoso Lopes's avatar
      While I'm here, remove the "_alt" hacks to a series of INSERT_SUBREG and · c1676e41
      Bruno Cardoso Lopes authored
      also add the AVX versions of the 128-bit patterns
      
      llvm-svn: 137685
      c1676e41
    • Bruno Cardoso Lopes's avatar
      Reorder declarations of vmovmskp* and also put the necessary AVX · 67005029
      Bruno Cardoso Lopes authored
      predicate and TB encoding fields. This fix the encoding for the
      attached testcase. This fixes PR10625.
      
      llvm-svn: 137684
      67005029
    • Jim Grosbach's avatar
      MCTargetAsmParser target match predicate support. · 120a96a7
      Jim Grosbach authored
      Allow a target assembly parser to do context sensitive constraint checking
      on a potential instruction match. This will be used, for example, to handle
      Thumb2 IT block parsing.
      
      llvm-svn: 137675
      120a96a7
  7. Aug 15, 2011
  8. Aug 12, 2011
  9. Aug 11, 2011
  10. Aug 10, 2011
  11. Aug 09, 2011
Loading