]> git.ipfire.org Git - thirdparty/gcc.git/commit
tree.h (DID_INLINE_FUNC): Remove macro.
authorSteven Bosscher <steven@gcc.gnu.org>
Tue, 5 Aug 2003 14:11:53 +0000 (14:11 +0000)
committerSteven Bosscher <steven@gcc.gnu.org>
Tue, 5 Aug 2003 14:11:53 +0000 (14:11 +0000)
commitb3c3af2f63dac9ca424ea3c1a456ef689159d3ae
treef99d1c794a4de2c3fc4751de63ab48b0674a8860
parent158aa0f72ec70e63bd8e4efd3f4edadd2d95f96d
tree.h (DID_INLINE_FUNC): Remove macro.

2003-08-05  Steven Bosscher  <steven@gcc.gnu.org>

* tree.h (DID_INLINE_FUNC): Remove macro.
(DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
add tree check for FUNCTION_DECL.
(DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
(struct tree_decl): Rename inlined_function_flag to
declared_inline_flag.
* c-common.h (c_lang_decl): Remove.
(DECL_ESTIMATED_INSNS): Remove.
* c-tree.h (struct lang_decl): Don't include c_lang_decl.
(DECL_DECLARED_INLINE_P): Remove.
* c-decl.c (grokdeclarator): Update comment.  With -finline-functions,
do not reset DECL_DECLARED_INLINE_P.  Don't use DID_INLINE_FUNC.
(finish_function): Make uninlinable a bool.  Fixup call to
tree_inlinable_function_p() and fix some code style issues.
* cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
* cgraph.c (dump_cgraph): Likewise.
* cgraphunit.c (cgraph_decide_inlining): Likewise
(cgraph_finalize_compilation_unit): Likewise.
Also update call to tree_inlinable_function_p().
(cgraph_default_inline_p): Don't use DID_INLINE_FUNC.  Instead
look at DECL_DECLARED_INLINE and reverse logic.
* print-tree.c (print_node): Likewise.
* toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
* tree-inline.h (tree_inlinable_function_p): Make a bool.  Update
prototype.
* tree-inline.c (inlinable_function_p): Split up in this function to
check for basic inlining inhibiting conditions, and new
limits_allow_inlining() function.  Warn if inlining is impossible
because the inline candidate calls alloca or uses sjlj exceptions.
(limits_allow_inlining): this new function to check if the inlining
limits are satisfied.  Throttle from currfn_max_inline_insns, not from
MAX_INLINE_INSNS_SINGLE.  The latter only makes sense if
MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
Update prototypes.
(tree_inlinable_function_p): Make a bool.  Update call to
inlinable_function_p
(expand_call_inline): Use limits_allow_inlining() when not in
unit-at-a-time mode to decide on inlining.  Don't use DID_INLINE_FUNC,
instead see if the function was declared `inline'.

cp/
* cp-tree.h (struct lang_decl): Don't include c_lang_decl.
(DECL_DECLARED_INLINE_P): Remove.
* decl2.c (import_export_decl): Only look at DECL_DECLARED_INLINE_P
if decl is a FUNCTION_DECL.  This never made sense, but now it is
required to avoid a tree check failure.
* decl.c (grokfndecl): Don't touch DID_INLINE_FUNC.
* optimize.c (maybe_clone_body): Likewise.

java/
* java-tree.h (DECL_ESTIMATED_INSNS): Remove.

From-SVN: r70174
19 files changed:
gcc/ChangeLog
gcc/c-common.h
gcc/c-decl.c
gcc/c-tree.h
gcc/cgraph.c
gcc/cgraph.h
gcc/cgraphunit.c
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/decl2.c
gcc/cp/optimize.c
gcc/java/ChangeLog
gcc/java/java-tree.h
gcc/print-tree.c
gcc/toplev.c
gcc/tree-inline.c
gcc/tree-inline.h
gcc/tree.h