]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR libgomp/93065 (libgomp: destructor missing to delete goacc_cleanup_key)
authorJakub Jelinek <jakub@redhat.com>
Wed, 22 Jan 2020 16:42:45 +0000 (17:42 +0100)
committerJakub Jelinek <jakub@redhat.com>
Wed, 22 Jan 2020 19:12:55 +0000 (20:12 +0100)
PR libgomp/93065
* oacc-init.c (goacc_runtime_deinitialize): New function.

libgomp/ChangeLog
libgomp/oacc-init.c

index da2b99fa933bfc6904e728f16e3e6d8b97cfa550..bcc1b0e71317300dcbf96a7bb0953ffb90fcc7c7 100644 (file)
@@ -1,3 +1,11 @@
+2020-01-22  Jakub Jelinek  <jakub@redhat.com>
+
+       Backported from mainline
+       2019-12-31  Ayush Mittal  <ayush.m@samsung.com>
+
+       PR libgomp/93065
+       * oacc-init.c (goacc_runtime_deinitialize): New function.
+
 2019-12-20  Jakub Jelinek  <jakub@redhat.com>
 
        Backported from mainline
index f30cf2f81d8d5943f29a72ed0be9955e3792e245..033fac463c6a6a6cadb6d846e68b874c5307b83a 100644 (file)
@@ -657,6 +657,15 @@ goacc_runtime_initialize (void)
   goacc_host_init ();
 }
 
+static void __attribute__((destructor))
+goacc_runtime_deinitialize (void)
+{
+#if !(defined HAVE_TLS || defined USE_EMUTLS)
+  pthread_key_delete (goacc_tls_key);
+#endif
+  pthread_key_delete (goacc_cleanup_key);
+}
+
 /* Compiler helper functions */
 
 attribute_hidden void