re PR tree-optimization/43771 (ICE on valid when compiling ParMetis with gcc 4.5.0 and -O3)

PR tree-optimization/43771
	* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
	load permutation doesn't have gaps.

From-SVN: r158484
This commit is contained in:
Ira Rosen 2010-04-18 12:20:34 +00:00 committed by Ira Rosen
parent 07b3ef2e78
commit 59eefaa6df
4 changed files with 30 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2010-04-18 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/43771
* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
load permutation doesn't have gaps.
2010-04-18 Jan Hubicka <jh@suse.cz>
* i386.md (UNSPEC_SSE_PROLOGUE_SAVE_LOW): New.

View File

@ -1,3 +1,8 @@
2010-04-18 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/43771
* g++.dg/vect/pr43771.cc: New test.
2010-04-17 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/31538

View File

@ -0,0 +1,14 @@
/* { dg-do compile } */
void KWayNodeRefine__(int nparts, int *gpwgts, int *badminpwgt, int
*badmaxpwgt)
{
int i;
for (i=0; i<nparts; i+=2) {
badminpwgt[i] = badminpwgt[i+1] = gpwgts[i]+gpwgts[i+1];
badmaxpwgt[i] = badmaxpwgt[i+1] = gpwgts[i]+gpwgts[i+1];
}
}
/* { dg-final { cleanup-tree-dump "vect" } } */

View File

@ -844,7 +844,11 @@ vect_supported_load_permutation_p (slp_instance slp_instn, int group_size,
SET_BIT (load_index, prev);
}
for (j = 0; j < group_size; j++)
if (!TEST_BIT (load_index, j))
return false;
sbitmap_free (load_index);
if (supported && i == group_size * group_size