]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
authorRichard Henderson <rth@redhat.com>
Tue, 13 Mar 2007 16:05:44 +0000 (16:05 +0000)
committerRichard Henderson <rth@redhat.com>
Tue, 13 Mar 2007 16:05:44 +0000 (16:05 +0000)
__sigsuspend_nocancel.
2007-03-13  Richard Henderson  <rth@redhat.com>

* sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
__sigsuspend_nocancel.

ChangeLog
sysdeps/unix/sysv/linux/alpha/sigsuspend.S

index 8d27b4ca1737e7f9da7831bba49ce9e9c548ce50..ed0555345e113414ccb1df31e4304f3d5da558e1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-03-13  Richard Henderson  <rth@redhat.com>
+
+       * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
+       __sigsuspend_nocancel.
+
 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
index 48c3f271c7bca3841f0151dc0fbde0a4477fe9ba..6863c07ec1448ca418289376cc33fe69cc111bac 100644 (file)
 /* sigsuspend is a special syscall since it needs to dereference the
    sigset.  This will have to change when we have more than 64 signals.  */
 
+#ifndef NO_CANCELLATION
+#include <sysdep.h>
+
+#undef PSEUDO_PREPARE_ARGS
+#define PSEUDO_PREPARE_ARGS    ldq     a0, 0(a0);
+
+PSEUDO(__sigsuspend_nocancel, sigsuspend, 1)
+       ret
+/* Use END, not PSEUDO_END, so that we don't issue two $syscall_error
+   symbols; we'll jump into __sigsuspend for the error case.  */
+END(__sigsuspend_nocancel)
+#endif /* NO_CANCELLATION */
+
 #include <sysdep-cancel.h>
 
 #undef PSEUDO_PREPARE_ARGS