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

Reply via email to