backport: re PR tree-optimization/59164 (ice: tree check: expected tree that contains ‘decl minimal’ structure, have ‘integer_cst’ in get_var_info, at tree-into-ssa.c:380)
2014-05-07 Richard Biener <rguenther@suse.de> Backport from mainline 2013-11-19 Richard Biener <rguenther@suse.de> PR tree-optimization/59164 * tree-vect-loop.c (vect_analyze_loop_operations): Adjust check whether we can create an epilogue loop to reflect the cases where we create one. * gcc.dg/torture/pr59164.c: New testcase. From-SVN: r210154
This commit is contained in:
parent
a0c51dc96b
commit
338b4a6f09
|
@ -1,3 +1,13 @@
|
|||
2014-05-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
Backport from mainline
|
||||
2013-11-19 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/59164
|
||||
* tree-vect-loop.c (vect_analyze_loop_operations): Adjust
|
||||
check whether we can create an epilogue loop to reflect the
|
||||
cases where we create one.
|
||||
|
||||
2014-05-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
Backport from mainline
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
2014-05-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
Backport from mainline
|
||||
2013-11-19 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/59164
|
||||
* gcc.dg/torture/pr59164.c: New testcase.
|
||||
|
||||
2014-05-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
Backport from mainline
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
/* { dg-do compile } */
|
||||
|
||||
int a, d, e;
|
||||
long b[10];
|
||||
int c[10][8];
|
||||
|
||||
int fn1(p1)
|
||||
{
|
||||
return 1 >> p1;
|
||||
}
|
||||
|
||||
void fn2(void)
|
||||
{
|
||||
int f;
|
||||
for (a=1; a <= 4; a++)
|
||||
{
|
||||
f = fn1(0 < c[a][0]);
|
||||
if (f || d)
|
||||
e = b[a] = 1;
|
||||
}
|
||||
}
|
|
@ -1466,7 +1466,7 @@ vect_analyze_loop_operations (loop_vec_info loop_vinfo, bool slp)
|
|||
|
||||
if (!LOOP_VINFO_NITERS_KNOWN_P (loop_vinfo)
|
||||
|| LOOP_VINFO_INT_NITERS (loop_vinfo) % vectorization_factor != 0
|
||||
|| LOOP_PEELING_FOR_ALIGNMENT (loop_vinfo))
|
||||
|| LOOP_VINFO_PEELING_FOR_GAPS (loop_vinfo))
|
||||
{
|
||||
if (vect_print_dump_info (REPORT_DETAILS))
|
||||
fprintf (vect_dump, "epilog loop required.");
|
||||
|
|
Loading…
Reference in New Issue