aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-alias.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f6bad00..5caf233 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-03-02 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-alias.c (find_used_portions): Consider taking
+ the address as making the variable not write-only.
+
2006-03-02 Nick Clifton <nickc@redhat.com>
* config.gcc (default_use_cxa_atexit): Extend the description of
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index e8579bf..eacfed7 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -3071,6 +3071,8 @@ find_used_portions (tree *tp, int *walk_subtrees, void *lhs_p)
up->minused = 0;
up->maxused = TREE_INT_CST_LOW (DECL_SIZE (var));
up->implicit_uses = true;
+ if (!lhs_p)
+ up->write_only = false;
up_insert (uid, up);
*walk_subtrees = 0;