On 10/4/18 2:58 AM, Richard Biener wrote:
> On Wed, 3 Oct 2018, Christophe Lyon wrote:
> 
>> On Mon, 1 Oct 2018 at 11:36, Richard Biener <rguent...@suse.de> wrote:
>>>
>>>
>>> The following typo-fix happens to fix a --param max-peel-branches limit
>>> caused missed peeling.  The typo is present everywhere, the missed
>>> peeling is a regression from GCC 7.
>>>
>>> Bootstrap and regtest running on x86_64-unknown-linux-gnu.
>>>
>>> I'm not really considering to backport this anywhere.  Note the
>>> testcase isn't fully optimized on the tree level because
>>> DOM doesn't figure out the trivial CSE after SLP vectorizes the
>>> array init (we have PRs for that issue).
>>>
>>> Richard.
>>>
>>> 2018-10-01  Richard Biener  <rguent...@suse.de>
>>>
>>>         PR tree-optimization/87465
>>>         * tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Fix typo
>>>         causing branch miscounts.
>>>
>>>         * gcc.dg/tree-ssa/cunroll-15.c: New testcase.
>>>
>>
>> Hi,
>>
>> The new testcase fails on arm and powerpc.
> 
> Bah, it's the old issue that DOM doesn't handle CSE of
> 
>   in = *.LC0;
>   _52 = in[1];
>   _51 = in[0];
Right.  It doesn't work hard at all to hash alternate forms of memory
references to the same hash value.  It's one of the reasons I'd like to
move away from its hash routines to a standardized VN like you've
implemented elsewhere as I believe your VN code does a better job at
finding these alternate forms and generating a consistent VN for them.


> 
> I see no other way of xfailing for a specific list of targets then.
> 
> Please feel free to amend if new ones pop up.
> 
> I'm committing the following.  I really wonder if we could go
> for a cheap non-iterating FRE now (and whether late jump threading
> from DOM is important).
It's not hugely important, though with the desire to kill the VRP
threading, the late DOM threading increases slightly in importance.

jeff

Reply via email to