This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch] Restore cross-language inlining into Ada
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 20 Jan 2016 09:32:37 +0100
- Subject: [patch] Restore cross-language inlining into Ada
- Authentication-results: sourceware.org; auth=none
Hi,
this patch from Jan:
https://gcc.gnu.org/ml/gcc-patches/2015-03/msg01388.html
totally disabled cross-language inlining into Ada without notice, by adding a
check that always fails when the language of the callee is not Ada...
The attached patch simply deletes this new check to restore the initial state.
Tested on x86_64-suse-linux, OK for the mainline?
2016-01-20 Eric Botcazou <ebotcazou@adacore.com>
* ipa-inline.c (can_inline_edge_p): Back out overzealous check on
flag_non_call_exceptions compatibility.
--
Eric Botcazou
Index: ipa-inline.c
===================================================================
--- ipa-inline.c (revision 232465)
+++ ipa-inline.c (working copy)
@@ -432,11 +432,7 @@ can_inline_edge_p (struct cgraph_edge *e
does not throw.
This is tracked by DECL_FUNCTION_PERSONALITY. */
|| (check_match (flag_non_call_exceptions)
- /* TODO: We also may allow bringing !flag_non_call_exceptions
- to flag_non_call_exceptions function, but that may need
- extra work in tree-inline to add the extra EH edges. */
- && (!opt_for_fn (callee->decl, flag_non_call_exceptions)
- || DECL_FUNCTION_PERSONALITY (callee->decl)))
+ && DECL_FUNCTION_PERSONALITY (callee->decl))
|| (check_maybe_up (flag_exceptions)
&& DECL_FUNCTION_PERSONALITY (callee->decl))
/* Strictly speaking only when the callee contains function