This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RS6000] Ignore "c", "l" and "h" for register preference
Morning!
On Mon, Nov 19, 2018 at 05:06:07PM +1030, Alan Modra wrote:
> On Tue, Nov 13, 2018 at 05:37:07AM -0600, Segher Boessenkool wrote:
> > On Tue, Nov 13, 2018 at 01:35:42PM +1030, Alan Modra wrote:
> > > This catches a few places where move insn patterns don't slightly
> > > disparage CTR, LR and VRSAVE regs. Also fixes the doc for the rs6000
> > > h constraint, and removes an r->cl alternative covered by r->h.
> > >
> > > Segher okayed a patch adding "*" like this patch a long time ago.
> > > Somehow I never committed it. This one does a few more things as
> > > well, but I think it's sufficiently obvious to commit as such.
> > > Bootstrapped etc. powerpc64le-linux and committed rev 266044.
> >
> > Thanks.
> >
> > I'd like to move to "cl" instead of "h" though :-)
> >
> > vrsave is not an allocatable register (it's a fixed register). We do
> > not have to handle it in the general mov patterns at all, just needs a
> > separate pattern just for this.
>
> Yes, I had the same thought, but then it wouldn't have been quite such
> an obvious patch, and I figure that getting there from where we are
> now is not worse than before the patch I committed.
>
> I'll write you a patch to get rid of "h" if it's less work for you to
> review my patch than it is to write it yourself. What would you like?
Oh, this patch is approved, sorry I didn't yet say that. Thanks!
I'd like to remove "h", or at least our use of it; I'm afraid there may
still be users of it though, in asm. Let's do it at the start of the
GCC 10 cycle?
Segher