[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