aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-unswitch.cc
diff options
context:
space:
mode:
authorAndre Vieira <andre.simoesdiasvieira@arm.com>2022-10-18 10:51:09 +0100
committerAndre Vieira <andre.simoesdiasvieira@arm.com>2022-10-18 10:51:09 +0100
commitaae016f99b121b55fc1bcdfc2403fd22f04fa2df (patch)
tree5201b2a1487018d2062b4eaa26ad70c35a25d702 /gcc/tree-ssa-loop-unswitch.cc
parenta23225fb4f764dfc3e3e729c7d7238f03f282aaa (diff)
downloadgcc-aae016f99b121b55fc1bcdfc2403fd22f04fa2df.zip
gcc-aae016f99b121b55fc1bcdfc2403fd22f04fa2df.tar.gz
gcc-aae016f99b121b55fc1bcdfc2403fd22f04fa2df.tar.bz2
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.
Diffstat (limited to 'gcc/tree-ssa-loop-unswitch.cc')
0 files changed, 0 insertions, 0 deletions