aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorAndrew Pinski <pinskia@gmail.com>2007-01-01 14:01:59 -0800
committerAndrew Pinski <pinskia@gcc.gnu.org>2007-01-01 14:01:59 -0800
commit9bed0a3480a26ae761727c210e568ca9237f2d15 (patch)
tree89ca42ef6789618c6c5aeb3d1b56e825c7701dd7 /gcc/gimplify.c
parenta441d616bac764a9281f72f04812ff9518a7e5ce (diff)
downloadgcc-9bed0a3480a26ae761727c210e568ca9237f2d15.zip
gcc-9bed0a3480a26ae761727c210e568ca9237f2d15.tar.gz
gcc-9bed0a3480a26ae761727c210e568ca9237f2d15.tar.bz2
gimplify.c (gimplify_init_constructor <case VECTOR_TYPE>): Use a temporary variable if the left hand side is not a gimple register.
2007-01-01 Andrew Pinski <pinskia@gmail.com> * gimplify.c (gimplify_init_constructor <case VECTOR_TYPE>): Use a temporary variable if the left hand side is not a gimple register. From-SVN: r120318
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 1a40e8f..5df8579 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -3190,6 +3190,8 @@ gimplify_init_constructor (tree *expr_p, tree *pre_p,
if (tret == GS_ERROR)
ret = GS_ERROR;
}
+ if (!is_gimple_reg (GENERIC_TREE_OPERAND (*expr_p, 0)))
+ GENERIC_TREE_OPERAND (*expr_p, 1) = get_formal_tmp_var (ctor, pre_p);
}
break;