summaryrefslogtreecommitdiff
path: root/gcc/tree-gimple.c
diff options
context:
space:
mode:
authorAndrew Pinski <pinskia@gmail.com>2006-12-20 09:46:39 -0800
committerAndrew Pinski <pinskia@gcc.gnu.org>2006-12-20 09:46:39 -0800
commit1863bbcab59ad1f858c20177875b1cd3acf3a94c (patch)
treecc32771b53fbcf125c821f1a5fe9f6e15fba1191 /gcc/tree-gimple.c
parent6822a10d9d8a0f9635e88624fb12ff34653e47a2 (diff)
downloadgcc-1863bbcab59ad1f858c20177875b1cd3acf3a94c.tar.gz
tree-gimple.c (is_gimple_min_invariant): Treat constant vector CONSTRUCTORs as min invariants.
2006-12-20 Andrew Pinski <pinskia@gmail.com> * tree-gimple.c (is_gimple_min_invariant): Treat constant vector CONSTRUCTORs as min invariants. From-SVN: r120079
Diffstat (limited to 'gcc/tree-gimple.c')
-rw-r--r--gcc/tree-gimple.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/tree-gimple.c b/gcc/tree-gimple.c
index f3a5db7c2ed..abef0e20539 100644
--- a/gcc/tree-gimple.c
+++ b/gcc/tree-gimple.c
@@ -183,6 +183,13 @@ is_gimple_min_invariant (tree t)
case VECTOR_CST:
return true;
+ /* Vector constant constructors are gimple invariant. */
+ case CONSTRUCTOR:
+ if (TREE_TYPE (t) && TREE_CODE (TREE_TYPE (t)) == VECTOR_TYPE)
+ return TREE_CONSTANT (t);
+ else
+ return false;
+
default:
return false;
}