PA problem
Jeffrey A Law
law@redhat.com
Wed Feb 28 07:38:00 GMT 2001
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.
jeff
ps. Alex, you can probably find some of this discussion in the training
program -- I put it in there a while back because I thought it gave some
interesting insights into how constraints and insn predicates worked as
well as some insight into a couple of the optimizers.
More information about the Gcc-bugs
mailing list