diff options
author | Jan Hubicka <jh@suse.cz> | 2013-07-25 19:10:21 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2013-07-25 17:10:21 +0000 |
commit | 49bde17554926a2352b7f1df98d4e02becc1e065 (patch) | |
tree | 8d52c0e27c62a558679ffa973f3a0c348cef4b41 /gcc/tree-inline.c | |
parent | 4870352d35468211accf8c293bf756eac99bc1e7 (diff) | |
download | gcc-49bde17554926a2352b7f1df98d4e02becc1e065.zip gcc-49bde17554926a2352b7f1df98d4e02becc1e065.tar.gz gcc-49bde17554926a2352b7f1df98d4e02becc1e065.tar.bz2 |
cgraph.c (release_function_body): Break out from ...
* cgraph.c (release_function_body): Break out from ...
(cgraph_release_function_body): ... this one; also release DECL_RESULT
and DECL_ARGUMENTS.
* ipa-cp.c (get_replacement_map): Add parm_num argument; do not set
old_tree in the map.
(create_specialized_node): Update.
* lto-cgraph.c (output_node_opt_summary): Do not translate old_tree
into index.
* cgraphclones.c (cgraph_create_virtual_clone): Do not copy DECL_ARGUMENTS,
DECL_INITIAL and DECL_RESULT.
* ipa-prop.c (ipa_populate_param_decls): Look for origin of clones.
* tree-inline.c (initialize_cfun): Initialize DECL_ARGUMENTS and
DECL_RESULT.
From-SVN: r201251
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r-- | gcc/tree-inline.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index cac868a..9b2c815 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -2057,6 +2057,11 @@ initialize_cfun (tree new_fndecl, tree callee_fndecl, gcov_type count) struct function *src_cfun = DECL_STRUCT_FUNCTION (callee_fndecl); gcov_type count_scale; + if (!DECL_ARGUMENTS (new_fndecl)) + DECL_ARGUMENTS (new_fndecl) = DECL_ARGUMENTS (callee_fndecl); + if (!DECL_RESULT (new_fndecl)) + DECL_RESULT (new_fndecl) = DECL_RESULT (callee_fndecl); + if (ENTRY_BLOCK_PTR_FOR_FUNCTION (src_cfun)->count) count_scale = GCOV_COMPUTE_SCALE (count, |