tree.h (build_function_decl_skip_args): Add boolean parameter.
authorEric Botcazou <ebotcazou@adacore.com>
Wed, 11 Jan 2012 18:47:28 +0000 (18:47 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Wed, 11 Jan 2012 18:47:28 +0000 (18:47 +0000)
commit1a2c27e964bb00e2ddbe3e1a265c95adb851402c
treef3e48a68df89c7419d086f7a678f0af82c975f18
parentb2e25729e5a4b93e4c022815f19a43e4ae01f11e
tree.h (build_function_decl_skip_args): Add boolean parameter.

* tree.h (build_function_decl_skip_args): Add boolean parameter.
(build_function_type_skip_args): Delete.
* tree.c (build_function_type_skip_args): Make static and add
SKIP_RETURN parameter.  Fix thinko in the handling of variants.
(build_function_decl_skip_args): Add SKIP_RETURN parameter and
pass it to build_function_type_skip_args.
* cgraph.h (cgraph_function_versioning): Add boolean parameter.
(tree_function_versioning): Likewise.
* cgraph.c (cgraph_create_virtual_clone): Adjust call to
build_function_decl_skip_args.
* cgraphunit.c (cgraph_function_versioning): Add SKIP_RETURN parameter
and pass it to build_function_decl_skip_args/tree_function_versioning.
(cgraph_materialize_clone): Adjust call to tree_function_versioning.
* ipa-inline-transform.c (save_inline_function_body): Likewise.
* trans-mem.c (ipa_tm_create_version): Likewise.
* tree-sra.c (modify_function): Ditto for cgraph_function_versioning.
* tree-inline.c (declare_return_variable): Remove always-true test.
(tree_function_versioning): Add SKIP_RETURN parameter.  If the function
returns non-void and SKIP_RETURN, create a void-typed RESULT_DECL.
* ipa-split.c (split_function): Skip the return value for the split
part if it doesn't return.

From-SVN: r183102
18 files changed:
gcc/ChangeLog
gcc/cgraph.c
gcc/cgraph.h
gcc/cgraphunit.c
gcc/ipa-inline-transform.c
gcc/ipa-split.c
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/opt23.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/opt23.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/opt23_pkg.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/opt23_pkg.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/opt24.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/opt24.ads [new file with mode: 0644]
gcc/trans-mem.c
gcc/tree-inline.c
gcc/tree-sra.c
gcc/tree.c
gcc/tree.h