aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2012-03-05 13:50:29 +0100
committerMartin Jambor <jamborm@gcc.gnu.org>2012-03-05 13:50:29 +0100
commitf9e45846beec5e5cbeb983c0cb437e00f52d430d (patch)
treef7cb4b5f62f08c56ab9f35ce405a02ca615dd1c1
parentd3294e94c71e9802cf9128b209145ff624d1da0d (diff)
downloadgcc-f9e45846beec5e5cbeb983c0cb437e00f52d430d.zip
gcc-f9e45846beec5e5cbeb983c0cb437e00f52d430d.tar.gz
gcc-f9e45846beec5e5cbeb983c0cb437e00f52d430d.tar.bz2
re PR tree-optimization/52430 (firefox miscompilation)
2012-03-05 Martin Jambor <mjambor@suse.cz> PR tree-optimization/52430 * ipa-cp.c (ipcp_initialize_node_lattices): Also consider node->local.externally_visible as needed. From-SVN: r184928
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/ipa-cp.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8714596..4d98742 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-03-05 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimization/52430
+ * ipa-cp.c (ipcp_initialize_node_lattices): Also consider
+ node->local.externally_visible as needed.
+
2012-03-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
Backport from mainline
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
index cf678f2..c38e4ef 100644
--- a/gcc/ipa-cp.c
+++ b/gcc/ipa-cp.c
@@ -508,7 +508,7 @@ ipcp_initialize_node_lattices (struct cgraph_node *node)
if (ipa_is_called_with_var_arguments (info))
type = IPA_BOTTOM;
- else if (!node->needed)
+ else if (!node->needed && !node->local.externally_visible)
type = IPA_TOP;
/* When cloning is allowed, we can assume that externally visible functions
are not called. We will compensate this by cloning later. */