summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-inline.c15
-rw-r--r--gcc/tree.h6
3 files changed, 12 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f6dc50ec7ec..a1aa65406d3 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 2172f33203b..7387076d677 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
{
diff --git a/gcc/tree.h b/gcc/tree.h
index ab22cda92b1..d8c7be239e2 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -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