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.lawre...@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.