This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ppc64 floating point usage [was Re: PPC64 Compiler bug !!]


> 	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>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]