aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2006-10-09 09:27:14 -0700
committerRichard Henderson <rth@gcc.gnu.org>2006-10-09 09:27:14 -0700
commita98d4769d5d5449e3ed3a524143b37e6c8a045ec (patch)
tree3b365f54da686b951378eabd14acdaf98bd0eb15 /gcc/cgraph.c
parent5771bd91eccb16e766ed13f533bdb4695c705da7 (diff)
downloadgcc-a98d4769d5d5449e3ed3a524143b37e6c8a045ec.zip
gcc-a98d4769d5d5449e3ed3a524143b37e6c8a045ec.tar.gz
gcc-a98d4769d5d5449e3ed3a524143b37e6c8a045ec.tar.bz2
Revert emutls patch.
From-SVN: r117578
Diffstat (limited to 'gcc/cgraph.c')
-rw-r--r--gcc/cgraph.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index 9236835..3e5dab1 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -939,7 +939,7 @@ bool
decide_is_variable_needed (struct cgraph_varpool_node *node, tree decl)
{
/* If the user told us it is used, then it must be so. */
- if (node->externally_visible || node->force_output)
+ if (node->externally_visible)
return true;
if (!flag_unit_at_a_time
&& lookup_attribute ("used", DECL_ATTRIBUTES (decl)))
@@ -963,17 +963,6 @@ decide_is_variable_needed (struct cgraph_varpool_node *node, tree decl)
&& !DECL_EXTERNAL (decl))
return true;
- /* When emulating tls, we actually see references to the control
- variable, rather than the user-level variable. */
- if (!targetm.have_tls
- && TREE_CODE (decl) == VAR_DECL
- && DECL_THREAD_LOCAL_P (decl))
- {
- tree control = emutls_decl (decl);
- if (decide_is_variable_needed (cgraph_varpool_node (control), control))
- return true;
- }
-
/* When not reordering top level variables, we have to assume that
we are going to keep everything. */
if (flag_unit_at_a_time && flag_toplevel_reorder)