summaryrefslogtreecommitdiffstats
path: root/gcc/tree-tailcall.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-23 22:37:23 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-23 22:37:23 +0000
commit94e6573f58df58da39b0f23065d3dd4eb3694dd0 (patch)
tree6fa3fcbf916c4e6bd0c3081ee4de2cf5ae950925 /gcc/tree-tailcall.c
parentbecb64f8b3b4251431fbbdbb7691be20eaca4141 (diff)
downloadppe42-gcc-94e6573f58df58da39b0f23065d3dd4eb3694dd0.tar.gz
ppe42-gcc-94e6573f58df58da39b0f23065d3dd4eb3694dd0.zip
* expr.c (expand_expr_real_1): Don't handle non-local variables.
* expr.h (fix_lexical_addr): Remove. * function.c (NEED_SEPARATE_AP): Remove. (fix_lexical_addr): Remove. * tree-alias-common.c (get_alias_var_decl): Check TREE_STATIC, not null decl_function_context. (create_alias_vars): Likewise. * tree-cfg.c (make_ctrl_stmt_edges): Don't check for non-local labels. (simple_goto_p): Likewise. * tree-dfa.c (add_referenced_var): Don't check for non-local variables. * tree-ssa-ccp.c (get_default_value): Likewise. * tree-tailcall.c (suitable_for_tail_opt_p): Likewise. * tree.c (needs_to_live_in_memory): Likewise. * tree-flow-inline.h (may_be_aliased): Move... * tree-ssa-alias.c (may_be_aliased): ... here. Enhance check for when TREE_STATIC variables may be addressable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85099 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-tailcall.c')
-rw-r--r--gcc/tree-tailcall.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/tree-tailcall.c b/gcc/tree-tailcall.c
index 5a89868dcc1..d3d48f5a89b 100644
--- a/gcc/tree-tailcall.c
+++ b/gcc/tree-tailcall.c
@@ -143,8 +143,7 @@ suitable_for_tail_opt_p (void)
{
tree var = VARRAY_TREE (referenced_vars, i);
- if (decl_function_context (var) == current_function_decl
- && !TREE_STATIC (var)
+ if (!TREE_STATIC (var)
&& var_ann (var)->mem_tag_kind == NOT_A_TAG
&& is_call_clobbered (var))
return false;
OpenPOWER on IntegriCloud