Fix sigsuspend to use rt_sigsuspend on all platforms.
Change-Id: I981c1a66d35480d4457a0a08a1b042dac94daa5b
diff --git a/libc/arch-x86/syscalls.mk b/libc/arch-x86/syscalls.mk
index a704905..10970a6 100644
--- a/libc/arch-x86/syscalls.mk
+++ b/libc/arch-x86/syscalls.mk
@@ -156,11 +156,11 @@
syscall_src += arch-x86/syscalls/timerfd_settime.S
syscall_src += arch-x86/syscalls/timerfd_gettime.S
syscall_src += arch-x86/syscalls/sigaction.S
-syscall_src += arch-x86/syscalls/__sigsuspend.S
+syscall_src += arch-x86/syscalls/sigpending.S
syscall_src += arch-x86/syscalls/__rt_sigaction.S
syscall_src += arch-x86/syscalls/__rt_sigprocmask.S
+syscall_src += arch-x86/syscalls/__rt_sigsuspend.S
syscall_src += arch-x86/syscalls/__rt_sigtimedwait.S
-syscall_src += arch-x86/syscalls/sigpending.S
syscall_src += arch-x86/syscalls/signalfd4.S
syscall_src += arch-x86/syscalls/socket.S
syscall_src += arch-x86/syscalls/bind.S
diff --git a/libc/arch-x86/syscalls/__sigsuspend.S b/libc/arch-x86/syscalls/__rt_sigsuspend.S
similarity index 65%
rename from libc/arch-x86/syscalls/__sigsuspend.S
rename to libc/arch-x86/syscalls/__rt_sigsuspend.S
index 6a5c6aa..32b2134 100644
--- a/libc/arch-x86/syscalls/__sigsuspend.S
+++ b/libc/arch-x86/syscalls/__rt_sigsuspend.S
@@ -3,14 +3,12 @@
#include <linux/err.h>
#include <machine/asm.h>
-ENTRY(__sigsuspend)
+ENTRY(__rt_sigsuspend)
pushl %ebx
pushl %ecx
- pushl %edx
- mov 16(%esp), %ebx
- mov 20(%esp), %ecx
- mov 24(%esp), %edx
- movl $__NR_sigsuspend, %eax
+ mov 12(%esp), %ebx
+ mov 16(%esp), %ecx
+ movl $__NR_rt_sigsuspend, %eax
int $0x80
cmpl $-MAX_ERRNO, %eax
jb 1f
@@ -20,8 +18,7 @@
addl $4, %esp
orl $-1, %eax
1:
- popl %edx
popl %ecx
popl %ebx
ret
-END(__sigsuspend)
+END(__rt_sigsuspend)