https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87563
--- Comment #4 from Renlin Li <renlin at gcc dot gnu.org> --- Author: renlin Date: Mon Oct 15 16:49:05 2018 New Revision: 265172 URL: https://gcc.gnu.org/viewcvs?rev=265172&root=gcc&view=rev Log: [PR87563][AARCH64-SVE]: Don't keep ifcvt loop when COND_<OP> ifn could not be vectorized. ifcvt will created versioned loop and it will permissively generate scalar COND_<OP> ifn. If in the loop vectorize pass, COND_<OP> could not get vectoized, the if-converted loop should be abandoned when the target doesn't support such ifn. gcc/ 2018-10-12 Renlin Li <renlin...@arm.com> PR target/87563 * tree-vectorizer.c (try_vectorize_loop_1): Don't use if-conversioned loop when it contains ifn with types not supported by backend. * internal-fn.c (expand_direct_optab_fn): Add an assert. (direct_internal_fn_supported_p): New helper function. * internal-fn.h (direct_internal_fn_supported_p): Declare. gcc/testsuite/ 2018-10-12 Renlin Li <renlin...@arm.com> PR target/87563 * gcc.target/aarch64/sve/pr87563.c: New. Added: trunk/gcc/testsuite/gcc.target/aarch64/sve/pr87563.c Modified: trunk/gcc/ChangeLog trunk/gcc/internal-fn.c trunk/gcc/internal-fn.h trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-vectorizer.c