Re: [AArch64/ARM 2/3] Reimplement AArch64 TRN intrinsics with __builtin_shuffle

2014-04-24 Thread Marcus Shawcroft
On 28 March 2014 15:36, Alan Lawrence wrote: > This patch replaces the temporary inline assembler for vtrn[q]_* in > arm_neon.h with equivalent calls to __builtin_shuffle. These are matched by > existing patterns in aarch64.c (aarch64_expand_vec_perm_const_1), outputting > the same assembler inst

[AArch64/ARM 2/3] Reimplement AArch64 TRN intrinsics with __builtin_shuffle

2014-03-28 Thread Alan Lawrence
This patch replaces the temporary inline assembler for vtrn[q]_* in arm_neon.h with equivalent calls to __builtin_shuffle. These are matched by existing patterns in aarch64.c (aarch64_expand_vec_perm_const_1), outputting the same assembler instructions. For two-element vectors, ZIP, UZP and TR