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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Andre Simoes Dias Vieira
<avie...@gcc.gnu.org>:

https://gcc.gnu.org/g:aae016f99b121b55fc1bcdfc2403fd22f04fa2df

commit r13-3355-gaae016f99b121b55fc1bcdfc2403fd22f04fa2df
Author: Andre Vieira <andre.simoesdiasvie...@arm.com>
Date:   Tue Oct 18 10:51:09 2022 +0100

    ifcvt: Do not lower bitfields if we can't analyze dr's [PR107275]

    The ifcvt dead code elimination code was not built to deal with inline
    assembly, loops with such would never be if-converted in the past since we
can't
    do data-reference analysis on them and vectorization would eventually fail.
 For
    this reason we now also do not lower bitfields if the data-reference
analysis
    fails, as we would not end up vectorizing it.  As a consequence this also
fixes
    this PR as the dead code elimination will not run for such cases and
wrongfully
    eliminate inline assembly statements.

    gcc/ChangeLog:

            PR tree-optimization/107275
            * tree-if-conv.cc (if_convertible_loop_p_1): Move
            find_data_references_in_loop call from here...
            (if_convertible_loop_p): And move data-reference vector
initialization
            from here...
            (tree_if_conversion):... to here.

    gcc/testsuite/ChangeLog:

            * gcc.dg/vect/pr107275.c: New test.

Reply via email to