[AArch64/ARM 2/3] Rewrite AArch64 ZIP Intrinsics using __builtin_shuffle

Alan Lawrence alan.lawrence@arm.com
Thu Mar 27 10:55:00 GMT 2014


This patch replaces the temporary inline assembler for vzip_* in arm_neon.h with 
equivalent calls to __builtin_shuffle. These are matched by 
aarch64_expand_vec_perm_const{,_1} to output the same assembler instructions.

Tests from first patch still passing on aarch64-none-elf and aarch64_be-none-elf.

gcc/ChangeLog:

2012-03-27  Alan Lawrence  <alan.lawrence@arm.com>

	* config/aarch64/arm_neon.h (vzip1_f32, vzip1_p8, vzip1_p16, vzip1_s8,
	vzip1_s16, vzip1_s32, vzip1_u8, vzip1_u16, vzip1_u32, vzip1q_f32,
	vzip1q_f64, vzip1q_p8, vzip1q_p16, vzip1q_s8, vzip1q_s16, vzip1q_s32,
	vzip1q_s64, vzip1q_u8, vzip1q_u16, vzip1q_u32, vzip1q_u64, vzip2_f32,
	vzip2_p8, vzip2_p16, vzip2_s8, vzip2_s16, vzip2_s32, vzip2_u8,
	vzip2_u16, vzip2_u32, vzip2q_f32, vzip2q_f64, vzip2q_p8, vzip2q_p16,
	vzip2q_s8, vzip2q_s16, vzip2q_s32, vzip2q_s64, vzip2q_u8, vzip2q_u16,
	vzip2q_u32, vzip2q_u64): Replace inline __asm__ with __builtin_shuffle.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: zip_impl.diff
Type: text/x-patch
Size: 26292 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140327/afc63184/attachment.bin>


More information about the Gcc-patches mailing list