From a0c8285b03a452fcdf39e4d3db8d7710123584b0 Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Wed, 30 Jul 2003 19:27:17 +0200 Subject: re PR c/10320 (gcc 3.4 gets rid of static inline function that does not get inlined) * gcse.c (insert_store): Ignore fake edges. * c-common.c (flag_vtable_gc): Kill. * c-common.g (flag_vtable_gc): Kill. * c-opts (c_common_handle_option): Kill. * c.opt (fvtable-gc): Kill. * final.c (final_scan_insn): Do not call assemble_vtable_entry. * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill. * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill. * invoke.texi (-ftable-gc): Kill documentation. PR C/10320 * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE just because function body is missing. * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs. * class.c (build_vtable_entry_ref): Kill. (build_vtbl_ref_1): Do not call build_vtable_entry_ref. (build_vfn_ref): Do not call build_vtable_entry_ref. * cp-lang.c (LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE): Kill. * cp-tree.h (prepare_assemble_variable): Kill. * cp-decl.c (prepare_assemble_variable): Kill. From-SVN: r69964 --- gcc/tree-inline.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gcc/tree-inline.c') diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index bd45b15..dbf2543 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -948,6 +948,11 @@ inlinable_function_p (tree fn, inline_data *id, int nolimit) in C++ it may result in template instantiation.) */ inlinable = !(*lang_hooks.tree_inlining.cannot_inline_tree_fn) (&fn); + /* If we don't have the function body available, we can't inline + it. */ + if (! DECL_SAVED_TREE (fn)) + return 0; + /* We may be here either because fn is declared inline or because we use -finline-functions. For the second case, we are more restrictive. */ @@ -1027,11 +1032,6 @@ inlinable_function_p (tree fn, inline_data *id, int nolimit) } } - /* If we don't have the function body available, we can't inline - it. */ - if (! DECL_SAVED_TREE (fn)) - inlinable = 0; - /* Check again, language hooks may have modified it. */ if (! inlinable || DECL_UNINLINABLE (fn)) return 0; -- cgit v1.1