[patch] Fix PR43464: update loop closed SSA form once copy prop is done

Richard Guenther rguenther@suse.de
Tue Mar 23 10:09:00 GMT 2010


On Mon, 22 Mar 2010, Sebastian Pop wrote:

> On Mon, Mar 22, 2010 at 04:52, Richard Guenther <rguenther@suse.de> wrote:
> > Simply drop the gimple_num_phi_args == 1 check from the code that
> > tries to preserve loop-closed SSA form.
> 
> This change passed bootstrap and test on amd64-linux.
> As I said on the PR, this change would break both h264ref
> and gamess with -O3.  See
> http://groups.google.com/group/gcc-graphite-test/browse_thread/thread/f5b0d912e90b598f
> 
> And there I come back again to Steven, and reiterate:
> instead of just adding more bugs like this, why not adding
> as I proposed a call to rewrite_into_loop_closed_ssa
> that would do the right thing?

Because it is neither necessary not wanted.  It's expensive.
As Michael said, its unswitching that does not preserve loop-closed
SSA form, so at most rewrite_into_loop_closed_ssa should go _there_,
not in copyprop.  But, please try to fixup unswitching instead
(note I'm not going to approve a patch adding rewrite_into_loop_closed_ssa
for 4.5, obviously the problems are at most latent).

Richard.



More information about the Gcc-patches mailing list