Age | Commit message (Collapse) | Author |
|
2006-10-16 Mark Shinwell <shinwell@codesourcery.com>
* libc/sysdeps/linux/sh/vfork.S: Use __SH_SYSCALL_TRAP_BASE.
Also use __CONFIG_SH2__ rather than __sh2__, for consistency.
* libc/sysdeps/linux/sh/syscall.c: Use __SH_SYSCALL_TRAP_BASE.
* libc/sysdeps/linux/sh/bits/uClibc_arch_features.h: Use
__CONFIG_SH2__ rather than __sh2__, for consistency.
* libc/sysdeps/linux/sh/bits/syscalls.h (__SH_SYSCALL_TRAP_BASE):
New.
Use instead of hard-coded trap numbers in the various __NR_<name>
macros.
* libc/sysdeps/linux/sh/clone.S: Use __SH_SYSCALL_TRAP_BASE.
Also use __CONFIG_SH2__ rather than __sh2__, for consistency.
* libc/sysdeps/linux/sh/crti.S: Disable GOT-related code if
__HAVE_SHARED__ is not set.
* libc/sysdeps/linux/sh/pipe.c (pipe): Use __SH_SYSCALL_TRAP_BASE.
|
|
The old sh system call interface used 0x00 - 0x0f for the trapa value
(number of arguments), whereas the new ABI uses the 0x10 - 0x1f range.
For some reason we were using an off-by-1 trapa immediate which ended up
trashing r1 in the _syscall6() case, so we fix it up..
|
|
Untested, but syscall() is needed by busybox for pivot_root at least.
|