On Fri, Jun 29, 2018 at 04:24:58AM -0500, Richard Sandiford wrote: > This patch adds AArch64 patterns for the new AVG_FLOOR/CEIL operations. > AVG_FLOOR is [SU]HADD and AVG_CEIL is [SU]RHADD. > > Tested on aarch64-linux-gnu (with and without SVE). OK to install?
OK. Thanks, James > 2018-06-29 Richard Sandiford <richard.sandif...@arm.com> > > gcc/ > PR tree-optimization/85694 > * config/aarch64/iterators.md (HADD, RHADD): New int iterators. > (u): Handle UNSPEC_SHADD, UNSPEC_UHADD, UNSPEC_SRHADD and > UNSPEC_URHADD. > * config/aarch64/aarch64-simd.md (<u>avg<mode>3_floor) > (<u>avg<mode>3_ceil): New patterns. > > gcc/testsuite/ > PR tree-optimization/85694 > * lib/target-supports.exp (check_effective_target_vect_avg_qi): > Return true for AArch64 without SVE. > * gcc.target/aarch64/vect_hadd_1.h: New file. > * gcc.target/aarch64/vect_shadd_1.c: New test. > * gcc.target/aarch64/vect_srhadd_1.c: Likewise. > * gcc.target/aarch64/vect_uhadd_1.c: Likewise. > * gcc.target/aarch64/vect_urhadd_1.c: Likewise.