On Fri, Jan 10, 2014 at 4:45 PM, Tom de Vries <tom_devr...@mentor.com> wrote:
> On 09-01-14 13:33, Richard Biener wrote:
>>
>> On Thu, 9 Jan 2014, Tom de Vries wrote:
>>
>>> On 09-01-14 10:16, Richard Biener wrote:
>>>>
>>>>
>>>> This fixes PR59715 by splitting critical edges again before
>>>> code sinking.  The critical edge splitting done before PRE
>>>> was designed to survive until sinking originally, but at least
>>>> since 4.5 PRE now eventually cleans up the CFG and thus undos
>>>> critical edge splitting.  This results in less than optimal
>>>> code placement (and lost opportunities) for sinking and it
>>>> breaks (at least) the virtual operand updating code which
>>>> assumes that critical edges are still split.
>>>>
>>>
>>> Richard,
>>>
>>> this follow-up patch:
>>> - notes in pass_pre that PROP_no_crit_edge is destroyed
>>> - notes in pass_sink_code that PROP_no_crit_edge is not required
>>>    (because it's now ensured by the pass itself)
>>>
>>> Build and reg-tested pr59715.c on x86_64.
>>>
>>> OK for stage3 trunk if bootstrap and full reg-test on x86_64 is ok?
>>
>>
>> Ok with /* PROP_no_crit_edges | */ not commented but removed.
>>
>
> Richard,
>
> Committed to trunk with that change.
>
> I saw you propagated the fix for PR59715 to 4.8 and 4.7 as well.
>
> Should I propagate this follow-up patch as well?

No, it's purely cosmetic after all.

Richard.

> Thanks,
> - Tom
>
>> Thanks,
>> Richard.
>>
>

Reply via email to