aboutsummaryrefslogtreecommitdiff
path: root/gcc/stmt.c
diff options
context:
space:
mode:
authorJeff Law <law@gcc.gnu.org>1994-12-29 19:50:28 -0700
committerJeff Law <law@gcc.gnu.org>1994-12-29 19:50:28 -0700
commit3668e76e9041960e4ab3c433d8d7c89c4d45bf35 (patch)
treee76d1c027d75b3621e5ef33487d810775b94b68e /gcc/stmt.c
parent4879acf67e24704a6c6690605d754db55b385c94 (diff)
downloadgcc-3668e76e9041960e4ab3c433d8d7c89c4d45bf35.zip
gcc-3668e76e9041960e4ab3c433d8d7c89c4d45bf35.tar.gz
gcc-3668e76e9041960e4ab3c433d8d7c89c4d45bf35.tar.bz2
calls.c (expand_call): Set MEM_IN_STRUCT_P as needed on return value from assign_stack_temp.
* calls.c (expand_call): Set MEM_IN_STRUCT_P as needed on return value from assign_stack_temp. (store_one_arg): Likewise. * expr.c (save_noncopied_parts): Likewise. (expand_expr): Likewise. * function.c (assign_parms): Likewise. * integrate.c (expand_inline_function): Likewise. * stmt.c (expand_decl): Likewise. From-SVN: r8708
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r--gcc/stmt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c
index f96534c..30eb838 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -3248,6 +3248,7 @@ expand_decl (decl)
/* An initializer is going to decide the size of this array.
Until we know the size, represent its address with a reg. */
DECL_RTL (decl) = gen_rtx (MEM, BLKmode, gen_reg_rtx (Pmode));
+ MEM_IN_STRUCT_P (DECL_RTL (decl)) = AGGREGATE_TYPE_P (type);
}
else if (DECL_MODE (decl) != BLKmode
/* If -ffloat-store, don't put explicit float vars
@@ -3309,6 +3310,7 @@ expand_decl (decl)
+ BITS_PER_UNIT - 1)
/ BITS_PER_UNIT),
1);
+ MEM_IN_STRUCT_P (DECL_RTL (decl)) = AGGREGATE_TYPE_P (TREE_TYPE (decl));
/* Set alignment we actually gave this decl. */
DECL_ALIGN (decl) = (DECL_MODE (decl) == BLKmode ? BIGGEST_ALIGNMENT