This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: PA problem
- To: law at redhat dot com
- Subject: Re: PA problem
- From: Richard Earnshaw <rearnsha at arm dot com>
- Date: Wed, 28 Feb 2001 17:06:20 +0000
- cc: Alexandre Oliva <aoliva at redhat dot com>, Richard dot Earnshaw at arm dot com, gcc-bugs at gcc dot gnu dot org
- Organization: ARM Ltd.
- Reply-To: Richard dot Earnshaw at arm dot com
>
>
> In message <orr90ihodn.fsf@guarana.lsd.ic.unicamp.br>you write:
> > On Feb 28, 2001, Richard Earnshaw <rearnsha@arm.com> wrote:
> >
> > > Shouldn't there also be a non-overlap of op[4] with op[3]?
> >
> > Wouldn't the earlyclobber prevent it from being shared with any input
> > operand, op[3] inclusive?
> Yes, but the earlyclobber is only examined by the register allocators.
>
> In the case where we split the instruction before register allocation we
> need the ! reg_overlap_mentioned_p stuff. [OK, we *could* arrange to generate
> the right code if we have an overlap, it's not worth the headache. ]
>
> In the case where we do not split the instruction (say a -O1 compilation)
> then we need to tell the register allocator about the operands can not
> overlap, which we do via the earlyclobber.
>
> As to Richard's question, yes, I believe you're right.
Of course, the other alternative is to disable the splitter until after
reload has completed. I'm not sure which will lead to the best code.
R.