This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Fix PR61221
- From: Jeff Law <law at redhat dot com>
- To: Richard Biener <rguenther at suse dot de>, gcc-patches at gcc dot gnu dot org
- Date: Mon, 19 May 2014 10:57:52 -0600
- Subject: Re: [PATCH] Fix PR61221
- Authentication-results: sourceware.org; auth=none
- References: <alpine dot LSU dot 2 dot 11 dot 1405191451130 dot 13304 at zhemvz dot fhfr dot qr>
On 05/19/14 06:54, Richard Biener wrote:
Is this another case where having two lists rather than just one in the
SSA_NAME manager would help? It's something I really need to sit down
and just do.
In this PR we run into the issue that releasing SSA names from
FRE/PRE elimination corrupts the VN lattice and thus the VN lookup
we perform for removing redudnant stores ICEs. The patch works
around the particular case by making unreachable code detection
in SCCVN more optimistic by ignoring backedges during reachability
computation and by not doing any elimination on unreachable blocks.
I still have to think about a "proper" fix to the underlying issue
(propagate_value_into_stmt updating stmts on our back).
Bootstrap and regtest running on x86_64-unknown-linux-gnu.
2014-05-19 Richard Biener <firstname.lastname@example.org>
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Do nothing for unreachable blocks.
* tree-ssa-sccvn.c (cond_dom_walker::before_dom_children):
Improve unreachability detection.
* gcc.dg/torture/pr61221.c: New testcase.