diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2004-07-06 02:20:16 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2004-07-05 22:20:16 -0400 |
commit | 5377d5ba398d4949af937fc025c1b01203aa3315 (patch) | |
tree | e36b5564359495ed12dc4107ed22bf65a3afddcc /gcc/integrate.c | |
parent | aac1d259ac0a17ccce902d1f151422554ee5f2d8 (diff) | |
download | gcc-5377d5ba398d4949af937fc025c1b01203aa3315.zip gcc-5377d5ba398d4949af937fc025c1b01203aa3315.tar.gz gcc-5377d5ba398d4949af937fc025c1b01203aa3315.tar.bz2 |
langhooks-def.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Extra arg.
* langhooks-def.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Extra arg.
* langhooks.h (var_mod_type_p): Likewise.
* c-decl.c (finish_decl): Add extra arg to variably_modified_type_p.
* expr.c (count_type_elements): Properly handle return from
array_type_nelts and properly test for overflow.
* gimplify.c (gimplify_init_constructor): Properly handle return
from array_type_nelts.
(gimplify_addr_expr): Remove redundant clear of TREE_SIDE_EFFECTS.
* integrate.c (copy_decl_for_inlining): Correct comments.
* tree-inline.c (remap_decl): Update comments, remove dead code,
and copy DECL_FIELD_OFFSET and DECL_QUALIFIER, if they exist.
(remap_type): Only remap if variably modified by vars in function
being inlined.
(copy_body_r): Use compatible_type langhooks to see when can fold.
(setup_one_parameter): Don't remap type.
(inline_forbidden_p_1): Add arg to variably_modified_type_p.
* tree.c (recompute_tree_invarant_for_addr_expr): Properly
compute TREE_INVARIANT for decl case.
(find_var_from_fn): New function.
(variably_modified_type_p): Add arg and call new function.
* tree.h (variably_modified_type_p): Add extra arg.
* cp/cp-lang.c (cp_var_mod_type_p): Add extra arg.
* cp/decl.c (grokdeclarator): Extra arg to variably_modified_type_p.
* cp/pt.c (check_instantiated_args, unify): Likewise.
From-SVN: r84144
Diffstat (limited to 'gcc/integrate.c')
-rw-r--r-- | gcc/integrate.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/integrate.c b/gcc/integrate.c index 03711d9..892f453 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -105,9 +105,8 @@ function_attribute_inlinable_p (tree fndecl) return true; } -/* Copy NODE (which must be a DECL, but not a PARM_DECL). The DECL - originally was in the FROM_FN, but now it will be in the - TO_FN. */ +/* Copy NODE (which must be a DECL). The DECL originally was in the FROM_FN, + but now it will be in the TO_FN. */ tree copy_decl_for_inlining (tree decl, tree from_fn, tree to_fn) @@ -132,7 +131,7 @@ copy_decl_for_inlining (tree decl, tree from_fn, tree to_fn) else type = TREE_TYPE (decl); - /* For a parameter, we must make an equivalent VAR_DECL, not a + /* For a parameter or result, we must make an equivalent VAR_DECL, not a new PARM_DECL. */ copy = build_decl (VAR_DECL, DECL_NAME (decl), type); if (!invisiref) |