aboutsummaryrefslogtreecommitdiff
path: root/libgomp/task.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2016-04-12 09:05:29 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2016-04-12 09:05:29 +0200
commit21f3a2369bb56501115221846f63f54a035233bc (patch)
tree7d2a75e2cbcd54347feb0c7ddb5e8f6d35f11e2c /libgomp/task.c
parenta3f90b8c03e73c7a2a596f3f4112eca53ea19cdf (diff)
downloadgcc-21f3a2369bb56501115221846f63f54a035233bc.zip
gcc-21f3a2369bb56501115221846f63f54a035233bc.tar.gz
gcc-21f3a2369bb56501115221846f63f54a035233bc.tar.bz2
omp-low.c (lower_omp_target): Use GOMP_MAP_FIRSTPRIVATE_INT regardless whether there are depend clauses or not.
* omp-low.c (lower_omp_target): Use GOMP_MAP_FIRSTPRIVATE_INT regardless whether there are depend clauses or not. * libgomp.h (struct gomp_target_task): Remove firstprivate_copies field. * target.c (gomp_target_fallback_firstprivate, gomp_target_unshare_firstprivate): Removed. (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory before waiting for dependencies. (gomp_target_task_fn): Don't copy firstprivate vars here. * task.c (GOMP_PLUGIN_target_task_completion): Don't free firstprivate_copies here. (gomp_create_target_task): Don't initialize firstprivate_copies field. * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of explicit/implicit firstprivate. From-SVN: r234894
Diffstat (limited to 'libgomp/task.c')
-rw-r--r--libgomp/task.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/libgomp/task.c b/libgomp/task.c
index 38d4e9b..023663f 100644
--- a/libgomp/task.c
+++ b/libgomp/task.c
@@ -582,7 +582,6 @@ GOMP_PLUGIN_target_task_completion (void *data)
return;
}
ttask->state = GOMP_TARGET_TASK_FINISHED;
- free (ttask->firstprivate_copies);
gomp_target_task_completion (team, task);
gomp_mutex_unlock (&team->task_lock);
}
@@ -683,7 +682,6 @@ gomp_create_target_task (struct gomp_device_descr *devicep,
ttask->state = state;
ttask->task = task;
ttask->team = team;
- ttask->firstprivate_copies = NULL;
task->fn = NULL;
task->fn_data = ttask;
task->final_task = 0;