diff options
author | amodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-11-30 04:44:13 +0000 |
---|---|---|
committer | amodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-11-30 04:44:13 +0000 |
commit | 7262c91fbd64f7e78cfeccec212f61a55821f68c (patch) | |
tree | e4a5194d50d93bce1bed4e9d8b3ca217c3d12b9e /libgomp/task.c | |
parent | a28ddb67e7d93f5ba095c28af9a14b991b2cbcfd (diff) | |
download | gcc-7262c91fbd64f7e78cfeccec212f61a55821f68c.tar.gz |
PR libgomp/51298
* config/linux/bar.h: Use atomic rather than sync builtins.
* config/linux/bar.c: Likewise. Add missing acquire
synchronisation on generation field.
* task.c (gomp_barrier_handle_tasks): Regain lock so as to not
double unlock.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181833 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgomp/task.c')
-rw-r--r-- | libgomp/task.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libgomp/task.c b/libgomp/task.c index b93f77a3816..d3d72663f35 100644 --- a/libgomp/task.c +++ b/libgomp/task.c @@ -273,6 +273,7 @@ gomp_barrier_handle_tasks (gomp_barrier_state_t state) gomp_team_barrier_done (&team->barrier, state); gomp_mutex_unlock (&team->task_lock); gomp_team_barrier_wake (&team->barrier, 0); + gomp_mutex_lock (&team->task_lock); } } } |