about summary refs log tree commit diff
path: root/ports
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2012-11-05 22:30:54 +0000
committerJoseph Myers <joseph@codesourcery.com>2012-11-05 22:30:54 +0000
commitd7fcee3a58bd62c3b1b004f303ec345c11e44fa1 (patch)
tree0cd8576deb17c9e64d67afa742ba3a5b2a3d2373 /ports
parent316a1b67e1dcfae719af7292d86dc4ebfe865a9f (diff)
downloadglibc-d7fcee3a58bd62c3b1b004f303ec345c11e44fa1.tar.gz
glibc-d7fcee3a58bd62c3b1b004f303ec345c11e44fa1.tar.xz
glibc-d7fcee3a58bd62c3b1b004f303ec345c11e44fa1.zip
Define lll_futex_timed_wait_bitset for MIPS.
Diffstat (limited to 'ports')
-rw-r--r--ports/ChangeLog.mips5
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h12
2 files changed, 17 insertions, 0 deletions
diff --git a/ports/ChangeLog.mips b/ports/ChangeLog.mips
index 3380b125b8..8dc4893b03 100644
--- a/ports/ChangeLog.mips
+++ b/ports/ChangeLog.mips
@@ -1,3 +1,8 @@
+2012-11-05  Joseph Myers  <joseph@codesourcery.com>
+
+	* sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h
+	(lll_futex_timed_wait_bitset): New macro.
+
 2012-11-04  Thomas Schwinge  <thomas@codesourcery.com>
 
 	* sysdeps/unix/sysv/linux/mips/mips32/sync_file_range.c: Don't
diff --git a/ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h
index 9c1701167d..9c3d3d16de 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h
@@ -86,6 +86,18 @@
     INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret;		      \
   })
 
+#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, (long) (futexp),		\
+			      __lll_private_flag (__op, private),	\
+			      (val), (timespec), NULL /* Unused.  */,	\
+			      FUTEX_BITSET_MATCH_ANY);			\
+    INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret;		\
+  })
+
 #define lll_futex_wake(futexp, nr, private) \
   ({									      \
     INTERNAL_SYSCALL_DECL (__err);					      \