On Fri, Feb 08, 2019 at 11:06:02AM +0100, Christophe Lyon wrote:
> On Fri, 8 Feb 2019 at 10:51, Jakub Jelinek <[email protected]> wrote:
> >
> > On Fri, Feb 08, 2019 at 10:18:03AM +0100, Christophe Lyon wrote:
> > > I'm afaid this patch causes several regressions. Maybe they have
> > > already been fixed post-commit (I have several validations for later
> > > commits still running)?
> >
> > The following patch fixes the single ICE I've tried to reproduce.
> > While iwmmxt.md movdi pattern uses =m, r and =r, m constraints, both
> > arm.md and vfp.md movdi patterns use =m, q and =q, m constraints and thus
> > allow also ip register. The following patch is an attempt to do the same
> > thing, just in the same patterns through arch_enabled attribute.
> >
> > Completely untested.
> >
> > 2019-02-08 Jakub Jelinek <[email protected]>
> >
> > PR bootstrap/88714
> > * config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Add alternative
> > with
> > q constraint instead of r, enable it only if not
> > TARGET_REALLY_IWMMXT.
>
> I've started validations with this patch, I expect the results later today.
Thanks. Note, I don't understand why iwmmxt.md doesn't use q constraint, if
it is only some omission, or some hw requirement. So, the patch just
follows what iwmmxt.md does. I guess because iwmmxt.md movsi also uses r
constraint, ip really shouldn't appear on that target. But if just changing
all r constraints to q without any arch_enabled works, that would be even
simpler.
Jakub