summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sh/pipe.c
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-10-23 04:20:20 +0000
committerPaul Mundt <lethal@linux-sh.org>2006-10-23 04:20:20 +0000
commit0b508dd647e667c92820ddfc82eb5f95b19d2db1 (patch)
tree882e403d52d6a21249c00a7b8b451e9c7eec9239 /libc/sysdeps/linux/sh/pipe.c
parent44b161a8c584a50d77d63ad553e78991c7dc3617 (diff)
Merge SH-2 trapa fixups from Mark.
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.
Diffstat (limited to 'libc/sysdeps/linux/sh/pipe.c')
-rw-r--r--libc/sysdeps/linux/sh/pipe.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/sh/pipe.c b/libc/sysdeps/linux/sh/pipe.c
index 167db8903..432a5bc03 100644
--- a/libc/sysdeps/linux/sh/pipe.c
+++ b/libc/sysdeps/linux/sh/pipe.c
@@ -20,12 +20,13 @@ int pipe(int *fd)
__asm__ __volatile__ (
"mov %2, r3;"
"mov %3, r4;"
- "trapa #0x13;"
+ "trapa %4;"
"mov r1, %1;"
: "=z" (__res),
"=r" ((long) __res2)
: "r" ((long) __NR_pipe),
- "r" ((long) fd)
+ "r" ((long) fd),
+ "i" (__SH_SYSCALL_TRAP_BASE + 3)
: "cc", "memory", "r1", "r3", "r4");
if ((unsigned long)(__res) >= (unsigned long)(-125)) {
int __err = -(__res);