summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/i386
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-08-11 22:36:11 +0000
committerMike Frysinger <vapier@gentoo.org>2005-08-11 22:36:11 +0000
commit71f8450fce910b1e3aa8bb17c61b10ce4a08b52f (patch)
tree2f384de76205a13bcaa0631644e429f44ff24ae0 /libc/sysdeps/linux/i386
parent4fd42eddbbb74107c6af4ff4270bfe3b8d6c56fe (diff)
jump straight to __syscall_error
Diffstat (limited to 'libc/sysdeps/linux/i386')
-rw-r--r--libc/sysdeps/linux/i386/clone.S13
-rw-r--r--libc/sysdeps/linux/i386/mmap64.S5
-rw-r--r--libc/sysdeps/linux/i386/syscall.S5
-rw-r--r--libc/sysdeps/linux/i386/vfork.S5
4 files changed, 8 insertions, 20 deletions
diff --git a/libc/sysdeps/linux/i386/clone.S b/libc/sysdeps/linux/i386/clone.S
index fbbb7d4cf..259982230 100644
--- a/libc/sysdeps/linux/i386/clone.S
+++ b/libc/sysdeps/linux/i386/clone.S
@@ -51,19 +51,19 @@ __clone:
/* no NULL function pointers */
movl FUNC(%esp),%ecx
#ifdef __PIC__
- jecxz __error
+ jecxz __syscall_error
#else
testl %ecx,%ecx
- jz __error
+ jz __syscall_error
#endif
/* no NULL stack pointers */
movl STACK(%esp),%ecx
#ifdef __PIC__
- jecxz __error
+ jecxz __syscall_error
#else
testl %ecx,%ecx
- jz __error
+ jz __syscall_error
#endif
/* Insert the argument onto the new stack. Make sure the new
@@ -96,7 +96,7 @@ __clone:
popl %ebx
test %eax,%eax
- jl __error
+ jl __syscall_error
jz .Lthread_start
ret
@@ -114,9 +114,6 @@ __clone:
movl $__NR_exit, %eax
int $0x80
-__error:
- jmp __syscall_error
-
.size __clone,.-__clone
.weak clone
diff --git a/libc/sysdeps/linux/i386/mmap64.S b/libc/sysdeps/linux/i386/mmap64.S
index 34cee1640..5c89c983b 100644
--- a/libc/sysdeps/linux/i386/mmap64.S
+++ b/libc/sysdeps/linux/i386/mmap64.S
@@ -76,7 +76,7 @@ mmap64:
/* If 0 > %eax > -4096 there was an error. */
cmpl $-4095,%eax
- ja __error
+ ja __syscall_error
/* Successful; return the syscall's value. */
ret
@@ -89,9 +89,6 @@ L_einval:
movl $-EINVAL, %eax
jmp __error
-__error:
- jmp __syscall_error
-
.size mmap64,.-mmap64
#endif
diff --git a/libc/sysdeps/linux/i386/syscall.S b/libc/sysdeps/linux/i386/syscall.S
index 44eb00f49..19adf97a8 100644
--- a/libc/sysdeps/linux/i386/syscall.S
+++ b/libc/sysdeps/linux/i386/syscall.S
@@ -45,10 +45,7 @@ syscall:
popl %ebp
cmpl $-4095,%eax
- jae __error
+ jae __syscall_error
ret /* Return to caller. */
-__error:
- jmp __syscall_error
-
.size syscall,.-syscall
diff --git a/libc/sysdeps/linux/i386/vfork.S b/libc/sysdeps/linux/i386/vfork.S
index 19c1210cb..d382dbac3 100644
--- a/libc/sysdeps/linux/i386/vfork.S
+++ b/libc/sysdeps/linux/i386/vfork.S
@@ -23,12 +23,9 @@ __vfork:
int $0x80
pushl %ecx
cmpl $-4095,%eax
- jae __error
+ jae __syscall_error
ret
-__error:
- jmp __syscall_error
-
.size __vfork,.-__vfork