2010-10-20 Yao Qi Merge from Sourcery G++ to fix LP:660021 2010-10-18 Paul Brook * tree-vect-stmts.c (supportable_widening_operation): Check if wide vector type exists. === modified file 'gcc/tree-vect-stmts.c' Index: gcc-4.5/gcc/tree-vect-stmts.c =================================================================== --- gcc-4.5.orig/gcc/tree-vect-stmts.c +++ gcc-4.5/gcc/tree-vect-stmts.c @@ -4867,6 +4867,11 @@ supportable_widening_operation (enum tre tree wide_vectype = get_vectype_for_scalar_type (type); enum tree_code c1, c2; + /* Check we have a valid vector type for the result. */ + if (!wide_vectype) + return false; + + /* The result of a vectorized widening operation usually requires two vectors (because the widened results do not fit int one vector). The generated vector results would normally be expected to be generated in the same