On Wed, 19 Feb 2025, Jeff Law wrote: > > > On 2/15/25 6:36 AM, Richard Biener wrote: > > The PR indicates a very specific issue with regard to SSA coalescing > > failures because there's a pre IV increment loop exit test. While > > IVOPTs created the desired IL we later simplify the exit test into > > the undesirable form again. The following fixes this up during RTL > > expansion where we try to improve coalescing of IVs. That seems > > easier that trying to avoid the simplification with some weird > > heuristics (it could also have been written this way). > Ugh. I think we've got hacks in multiple places to deal with similar issues. > One could ask the question if one or more of those could be removed, though > clearly that's gcc-16 material.
I think they are all in this place (and rightfully so). If you remember others elsewhere I'd like to know ;) > > > > Bootstrap and regtest running on x86_64-unknown-linux-gnu. > > > > OK? > > > > Thanks, > > Richard. > > > > PR tree-optimization/86270 > > * tree-outof-ssa.cc (insert_backedge_copies): Pattern > > match a single conflict in a loop condition and adjust > > that avoiding the conflict if possible. > > > > * gcc.target/i386/pr86270.c: Adjust to check for no reg-reg > > copies as well. > Seems sensible, more so than I expected when reading the intro. Thanks, pushed (clearing through old regressins assigned to me...) Richard.