[PATCH] [AArch64 NEON] Add more scenarios to use perm instructions when lowering shuffle_vector.
Kevin Qin
kevinqindev at gmail.com
Fri Jan 10 01:07:19 PST 2014
Hi,
This patch covered 2 more scenarios:
1. Two operands of shuffle_vector are the same, like
%shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %a, <8 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14>
2. One of operands is undef, like
%shuffle.i = shufflevector <8 x i8> %a, <8 x i8> undef, <8 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14>
After this patch, perm instructions will have chance to be emitted instead of lots of INS. Please review, thanks.
http://llvm-reviews.chandlerc.com/D2532
Files:
lib/Target/AArch64/AArch64ISelLowering.cpp
test/CodeGen/AArch64/neon-perm.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D2532.1.patch
Type: text/x-patch
Size: 60623 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140110/7d9f2ef6/attachment.bin>
More information about the llvm-commits
mailing list