OSDN Git Service
(root)
/
pf3gnuchains
/
gcc-fork.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
libgomp: Fix default futex vs errno
[pf3gnuchains/gcc-fork.git]
/
libgomp
/
config
/
linux
/
futex.h
diff --git
a/libgomp/config/linux/futex.h
b/libgomp/config/linux/futex.h
index
bab088a
..
b1ce2af
100644
(file)
--- a/
libgomp/config/linux/futex.h
+++ b/
libgomp/config/linux/futex.h
@@
-41,8
+41,8
@@
static inline void
futex_wait (int *addr, int val)
{
static inline void
futex_wait (int *addr, int val)
{
-
long
err = syscall (SYS_futex, addr, gomp_futex_wait, val, NULL);
- if (__builtin_expect (err
== -
ENOSYS, 0))
+
int
err = syscall (SYS_futex, addr, gomp_futex_wait, val, NULL);
+ if (__builtin_expect (err
< 0 && errno ==
ENOSYS, 0))
{
gomp_futex_wait &= ~FUTEX_PRIVATE_FLAG;
gomp_futex_wake &= ~FUTEX_PRIVATE_FLAG;
{
gomp_futex_wait &= ~FUTEX_PRIVATE_FLAG;
gomp_futex_wake &= ~FUTEX_PRIVATE_FLAG;
@@
-53,8
+53,8
@@
futex_wait (int *addr, int val)
static inline void
futex_wake (int *addr, int count)
{
static inline void
futex_wake (int *addr, int count)
{
-
long
err = syscall (SYS_futex, addr, gomp_futex_wake, count);
- if (__builtin_expect (err
== -
ENOSYS, 0))
+
int
err = syscall (SYS_futex, addr, gomp_futex_wake, count);
+ if (__builtin_expect (err
< 0 && errno ==
ENOSYS, 0))
{
gomp_futex_wait &= ~FUTEX_PRIVATE_FLAG;
gomp_futex_wake &= ~FUTEX_PRIVATE_FLAG;
{
gomp_futex_wait &= ~FUTEX_PRIVATE_FLAG;
gomp_futex_wake &= ~FUTEX_PRIVATE_FLAG;
@@
-67,9
+67,3
@@
cpu_relax (void)
{
__asm volatile ("" : : : "memory");
}
{
__asm volatile ("" : : : "memory");
}
-
-static inline void
-atomic_write_barrier (void)
-{
- __sync_synchronize ();
-}