Patchwork [PATH] PR/49139 fix always_inline failures diagnostics

login
register
mail settings
Submitter Richard Guenther
Date June 21, 2011, 12:04 p.m.
Message ID <BANLkTi=DKBL8uBsUF9PnfO64WtyEGGhdnA@mail.gmail.com>
Download mbox | patch
Permalink /patch/101276/
State New
Headers show

Comments

Richard Guenther - June 21, 2011, 12:04 p.m.
On Tue, Jun 21, 2011 at 1:11 PM, Richard Guenther
<richard.guenther@gmail.com> wrote:
> On Mon, Jun 20, 2011 at 3:56 PM, Christian Bruel <christian.bruel@st.com> wrote:
>> On 06/20/2011 03:41 PM, Rainer Orth wrote:
>>>
>>> Christian Bruel<christian.bruel@st.com>  writes:
>>>
>>>> 2011-06-16  Christian Bruel<christian.bruel@st.com>
>>>>
>>>>        PR 49139/43654
>>>
>>> Please use the correct PR number format here:
>>>
>>>        PR middle-end/49139
>>>         PR middle-end/43654
>>>
>>> Otherwise the check-in notices don't get into the PRs.
>>
>> OK thanks, in fact I was referring to the file gcc.dg/pr43564.c (there was a
>> typo in the number btw). But good indeed to send the notice into the
>> original PR as well.
>
> The code now looks like
>
>  if (node->callees)
>    {
>      /* Redirecting edges might lead to a need for vops to be recomputed.  */
>      todo |= TODO_update_ssa_only_virtuals;
>      todo = optimize_inline_calls (current_function_decl);
>    }
>
> I have committed an obvious patch.

Ick - that broke bootstrap.  FIxing as follows.

RIchard.

2011-06-21  Richard Guenther  <rguenther@suse.de>

        * ipa-inline-transform.c (inline_transform): Fix previous
        change.

Patch

Index: gcc/ipa-inline-transform.c
===================================================================
--- gcc/ipa-inline-transform.c  (revision 175253)
+++ gcc/ipa-inline-transform.c  (working copy)
@@ -364,13 +364,13 @@  inline_transform (struct cgraph_node *no

   timevar_push (TV_INTEGRATION);
   if (node->callees)
-    {
-      todo = optimize_inline_calls (current_function_decl);
-      /* Redirecting edges might lead to a need for vops to be recomputed.  */
-      todo |= TODO_update_ssa_only_virtuals;
-    }
+    todo = optimize_inline_calls (current_function_decl);
   timevar_pop (TV_INTEGRATION);

+  if (!(todo & TODO_update_ssa_any))
+    /* Redirecting edges might lead to a need for vops to be recomputed.  */
+    todo |= TODO_update_ssa_only_virtuals;
+
   cfun->always_inline_functions_inlined = true;
   cfun->after_inlining = true;
   return todo | execute_fixup_cfg ();