mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-22 22:01:20 +08:00
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
This commit is contained in:
parent
8c38aed722
commit
9af7f3731b
@ -1,3 +1,9 @@
|
||||
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.
|
||||
|
||||
2017-07-21 Tom de Vries <tom@codesourcery.com>
|
||||
Cesar Philippidis <cesar@codesourcery.com>
|
||||
|
||||
|
@ -1,3 +1,8 @@
|
||||
2017-06-21 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/81500
|
||||
* gcc.dg/torture/pr81500.c: New testcase.
|
||||
|
||||
2017-07-20 Nathan Sidwell <nathan@acm.org>
|
||||
|
||||
* g++.dg/ext/anon-struct6.C: Adjust diag.
|
||||
|
13
gcc/testsuite/gcc.dg/torture/pr81500.c
Normal file
13
gcc/testsuite/gcc.dg/torture/pr81500.c
Normal file
@ -0,0 +1,13 @@
|
||||
/* { dg-do compile } */
|
||||
|
||||
typedef int a;
|
||||
void c(int *b)
|
||||
{
|
||||
int d;
|
||||
a e, f, *g, *h = b;
|
||||
for (; d; d--) {
|
||||
f = *g & 1;
|
||||
*h-- = *g-- | e;
|
||||
e = f;
|
||||
}
|
||||
}
|
@ -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: ");
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user