This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: dom requires PROP_loops


On Thu, Mar 13, 2014 at 1:58 PM, Paulo Matos <pmatos@broadcom.com> wrote:
>
>> -----Original Message-----
>> From: gcc-owner@gcc.gnu.org [mailto:gcc-owner@gcc.gnu.org] On Behalf Of Paulo
>> Matos
>> Sent: 13 March 2014 11:21
>> To: Richard Biener
>> Cc: gcc@gcc.gnu.org
>> Subject: RE: dom requires PROP_loops
>>
>>
>> PROP_loops is enabled from tree loopinit to rtl loop_done2 and with this property
>> enabled cfg_cleanup doesn't remove empty latches allowing GCC to move
>> instructions into the latch in the meantime.
>>
>
> Let me clarify this statement. With PROP_loops enabled, loop_optimizer_finalize doesn't free loops and current_loops is non-null. This has an array of consequences, one of them being that loop latches are not removed. So, which PROP_loops is the reason for the non-removal of empty loop latches, removal actually depends on the value of current_loops.

Probably RTL cfgcleaup needs the same treatment as GIMPLE cfgcleanup
then - allow removal if loop properties allows it.

Richard.

> --
> Paulo Matos


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]