This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: ppc64 floating point usage [was Re: PPC64 Compiler bug !!]
- From: Eric Christopher <echristo at redhat dot com>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Sat, 09 Aug 2003 16:14:08 -0700
- Subject: Re: ppc64 floating point usage [was Re: PPC64 Compiler bug !!]
- References: <200308090327.XAA06636@makai.watson.ibm.com>
> Consider an example where you want to perform an integer
> arithmetic operations on the DImode pseudo after converting from float.
> Would it be good to allocate that pseudo in an FPR and have reload copy it
> in and out of a GPR for each integer operation? I could create a similar
> example for the pseudo used in a floating pointer context.
>
> The architecture produces a DImode value in an FPR. DImode
> most frequently is used in GPRs. The best choice for the allocation of
> the pseudo depends on the other uses of the pseudo in the function, not
> the requirement of the conversion instruction.
Right, I can understand all of that, I worry that when you're choosing
register preferences it'll take an integer register in the unlikely case
that you have all of your floating point registers occupied giving you
an insn that can't match it's constraints. I thought * was normally used
when you have multiple alternatives and want to ignore one/multiple of
them for choosing register preferences. I just don't see a valid
constraint as a possible choice for register preference.
If I'm wrong here I apologize for the furor :)
-eric
--
Eric Christopher <echristo@redhat.com>