[parisc-linux] Re: uaccess ya patch

John David Anglin dave@hiauly1.hia.nrc.ca
Tue, 26 Nov 2002 13:56:10 -0500 (EST)


> i guess if a 64-bit number is always passed in a way that we can access
> the first half as %1 and the second half as %1R then we can do away with
> the masking.... 

That should be %R1.  The form %1R is what you might use to select the
right half of a floating point register.  In this, the R is just a
regular character.  When the R follows the % character, it is an
operand modifier.

GCC always uses consecutive registers for objects larger than a word,
at least in the initial rtl generation.  It is possible to split large
modes after reload for better register utilization but we don't
currently do it on the PA.

I have been working in the last few days on improving support for
non-consecutive groups of registers.  At the moment, they are just
used for function arguments and return values.  The hppa64 port
currently returns incorrectly justified small structures and we need
some enhancement to the current register group support to fix this..

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)