diff options
author | victork <victork@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-08-07 11:28:31 +0000 |
---|---|---|
committer | victork <victork@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-08-07 11:28:31 +0000 |
commit | 0bf7f84736d44a77940785b2014ea9d8edaba578 (patch) | |
tree | 2a815da8cd510d65ff313810b7ecb7deddfa81f0 /gcc/tree-vect-analyze.c | |
parent | 899164c59f66740a114ca2b08731e03003005023 (diff) | |
download | gcc-0bf7f84736d44a77940785b2014ea9d8edaba578.tar.gz |
ChangeLog
PR tree-optimization/26969
* tree-vect-analyze.c (vect_analyze_loop_form): Add check of latch
witch an empty list of PHIs.
testsuite/Changelog:
PR tree-optimizations/26969
* gcc.dg/vect/vect.exp: Compile tests prefixed with
"unswitch-loops" with -funswitch-loops.
* gcc.dg/vect/unswitch-loops-pr26969.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115995 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-analyze.c')
-rw-r--r-- | gcc/tree-vect-analyze.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vect-analyze.c b/gcc/tree-vect-analyze.c index 9df8ba26606..f247cd9ab31 100644 --- a/gcc/tree-vect-analyze.c +++ b/gcc/tree-vect-analyze.c @@ -1889,7 +1889,8 @@ vect_analyze_loop_form (struct loop *loop) that the loop is represented as a do-while (with a proper if-guard before the loop if needed), where the loop header contains all the executable statements, and the latch is empty. */ - if (!empty_block_p (loop->latch)) + if (!empty_block_p (loop->latch) + || phi_nodes (loop->latch)) { if (vect_print_dump_info (REPORT_BAD_FORM_LOOPS)) fprintf (vect_dump, "not vectorized: unexpected loop form."); |