b40c885f18
* ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence. * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence. * config/linux/mutex.h: Use atomic rather than sync builtins. * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state. * config/linux/omp-lock.h: Comment fix. * config/linux/arm/mutex.h: Delete. * config/linux/powerpc/mutex.h: Delete. * config/linux/ia64/mutex.h: Delete. * config/linux/mips/mutex.h: Delete. From-SVN: r181832
13 lines
552 B
C
13 lines
552 B
C
/* This header is used during the build process to find the size and
|
|
alignment of the public OpenMP locks, so that we can export data
|
|
structures without polluting the namespace.
|
|
|
|
When using the Linux futex primitive, non-recursive locks require
|
|
one int. Recursive locks require we identify the owning task
|
|
and so require in addition one int and a pointer. */
|
|
|
|
typedef int omp_lock_t;
|
|
typedef struct { int lock, count; void *owner; } omp_nest_lock_t;
|
|
typedef int omp_lock_25_t;
|
|
typedef struct { int owner, count; } omp_nest_lock_25_t;
|