diff options
author | Ira Rosen <irar@il.ibm.com> | 2008-04-24 09:21:55 +0000 |
---|---|---|
committer | Ira Rosen <irar@gcc.gnu.org> | 2008-04-24 09:21:55 +0000 |
commit | 0e37a1c243896f03ad5fbfd4d3306802e20bc564 (patch) | |
tree | 6da8818892868ea6e31da744a2b72643dcd5eb34 /gcc/tree-vect-analyze.c | |
parent | f9f9640f8464328726ca641a942366145504a7bd (diff) | |
download | gcc-0e37a1c243896f03ad5fbfd4d3306802e20bc564.zip gcc-0e37a1c243896f03ad5fbfd4d3306802e20bc564.tar.gz gcc-0e37a1c243896f03ad5fbfd4d3306802e20bc564.tar.bz2 |
re PR target/35982 (ICE while building mplayer on ppc with -O3 -ffast-math -mcpu=970)
PR tree-optimization/35982
* tree-vect-analyze.c (vect_check_interleaving): Check that the
interleaved data-refs are of the same type.
From-SVN: r134624
Diffstat (limited to 'gcc/tree-vect-analyze.c')
-rw-r--r-- | gcc/tree-vect-analyze.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-vect-analyze.c b/gcc/tree-vect-analyze.c index 9f9ea82..26d8799 100644 --- a/gcc/tree-vect-analyze.c +++ b/gcc/tree-vect-analyze.c @@ -1060,7 +1060,9 @@ vect_check_interleaving (struct data_reference *dra, type_size_b = TREE_INT_CST_LOW (TYPE_SIZE_UNIT (TREE_TYPE (DR_REF (drb)))); if (type_size_a != type_size_b - || tree_int_cst_compare (DR_STEP (dra), DR_STEP (drb))) + || tree_int_cst_compare (DR_STEP (dra), DR_STEP (drb)) + || !types_compatible_p (TREE_TYPE (DR_REF (dra)), + TREE_TYPE (DR_REF (drb)))) return; init_a = TREE_INT_CST_LOW (DR_INIT (dra)); |