summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordannysmith <dannysmith@138bc75d-0d04-0410-961f-82ee72b054a4>2008-03-04 06:33:39 +0000
committerdannysmith <dannysmith@138bc75d-0d04-0410-961f-82ee72b054a4>2008-03-04 06:33:39 +0000
commitabefb712432a864f08115f00a651ccd708d70ebd (patch)
tree233210f7b9192cb85c15b6535f8863f3b990be6b
parent06a40dd32e2c9a73207815cf50351ffbf242cc04 (diff)
downloadppe42-gcc-abefb712432a864f08115f00a651ccd708d70ebd.tar.gz
ppe42-gcc-abefb712432a864f08115f00a651ccd708d70ebd.zip
* gthr-win32.h [__GTHREAD_HIDE_WIN32API]
(__gthr_win32_mutex_destroy): Declare. [__GTHREAD_HIDE_WIN32API] (__gthread_mutex_destroy): Use __gthr_win32_mutex_destroy * config/i386/gthr-win32.c (__gthr_win32_mutex_destroy): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132853 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/i386/gthr-win32.c6
-rw-r--r--gcc/gthr-win32.h7
3 files changed, 21 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1a6f22a1508..e630fafed7d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2008-03-04 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * gthr-win32.h [__GTHREAD_HIDE_WIN32API]
+ (__gthr_win32_mutex_destroy): Declare.
+ [__GTHREAD_HIDE_WIN32API] (__gthread_mutex_destroy): Use
+ __gthr_win32_mutex_destroy.
+ * config/i386/gthr-win32.c (__gthr_win32_mutex_destroy): Define.
+
2008-03-03 Jan Hubicka <jh@suse.cz>
PR c++/35262
diff --git a/gcc/config/i386/gthr-win32.c b/gcc/config/i386/gthr-win32.c
index c87a771ed8f..3810fc0f26c 100644
--- a/gcc/config/i386/gthr-win32.c
+++ b/gcc/config/i386/gthr-win32.c
@@ -151,6 +151,12 @@ __gthr_win32_mutex_init_function (__gthread_mutex_t *mutex)
mutex->sema = CreateSemaphore (NULL, 0, 65535, NULL);
}
+void
+__gthr_win32_mutex_destroy (__gthread_mutex_t *mutex)
+{
+ CloseHandle ((HANDLE) mutex->sema);
+}
+
int
__gthr_win32_mutex_lock (__gthread_mutex_t *mutex)
{
diff --git a/gcc/gthr-win32.h b/gcc/gthr-win32.h
index b75c8654a08..adf6efb81a5 100644
--- a/gcc/gthr-win32.h
+++ b/gcc/gthr-win32.h
@@ -423,6 +423,7 @@ extern int __gthr_win32_recursive_mutex_lock (__gthread_recursive_mutex_t *);
extern int
__gthr_win32_recursive_mutex_trylock (__gthread_recursive_mutex_t *);
extern int __gthr_win32_recursive_mutex_unlock (__gthread_recursive_mutex_t *);
+extern void __gthr_win32_mutex_destroy (__gthread_mutex_t *);
static inline int
__gthread_once (__gthread_once_t *once, void (*func) (void))
@@ -463,6 +464,12 @@ __gthread_mutex_init_function (__gthread_mutex_t *mutex)
__gthr_win32_mutex_init_function (mutex);
}
+static inline void
+__gthread_mutex_destroy (__gthread_mutex_t *mutex)
+{
+ __gthr_win32_mutex_destroy (mutex);
+}
+
static inline int
__gthread_mutex_lock (__gthread_mutex_t *mutex)
{
OpenPOWER on IntegriCloud