[PATCH][RFC] Fix PR55964
Tue Jan 15 10:56:00 GMT 2013
On Mon, Jan 14, 2013 at 04:58:09PM +0100, Richard Biener wrote:
> I happen to have a patch for PR55964 around - preparatory work
> to make loop distribution (and vectorization) handle nested loops.
> It mostly kills the broken way loop distribution copies loops
> (which is where we ICE in this PR). So instead of trying to
> make that old logic slightly less broken I consider to simply
> apply this work now ... (I've posted this before in December).
> I'm re-bootstrapping and testing this on x86_64-unknown-linux-gnu.
> So ... ok at this stage?
Ok, if nobody complains in the next 24 hours.
> 2013-01-14 Richard Biener <email@example.com>
> PR tree-optimization/55964
> * tree-flow.h (rename_variables_in_loop): Remove.
> (rename_variables_in_bb): Likewise.
> * tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
> (copy_loop_before): Adjust and delete update-ssa status.
> * tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
> (rename_variables_in_bb): Likewise. Properly walk over
> (rename_variables_in_loop): Remove.
> (slpeel_update_phis_for_duplicate_loop): Likewise.
> (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
> use available cfg machinery instead of duplicating it.
> Update PHI nodes and perform poor-mans SSA update here.
> (slpeel_tree_peel_loop_to_edge): Adjust.
> * gcc.dg/torture/pr55964.c: New testcase.
More information about the Gcc-patches