https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64081

--- Comment #38 from rguenther at suse dot de <rguenther at suse dot de> ---
On Mon, 6 Feb 2017, aldyh at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64081
> 
> --- Comment #37 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
> The patch that causes the bootstrap problem to go away is:
> 
> commit 42b45e81de1263454d6df22ca745db858c19e5b5
> Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
> Date:   Wed Aug 12 14:27:40 2015 +0000
> 
>     2015-08-12  Richard Biener  <rguent...@suse.de>
> 
>             * tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize
>             comparison operand order and commutative ternary op operand order.
>             (sccvn_dom_walker::cond_stack): New state to track temporary
>             expressions.
>             (sccvn_dom_walker::after_dom_children): Remove tempoary 
> expressions
>             no longer valid.
>             (sccvn_dom_walker::record_cond): Add a single temporary 
> conditional
>             expression.
>             (sccvn_dom_walker::record_conds): Add a temporary conditional
>             expressions and all related expressions also true/false.
>             (sccvn_dom_walker::before_dom_children): Record temporary
>             expressions based on the controlling condition of a single
>             predecessor.  When trying to simplify a conditional statement
>             lookup expressions we might have inserted earlier.
> 
> Unfortunately, this is not a simple bugfix, but an optimization.  So, it seems
> to me we can't easily glean from the above what caused the original patch to
> bootstrap on AIX.  Perhaps Richi has ideas as to the interaction between his
> patch and the patch in comment 8.  In the meantime, I will try to narrow down
> the bootstrap failure further.

There's no direct interaction.  It's also not clear how the bootstrap 
miscompare manifests.

Reply via email to