diff options
author | Richard Biener <rguenther@suse.de> | 2017-07-21 11:32:01 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-07-21 11:32:01 +0000 |
commit | 9af7f3731b0ddffb3aa75b78a0ede411d36a3b09 (patch) | |
tree | e717addc450ca3667b9854cfe21f2530cd0b9686 /gcc/tree-vect-loop.c | |
parent | 8c38aed722cbd17db8bcab50087acb9e40493c73 (diff) | |
download | gcc-9af7f3731b0ddffb3aa75b78a0ede411d36a3b09.zip gcc-9af7f3731b0ddffb3aa75b78a0ede411d36a3b09.tar.gz gcc-9af7f3731b0ddffb3aa75b78a0ede411d36a3b09.tar.bz2 |
re PR tree-optimization/81500 (ICE with -O3 in process_use, at tree-vect-stmts.c:506)
2017-06-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/81500
* tree-vect-loop.c (vect_is_simple_reduction): Properly fail if
we didn't identify a reduction path.
* gcc.dg/torture/pr81500.c: New testcase.
From-SVN: r250423
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r-- | gcc/tree-vect-loop.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c index 64d8699..931f1b5 100644 --- a/gcc/tree-vect-loop.c +++ b/gcc/tree-vect-loop.c @@ -3243,7 +3243,7 @@ pop: } /* Check whether the reduction path detected is valid. */ - bool fail = false; + bool fail = path.length () == 0; bool neg = false; for (unsigned i = 1; i < path.length (); ++i) { @@ -3276,9 +3276,7 @@ pop: if (dump_enabled_p ()) { - report_vect_op (MSG_MISSED_OPTIMIZATION, - SSA_NAME_DEF_STMT - (USE_FROM_PTR (path[path.length ()-1].second)), + report_vect_op (MSG_MISSED_OPTIMIZATION, def_stmt, "reduction: unknown pattern: "); } |