On 05/09/2011 07:32 AM, Andrew Haley wrote:
On 05/09/2011 03:28 PM, Ralf Baechle wrote:
On Mon, Feb 21, 2011 at 07:45:41PM +0000, Richard Sandiford wrote:
David Daney<dda...@caviumnetworks.com> writes:
Background:
Current MIPS 32-bit ABIs (both o32 and n32) are restricted to 2GB of
user virtual memory space. This is due the way MIPS32 memory space is
segmented. Only the range from 0..2^31-1 is available. Pointer
values are always sign extended.
Because there are not already enough MIPS ABIs, I present the ...
Proposal: A new ABI to support 4GB of address space with 32-bit
pointers.
FWIW, I'd be happy to see this go into GCC.
So am I for the kernel primarily because it's not really a new ABI but
an enhancement of the existing N32 ABI.
Would it work with no kernel changes?
It depends on your definition of 'work'.
Programs compiled with the new ABI variant would work just as well as
when compiled for Genuine n32.
However, currently the kernel will only give out 2GB worth of address
space to n32 programs. To get any benefit from the new ABI variant, the
kernel would have to be modified to use the entire 4GB of usable address
space.
David Daney.