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.