[llvm-bugs] [Bug 33784] New: AVX-512: <64 x i8> shuffle is scalarized in the CodeGen

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Jul 14 07:22:47 PDT 2017


https://bugs.llvm.org/show_bug.cgi?id=33784

            Bug ID: 33784
           Summary: AVX-512: <64 x i8> shuffle is scalarized in the
                    CodeGen
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: X86
          Assignee: unassignedbugs at nondot.org
          Reporter: elena.demikhovsky at intel.com
                CC: llvm-bugs at lists.llvm.org

define <16 x i8> @foo(<64 x i8> %x) {
  %res = shufflevector <64 x i8> %x, <64 x i8> undef, <16 x i32> <i32 1, i32 5,
i32 9, i32 13, i32 17, i32 21, i32 25, i32 29, i32 33, i32 37, i32 41, i32 45,
i32 49, i32 53, i32 57, i32 61>
  ret <16 x i8> %res
}

llc -mcpu=skx < test.ll

        vpextrb $5, %xmm0, %eax
        vpextrb $1, %xmm0, %ecx
        vmovd   %ecx, %xmm1
        vpinsrb $1, %eax, %xmm1, %xmm1
        vpextrb $9, %xmm0, %eax
        vpinsrb $2, %eax, %xmm1, %xmm1
        vpextrb $13, %xmm0, %eax
        vpinsrb $3, %eax, %xmm1, %xmm1
        vextracti32x4   $1, %zmm0, %xmm2
        vpextrb $1, %xmm2, %eax
        vpinsrb $4, %eax, %xmm1, %xmm1
        vpextrb $5, %xmm2, %eax
        vpinsrb $5, %eax, %xmm1, %xmm1
        vpextrb $9, %xmm2, %eax
        vpinsrb $6, %eax, %xmm1, %xmm1
        vpextrb $13, %xmm2, %eax
        vpinsrb $7, %eax, %xmm1, %xmm1
        vextracti32x4   $2, %zmm0, %xmm2
        vpextrb $1, %xmm2, %eax
        vpinsrb $8, %eax, %xmm1, %xmm1
        vpextrb $5, %xmm2, %eax
        vpinsrb $9, %eax, %xmm1, %xmm1
        vpextrb $9, %xmm2, %eax
        vpinsrb $10, %eax, %xmm1, %xmm1
        vpextrb $13, %xmm2, %eax
        vpinsrb $11, %eax, %xmm1, %xmm1
        vextracti32x4   $3, %zmm0, %xmm0
        vpextrb $1, %xmm0, %eax
        vpinsrb $12, %eax, %xmm1, %xmm1
        vpextrb $5, %xmm0, %eax
        vpinsrb $13, %eax, %xmm1, %xmm1
        vpextrb $9, %xmm0, %eax
        vpinsrb $14, %eax, %xmm1, %xmm1
        vpextrb $13, %xmm0, %eax
        vpinsrb $15, %eax, %xmm1, %xmm0

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170714/946c49c6/attachment.html>


More information about the llvm-bugs mailing list