From 4662f7fe7863b19fcc20ba58c22880f8d6661f3a Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 29 May 2020 14:12:16 +0200 Subject: [PATCH] [OpenACC] Remove 'tgt' reference counting from 'acc_unmap_data' [PR92854] libgomp/ PR libgomp/92854 * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting. --- libgomp/oacc-mem.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libgomp/oacc-mem.c b/libgomp/oacc-mem.c index e2fb651a233..6314f5d8b68 100644 --- a/libgomp/oacc-mem.c +++ b/libgomp/oacc-mem.c @@ -477,13 +477,13 @@ acc_unmap_data (void *h) gomp_mutex_unlock (&acc_dev->lock); gomp_fatal ("cannot unmap target block"); } - else if (tgt->refcount > 1) - tgt->refcount--; - else - { - free (tgt->array); - free (tgt); - } + + /* Above, we've verified that the mapping must have been set up by + 'acc_map_data'. */ + assert (tgt->refcount == 1); + + free (tgt->array); + free (tgt); gomp_mutex_unlock (&acc_dev->lock); -- 2.30.2