aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-forwprop.c
diff options
context:
space:
mode:
authorMarc Glisse <marc.glisse@inria.fr>2012-10-15 14:38:04 +0000
committerMarc Glisse <marc.glisse@inria.fr>2012-10-15 14:38:04 +0000
commita989a112c6387f5986bf7992817aa45b69502ce9 (patch)
tree320c480cf8b9e7015d9b500f360ff0c0b2c00eca /gcc/tree-ssa-forwprop.c
parent653806f49fea078d56e4dcea9c67794aedc16406 (diff)
2012-10-15 Marc Glisse <marc.glisse@inria.fr>
PR tree-optimization/54915 gcc/ * tree-ssa-forwprop.c (simplify_vector_constructor): Check argument's type. gcc/testsuite/ * gcc.dg/tree-ssa/pr54915.c: New testcase. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@192461 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-forwprop.c')
-rw-r--r--gcc/tree-ssa-forwprop.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c
index eb1af4e9e45..b6c5654da01 100644
--- a/gcc/tree-ssa-forwprop.c
+++ b/gcc/tree-ssa-forwprop.c
@@ -2840,6 +2840,8 @@ simplify_vector_constructor (gimple_stmt_iterator *gsi)
{
if (TREE_CODE (ref) != SSA_NAME)
return false;
+ if (!useless_type_conversion_p (type, TREE_TYPE (ref)))
+ return false;
orig = ref;
}
if (TREE_INT_CST_LOW (TREE_OPERAND (op1, 1)) != elem_size)