aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2008-11-27 09:45:56 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2008-11-27 09:45:56 +0000
commit75af9746bae7d14df0d0f60e5c1e2fc58e7d9707 (patch)
tree64c87dc9ba9fc3a7f97415f4985d2a3d2212d804
parentc2d54fdff50c59adc9e027198abb57ad84282d37 (diff)
downloadgcc-75af9746bae7d14df0d0f60e5c1e2fc58e7d9707.zip
gcc-75af9746bae7d14df0d0f60e5c1e2fc58e7d9707.tar.gz
gcc-75af9746bae7d14df0d0f60e5c1e2fc58e7d9707.tar.bz2
tree-ssa-structalias.c (intra_create_variable_infos): Make a constraint for the static chain parameter.
2008-11-27 Richard Guenther <rguenther@suse.de> * tree-ssa-structalias.c (intra_create_variable_infos): Make a constraint for the static chain parameter. From-SVN: r142242
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-structalias.c9
2 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 03db6c2..aaba646 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2008-11-27 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (intra_create_variable_infos): Make
+ a constraint for the static chain parameter.
+
2008-11-27 Bernd Schmidt <bernd.schmidt@analog.com>
* config/bfin/bfin.opt (micplb): New option.
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 5083ee5..3be76ac 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -4560,6 +4560,15 @@ intra_create_variable_infos (void)
make_constraint_from (p, nonlocal_id);
}
}
+
+ /* Add a constraint for the incoming static chain parameter. */
+ if (cfun->static_chain_decl != NULL_TREE)
+ {
+ varinfo_t p, chain_vi = get_vi_for_tree (cfun->static_chain_decl);
+
+ for (p = chain_vi; p; p = p->next)
+ make_constraint_from (p, nonlocal_id);
+ }
}
/* Structure used to put solution bitmaps in a hashtable so they can