diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2004-12-23 02:50:24 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@gcc.gnu.org> | 2004-12-23 02:50:24 +0000 |
commit | b9cd7e9d86a51abc1bcf2bc7eea436994c6b66be (patch) | |
tree | 64c3100c41bb0f33c672ea021bce73eb31de069f | |
parent | f65b7de376c7284b60167d8400ddbcfddff58db6 (diff) | |
download | gcc-b9cd7e9d86a51abc1bcf2bc7eea436994c6b66be.zip gcc-b9cd7e9d86a51abc1bcf2bc7eea436994c6b66be.tar.gz gcc-b9cd7e9d86a51abc1bcf2bc7eea436994c6b66be.tar.bz2 |
tree-inline.c (struct inline_data): Remove inlined_fns.
2004-12-22 Daniel Berlin <dberlin@dberlin.org>
* tree-inline.c (struct inline_data): Remove inlined_fns.
(expand_call_inline): Remove dead code setting
inlined_fns.
(optimize_inline_calls): Remove dead code setting DECL_INLINED_FNS.
* tree.h (struct tree_decl): Remove inlined_fns.
From-SVN: r92529
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/tree-inline.c | 24 | ||||
-rw-r--r-- | gcc/tree.h | 8 |
3 files changed, 8 insertions, 32 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 76fd383..00cb8e9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2004-12-22 Daniel Berlin <dberlin@dberlin.org> + + * tree-inline.c (struct inline_data): Remove inlined_fns. + (expand_call_inline): Remove dead code setting + inlined_fns. + (optimize_inline_calls): Remove dead code setting DECL_INLINED_FNS. + * tree.h (struct tree_decl): Remove inlined_fns. + 2004-12-22 Roger Sayle <roger@eyesopen.com> * tree-browser.c: Remove obsolete #ifdef HOST_EBCDIC code. diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 53a1613..3ba728b 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -94,8 +94,6 @@ typedef struct inline_data /* Nonzero if we are currently within the cleanup for a TARGET_EXPR. */ int in_target_cleanup_p; - /* A list of the functions current function has inlined. */ - varray_type inlined_fns; /* We use the same mechanism to build clones that we do to perform inlining. However, there are a few places where we need to distinguish between those two situations. This flag is true if @@ -1567,19 +1565,6 @@ expand_call_inline (tree *tp, int *walk_subtrees, void *data) recursing into it. */ VARRAY_PUSH_TREE (id->fns, fn); - /* Record the function we are about to inline if optimize_function - has not been called on it yet and we don't have it in the list. */ - if (! DECL_INLINED_FNS (fn)) - { - int i; - - for (i = VARRAY_ACTIVE_SIZE (id->inlined_fns) - 1; i >= 0; i--) - if (VARRAY_TREE (id->inlined_fns, i) == fn) - break; - if (i < 0) - VARRAY_PUSH_TREE (id->inlined_fns, fn); - } - /* Return statements in the function body will be replaced by jumps to the RET_LABEL. */ id->ret_label = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE); @@ -1768,7 +1753,6 @@ optimize_inline_calls (tree fn) { inline_data id; tree prev_fn; - tree ifn; /* There is no point in performing inlining if errors have already occurred -- and we might crash if we try to inline invalid @@ -1793,9 +1777,6 @@ optimize_inline_calls (tree fn) prev_fn = lang_hooks.tree_inlining.add_pending_fn_decls (&id.fns, prev_fn); - /* Create the list of functions this call will inline. */ - VARRAY_TREE_INIT (id.inlined_fns, 32, "inlined_fns"); - /* Keep track of the low-water mark, i.e., the point where the first real inlining is represented in ID.FNS. */ id.first_inlined_fn = VARRAY_ACTIVE_SIZE (id.fns); @@ -1807,11 +1788,6 @@ optimize_inline_calls (tree fn) /* Clean up. */ htab_delete (id.tree_pruner); - ifn = make_tree_vec (VARRAY_ACTIVE_SIZE (id.inlined_fns)); - if (VARRAY_ACTIVE_SIZE (id.inlined_fns)) - memcpy (&TREE_VEC_ELT (ifn, 0), &VARRAY_TREE (id.inlined_fns, 0), - VARRAY_ACTIVE_SIZE (id.inlined_fns) * sizeof (tree)); - DECL_INLINED_FNS (fn) = ifn; #ifdef ENABLE_CHECKING { @@ -2148,9 +2148,6 @@ struct tree_binfo GTY (()) #define DECL_VALUE_EXPR(NODE) \ (TREE_CHECK2 (NODE, VAR_DECL, PARM_DECL)->decl.saved_tree) -/* List of FUNCTION_DECLs inlined into this function's body. */ -#define DECL_INLINED_FNS(NODE) (FUNCTION_DECL_CHECK (NODE)->decl.inlined_fns) - /* Nonzero in a FUNCTION_DECL means this function should be treated as if it were a malloc, meaning it returns a pointer that is not an alias. */ @@ -2400,11 +2397,6 @@ struct tree_decl GTY(()) /* In a FUNCTION_DECL, this is DECL_SAVED_TREE. In a VAR_DECL or PARM_DECL, this is DECL_VALUE_EXPR. */ tree saved_tree; - - /* In a FUNCTION_DECL, these are function data which is to be kept - as long as FUNCTION_DECL is kept. */ - tree inlined_fns; - tree vindex; HOST_WIDE_INT pointer_alias_set; /* Points to a structure whose details depend on the language in use. */ |