https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85694
--- Comment #7 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- Author: rsandifo Date: Tue Jul 3 14:27:28 2018 New Revision: 262347 URL: https://gcc.gnu.org/viewcvs?rev=262347&root=gcc&view=rev Log: [17/n] PR85694: AArch64 support for AVG_FLOOR/CEIL This patch adds AArch64 patterns for the new AVG_FLOOR/CEIL operations. AVG_FLOOR is [SU]HADD and AVG_CEIL is [SU]RHADD. 2018-07-03 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. Added: trunk/gcc/testsuite/gcc.target/aarch64/vect_hadd_1.h trunk/gcc/testsuite/gcc.target/aarch64/vect_shadd_1.c trunk/gcc/testsuite/gcc.target/aarch64/vect_srhadd_1.c trunk/gcc/testsuite/gcc.target/aarch64/vect_uhadd_1.c trunk/gcc/testsuite/gcc.target/aarch64/vect_urhadd_1.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/aarch64/aarch64-simd.md trunk/gcc/config/aarch64/iterators.md trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/lib/target-supports.exp