diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-08-20 11:28:14 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-08-20 11:28:14 +0000 |
commit | 2ef41604b0f880bf5b9d4be027df7335e4ec166f (patch) | |
tree | 7a357b039785ec8b4512742e9512b49128d47deb /gcc/tree-inline.c | |
parent | 20a8f962f826727be1912aaeb411681561241240 (diff) | |
download | gcc-2ef41604b0f880bf5b9d4be027df7335e4ec166f.tar.gz |
2007-08-20 Richard Guenther <rguenther@suse.de>
* langhooks-def.h (lhd_tree_inlining_auto_var_in_fn_p): Remove.
(LANG_HOOKS_TREE_INLINING_AUTO_VAR_IN_FN_P): Likewise.
(LANG_HOOKS_TREE_INLINING_INITIALIZER): Remove initializer for
auto_var_in_fn_p langhook.
* langhooks.c (lhd_tree_inlining_auto_var_in_fn_p): Rename and
move ...
* tree.c (auto_var_in_fn_p): ... here.
(find_var_from_fn): Call auto_var_in_fn_p directly.
* langhooks.h (lang_hooks_for_tree_inlining): Remove
auto_var_in_fn_p langhook.
* tree-inline.c (remap_decls): Call auto_var_in_fn_p directly.
(copy_body_r): Likewise.
(self_inlining_addr_expr): Likewise.
* tree.h (auto_var_in_fn_p): Declare.
cp/
* cp-objcp-common.h (LANG_HOOKS_TREE_INLINING_AUTO_VAR_IN_FN_P):
Remove.
* cp-tree.h (cp_auto_var_in_fn_p): Remove.
(nonstatic_local_decl_p): Likewise.
* tree.c (cp_auto_var_in_fn_p): Remove.
* decl.c (nonstatic_local_decl_p): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127643 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r-- | gcc/tree-inline.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index c078166bd16..80a18837dde 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -428,7 +428,7 @@ remap_decls (tree decls, copy_body_data *id) /* We can not chain the local static declarations into the unexpanded_var_list as we can't duplicate them or break one decl rule. Go ahead and link them into unexpanded_var_list. */ - if (!lang_hooks.tree_inlining.auto_var_in_fn_p (old_var, id->src_fn) + if (!auto_var_in_fn_p (old_var, id->src_fn) && !DECL_EXTERNAL (old_var)) { cfun->unexpanded_var_list = tree_cons (NULL_TREE, old_var, @@ -586,7 +586,7 @@ copy_body_r (tree *tp, int *walk_subtrees, void *data) variables. We don't want to copy static variables; there's only one of those, no matter how many times we inline the containing function. Similarly for globals from an outer function. */ - else if (lang_hooks.tree_inlining.auto_var_in_fn_p (*tp, fn)) + else if (auto_var_in_fn_p (*tp, fn)) { tree new_decl; @@ -641,8 +641,7 @@ copy_body_r (tree *tp, int *walk_subtrees, void *data) discarding. */ if (TREE_CODE (*tp) == GIMPLE_MODIFY_STMT && GIMPLE_STMT_OPERAND (*tp, 0) == GIMPLE_STMT_OPERAND (*tp, 1) - && (lang_hooks.tree_inlining.auto_var_in_fn_p - (GIMPLE_STMT_OPERAND (*tp, 0), fn))) + && (auto_var_in_fn_p (GIMPLE_STMT_OPERAND (*tp, 0), fn))) { /* Some assignments VAR = VAR; don't generate any rtl code and thus don't count as variable modification. Avoid @@ -1268,7 +1267,7 @@ self_inlining_addr_expr (tree value, tree fn) var = get_base_address (TREE_OPERAND (value, 0)); - return var && lang_hooks.tree_inlining.auto_var_in_fn_p (var, fn); + return var && auto_var_in_fn_p (var, fn); } static void |