diff options
author | Steven Bosscher <stevenb@suse.de> | 2004-07-07 22:03:43 +0000 |
---|---|---|
committer | Steven Bosscher <steven@gcc.gnu.org> | 2004-07-07 22:03:43 +0000 |
commit | d205c8fd4335353a9af4403f6ac7a3c867259838 (patch) | |
tree | ad46e21568bae02ac2dd247af4e225655ffa12cd | |
parent | 41e622a8d284cf9adb504c234986c535347ce1a8 (diff) | |
download | gcc-d205c8fd4335353a9af4403f6ac7a3c867259838.zip gcc-d205c8fd4335353a9af4403f6ac7a3c867259838.tar.gz gcc-d205c8fd4335353a9af4403f6ac7a3c867259838.tar.bz2 |
tree-inline.c (optimize_inline_calls): Set DECL_INLINED_FNS regardless of DECL_LANG_SPECIFIC being present or not.
* tree-inline.c (optimize_inline_calls): Set DECL_INLINED_FNS
regardless of DECL_LANG_SPECIFIC being present or not.
* tree.h (DECL_NUM_STMTS): Purge.
From-SVN: r84237
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-inline.c | 15 | ||||
-rw-r--r-- | gcc/tree.h | 6 |
3 files changed, 12 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f6dc50e..a1aa654 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-07-07 Steven Bosscher <stevenb@suse.de> + + * tree-inline.c (optimize_inline_calls): Set DECL_INLINED_FNS + regardless of DECL_LANG_SPECIFIC being present or not. + * tree.h (DECL_NUM_STMTS): Purge. + 2004-07-07 Andrew Pinski <apinski@apple.com> * configure: Regenerate with the right autoconf. diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 2172f33..7387076 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -1773,6 +1773,7 @@ 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 @@ -1811,15 +1812,11 @@ optimize_inline_calls (tree fn) /* Clean up. */ htab_delete (id.tree_pruner); - if (DECL_LANG_SPECIFIC (fn)) - { - tree 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; - } + 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 { @@ -1860,12 +1860,6 @@ extern GTY (()) unsigned binfo_lang_slots; this identifies which built-in operation it is. */ #define DECL_FUNCTION_CODE(NODE) (FUNCTION_DECL_CHECK (NODE)->decl.u1.f) -/* In a FUNCTION_DECL for which DECL_BUILT_IN does not hold, this is - the approximate number of statements in this function. There is - no need for this number to be exact; it is only used in various - heuristics regarding optimization. */ -#define DECL_NUM_STMTS(NODE) (FUNCTION_DECL_CHECK (NODE)->decl.u1.i) - /* The DECL_VINDEX is used for FUNCTION_DECLS in two different ways. Before the struct containing the FUNCTION_DECL is laid out, DECL_VINDEX may point to a FUNCTION_DECL in a base class which |