summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2012-11-05 22:30:37 +0000
committerJoseph Myers <joseph@codesourcery.com>2012-11-05 22:30:37 +0000
commit316a1b67e1dcfae719af7292d86dc4ebfe865a9f (patch)
tree408f363b6cd632626f4bf97fe3b7a5527e4af15d
parent8f861542dd0603bef99e126e509ece89514c1eeb (diff)
downloadglibc-316a1b67e1dcfae719af7292d86dc4ebfe865a9f.tar.gz
Define lll_futex_timed_wait_bitset for ARM.
-rw-r--r--ports/ChangeLog.arm3
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h14
2 files changed, 16 insertions, 1 deletions
diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm
index c0e9ac28f5..c5e5f367fe 100644
--- a/ports/ChangeLog.arm
+++ b/ports/ChangeLog.arm
@@ -1,5 +1,8 @@
2012-11-05 Joseph Myers <joseph@codesourcery.com>
+ * sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h
+ (lll_futex_timed_wait_bitset): New macro.
+
[BZ #14805]
* sysdeps/arm/bits/fenv.h (FE_DFL_ENV): Use cast to const fenv_t *.
diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h
index 5811361e3a..9d12182737 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -86,6 +86,18 @@
__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, (futexp), \
+ __lll_private_flag (__op, private), \
+ (val), (timespec), NULL /* Unused. */, \
+ FUTEX_BITSET_MATCH_ANY); \
+ __ret; \
+ })
+
#define lll_futex_wake(futexp, nr, private) \
({ \
INTERNAL_SYSCALL_DECL (__err); \