I provided dummy functions for the libitm weak refs in the first
version of this.
(a) this is unnecessary (except in the corner-case of testing lto)
because there is never a need to use the crts unless libitm is linked.
(b) it no longer works across all *x86*-darwin* because weak linkage
behavior differs.
the solution is to require the library to be present (no problem,
since the crts are only fired up for -fgnu-tm) and to remove the dummy
funcs from the crts,
OK for trunk?
Iain
libgcc:
* config/darwin-crt-tm.c: Remove dummy _ITM_ functions.
Index: libgcc/config/darwin-crt-tm.c
===================================================================
--- libgcc/config/darwin-crt-tm.c (revision 181653)
+++ libgcc/config/darwin-crt-tm.c (working copy)
@@ -72,12 +72,4 @@ void __doTMdeRegistrations (void)
_ITM_deregisterTMCloneTable (tm_clone_table_sect_data);
}
-
-/* Provide dumy funcs for the weak ones - needed on most Darwin versions
- for now. */
-
-void _ITM_registerTMCloneTable (void *n ATTRIBUTE_UNUSED, size_t s
ATTRIBUTE_UNUSED)
-{}
-void _ITM_deregisterTMCloneTable (void *n ATTRIBUTE_UNUSED)
-{}
#endif