summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgcc/ChangeLog5
-rw-r--r--libgcc/unwind-dw2-fde.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 61b2c6766c2..de9eebe9671 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,5 +1,10 @@
2012-03-13 Richard Guenther <rguenther@suse.de>
+ PR target/52569
+ * unwind-dw2-fde.c: Make avoid-include-gthr.h hacks work again.
+
+2012-03-13 Richard Guenther <rguenther@suse.de>
+
* gthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Fix definition.
2012-03-13 Richard Guenther <rguenther@suse.de>
diff --git a/libgcc/unwind-dw2-fde.c b/libgcc/unwind-dw2-fde.c
index 54eaebac27e..b99a432edb9 100644
--- a/libgcc/unwind-dw2-fde.c
+++ b/libgcc/unwind-dw2-fde.c
@@ -49,6 +49,7 @@ static struct object *seen_objects;
static __gthread_mutex_t object_mutex = __GTHREAD_MUTEX_INIT;
#define init_object_mutex_once()
#else
+#ifdef __GTHREAD_MUTEX_INIT_FUNCTION
static __gthread_mutex_t object_mutex;
static void
@@ -63,6 +64,12 @@ init_object_mutex_once (void)
static __gthread_once_t once = __GTHREAD_ONCE_INIT;
__gthread_once (&once, init_object_mutex);
}
+#else
+/* ??? Several targets include this file with stubbing parts of gthr.h
+ and expect no locking to be done. */
+#define init_object_mutex_once()
+static __gthread_mutex_t object_mutex;
+#endif
#endif
/* Called from crtbegin.o to register the unwind info for an object. */