alpha: Add lll_futex_timed_wait_bitset
authorRichard Henderson <rth@twiddle.net>
Wed, 2 Jan 2013 17:00:46 +0000 (09:00 -0800)
committerRichard Henderson <rth@twiddle.net>
Wed, 2 Jan 2013 17:00:46 +0000 (09:00 -0800)
ports/ChangeLog.alpha
ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h

index 34cb0a8..9f74a64 100644 (file)
@@ -1,3 +1,8 @@
+2013-01-02  Richard Henderson  <rth@redhat.com>
+
+       * sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h
+       (lll_futex_timed_wait_bitset): New.
+
 2013-01-01  Joseph Myers  <joseph@codesourcery.com>
 
        * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Reformat copyright
index 0ef2e7f..1d4b328 100644 (file)
 #define lll_futex_wait(futexp, val, private) \
   lll_futex_timed_wait (futexp, val, NULL, private)
 
+#define lll_futex_timed_wait_bitset(futexp, val, timespec, clockbit, private) \
+  ({                                                                         \
+    INTERNAL_SYSCALL_DECL (__err);                                           \
+    long int __ret;                                                          \
+    int __op = FUTEX_WAIT_BITSET | clockbit;                                 \
+                                                                             \
+    __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp),                     \
+                             __lll_private_flag (__op, private),             \
+                             (val), (timespec), NULL /* Unused.  */,         \
+                             FUTEX_BITSET_MATCH_ANY);                        \
+    __ret;                                                                   \
+  })
+
 #define lll_futex_timed_wait(futexp, val, timespec, private) \
   ({                                                                         \
     INTERNAL_SYSCALL_DECL (__err);                                           \