summaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorabel <abel@138bc75d-0d04-0410-961f-82ee72b054a4>2009-06-03 14:33:31 +0000
committerabel <abel@138bc75d-0d04-0410-961f-82ee72b054a4>2009-06-03 14:33:31 +0000
commit9a60c3b95ea4cae52b770e663b39b9d6fa9ca12c (patch)
tree3e3faaed1f68710749fc269296631322d8e896f0 /gcc/cfgexpand.c
parentf539feffad23084ad5b2702e3fa7369dc5863bb6 (diff)
downloadgcc-9a60c3b95ea4cae52b770e663b39b9d6fa9ca12c.tar.gz
2009-06-03 Richard Guenther <rguenther@suse.de>
Andrey Belevantsev <abel@ispras.ru> * cfgexpand.c (discover_nonconstant_array_refs_r): Make only non-BLKmode arrays addressable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148130 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 31d346e6cb3..939aa58279d 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -2321,7 +2321,8 @@ discover_nonconstant_array_refs_r (tree * tp, int *walk_subtrees,
if (TREE_CODE (t) == ARRAY_REF || TREE_CODE (t) == ARRAY_RANGE_REF)
{
t = get_base_address (t);
- if (t && DECL_P (t))
+ if (t && DECL_P (t)
+ && DECL_MODE (t) != BLKmode)
TREE_ADDRESSABLE (t) = 1;
}