linux-mips
[Top] [All Lists]

N32 support in 64-bit MIPS Linux

To: linux-mips mailing list <linux-mips@oss.sgi.com>
Subject: N32 support in 64-bit MIPS Linux
From: Kjeld Borch Egevang <kjelde@mips.com>
Date: Thu, 15 Aug 2002 12:06:31 +0200 (MEST)
Sender: owner-linux-mips@oss.sgi.com
Hi all.

I would like to hear your opinion on this.

Currently we have the N64 interface which is the basic interface to the
kernel. Then we have the O32 interface which is implemented as a separate
set of syscalls in unistd.h and proper conversion in the kernel.

Now, how can we support N32? Many syscalls will work if N32 is treated the
same way as O32. This will of course mean, that O32 must be compiled in in
order to support N32. But e.g. a syscall like:

int _llseek(unsigned int fd, unsigned long offset_high, unsigned long 
offset_low, loff_t *result, unsigned int whence);

needs special treatment since loff_t is a long long (passed in a single
register for N32) and there are 6 arguments (all passed in registers for
N32, passed in registers and on the stack for O32).

Should we simply add 235 new syscall numbers to unistd.h named 
__NR_LinuxN32...?


/Kjeld


-- 
_    _ ____  ___                       Mailto:kjelde@mips.com
|\  /|||___)(___    MIPS Denmark       Direct: +45 44 86 55 85
| \/ |||    ____)   Lautrupvang 4 B    Switch: +45 44 86 55 55
  TECHNOLOGIES      DK-2750 Ballerup   Fax...: +45 44 86 55 56
                    Denmark            http://www.mips.com/


<Prev in Thread] Current Thread [Next in Thread>