aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2009-06-26 12:25:32 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2009-06-26 12:25:32 +0000
commit46aaa417039ee45500f836e994e93a5cbb070bde (patch)
treea638707379075e17b8a64d74c5499b8c3e550915 /gcc
parentf94bdf2b182c7fedb19c6d92803ccb0aaec1d836 (diff)
downloadgcc-46aaa417039ee45500f836e994e93a5cbb070bde.zip
gcc-46aaa417039ee45500f836e994e93a5cbb070bde.tar.gz
gcc-46aaa417039ee45500f836e994e93a5cbb070bde.tar.bz2
tree-ssa-structalias.c (do_ds_constraint): Simplify escape handling.
2009-06-26 Richard Guenther <rguenther@suse.de> * tree-ssa-structalias.c (do_ds_constraint): Simplify escape handling. From-SVN: r148968
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-structalias.c16
2 files changed, 7 insertions, 14 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c914f34..c7c31b7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-26 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (do_ds_constraint): Simplify escape
+ handling.
+
2009-06-26 Steven Bosscher <steven@gcc.gnu.org>
PR middle-end/40525
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 692a624..b175391 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -1643,8 +1643,8 @@ do_ds_constraint (constraint_t c, bitmap delta)
unsigned int t;
HOST_WIDE_INT fieldoffset = v->offset + loff;
- /* If v is a NONLOCAL then this is an escape point. */
- if (j == nonlocal_id)
+ /* If v is a global variable then this is an escape point. */
+ if (v->is_global_var)
{
t = find (escaped_id);
if (add_graph_edge (graph, t, rhs)
@@ -1680,18 +1680,6 @@ do_ds_constraint (constraint_t c, bitmap delta)
changed_count++;
}
}
- /* If v is a global variable then this is an escape point. */
- if (v->is_global_var)
- {
- t = find (escaped_id);
- if (add_graph_edge (graph, t, rhs)
- && bitmap_ior_into (get_varinfo (t)->solution, sol)
- && !TEST_BIT (changed, t))
- {
- SET_BIT (changed, t);
- changed_count++;
- }
- }
/* If the variable is not exactly at the requested offset
we have to include the next one. */