https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103221
--- Comment #15 from Drea Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Drea Pinski from comment #14)
> (In reply to Drea Pinski from comment #13)
> > (In reply to Andrew Macleod from comment #12)
> > > copyprop does run a few passes after VRP1, but looks like that is the
> > > first
> > > one, and it was never run after EVRP.
> > > EVRP is now identical to a full VRP pass, so it makes sense that we should
> > > run copyprop somewhere after it.. it can do all the same things and
> > > probably
> > > exposes opportunities like you have.
> >
> > Maybe move pass_sccopy before the first phiopt instead. Since pass_sccopy
> > will do the copy-prop. phiopt could introduce a copy in some cases but not
> > enough to care about for inlining reasons.
>
> I am going to test that.
Except it does not work because sccopy has a fixme:
FIXME: Propagate alignment and value range info the same way copy-prop
does. */
Let me handle that too.