https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98772

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Joel Hutton <jo...@gcc.gnu.org>:

https://gcc.gnu.org/g:4af29981ab57ad7ef4467e371e4145cce9c16eaa

commit r11-7189-g4af29981ab57ad7ef4467e371e4145cce9c16eaa
Author: Joel Hutton <joel.hut...@arm.com>
Date:   Thu Feb 11 14:59:26 2021 +0000

    [aarch64][vect] Support V8QI->V8HI WIDEN_ patterns

    In the case where 8 out of every 16 elements are widened using a
    widening pattern and the next 8 are skipped, the patterns are not
    recognized. This is because they are normally used in a pair, such  as
    VEC_WIDEN_MINUS_HI/LO, to achieve a v16qi->v16hi conversion for example.
    This patch adds support for V8QI->V8HI patterns.

    gcc/ChangeLog:

            PR tree-optimization/98772
            * optabs-tree.c (supportable_half_widening_operation): New function
            to check for supportable V8QI->V8HI widening patterns.
            * optabs-tree.h (supportable_half_widening_operation): New
function.
            * tree-vect-stmts.c (vect_create_half_widening_stmts): New function
            to create promotion stmts for V8QI->V8HI widening patterns.
            (vectorizable_conversion): Add case for V8QI->V8HI.

    gcc/testsuite/ChangeLog:

            PR tree-optimization/98772
            * gcc.target/aarch64/pr98772.c: New test.

Reply via email to