On 21 November 2013 13:43, Tejas Belagod <tbela...@arm.com> wrote: > Hi, > > The attached patch reorganizes reduc_* operations in aarch64-simd.md and > fixes up lane accesses in arm_neon.h to conform to ABI changes. > > Tested for aarch64-none-elf and aarch64_be-none-elf. OK for trunk? > > Thanks, > Tejas Belagod > ARM. > > 2013-11-21 Tejas Belagod <tejas.bela...@arm.com> > > gcc/ > * config/aarch64/aarch64-simd.md (vec_pack_trunc_<mode>, > vec_pack_trunc_v2df, vec_pack_trunc_df): Swap for big-endian. > (reduc_<sur>plus_<mode>): Factorize V2DI into this. > (reduc_<sur>plus_<mode>): Change this to reduc_splus_<mode> for > floats > and also change to float UNSPEC. > (reduc_maxmin_uns>_<mode>): Remove V2DI. > * config/aarch64/arm_neon.h (vaddv<q>_<suf><8,16,32,64>, > vmaxv<q>_<suf><8,16,32,64>, vminv<q>_<suf><8,16,32,64>): Fix up > scalar > result access for big-endian. > (__LANE0): New macro used to fix up lane access of 'across-lanes' > intrinsics for big-endian. > * config/aarch64/iterators.md (VDQV): Add V2DI. > (VDQV_S): New. > (vp): New mode attribute. >
OK /Marcus