Remove dead weak link API.
authorJon Purdy <evincarofautumn@gmail.com>
Tue, 8 Sep 2015 22:51:27 +0000 (15:51 -0700)
committerJon Purdy <evincarofautumn@gmail.com>
Tue, 8 Sep 2015 22:51:27 +0000 (15:51 -0700)
mono/metadata/gc-internal.h
mono/metadata/sgen-mono.c

index 3b599f1b57e9d30fa8a0bc5e7c5e95670af0a615..11c94b40f4e18e0387da1c170acb47d99e93cd45 100644 (file)
@@ -106,11 +106,6 @@ gpointer mono_gc_out_of_memory (size_t size);
 void     mono_gc_enable_events (void);
 void     mono_gc_enable_alloc_events (void);
 
-/* disappearing link functionality */
-void mono_gc_weak_link_register (volatile gpointer *link_addr, MonoObject *obj, gboolean track);
-void mono_gc_weak_link_unregister (volatile gpointer *link_addr, gboolean track);
-void mono_gc_ensure_weak_links_accessible (void);
-
 void mono_gchandle_set_target (guint32 gchandle, MonoObject *obj);
 
 /*Ephemeron functionality. Sgen only*/
index 1b9b7ca17bad409ba948b513a25d8a6ab1376765..fb0e6592a118447dbde0c9576bd855b8540b3549 100644 (file)
@@ -2565,35 +2565,6 @@ mono_gc_get_los_limit (void)
        return SGEN_MAX_SMALL_OBJ_SIZE;
 }
 
-void
-mono_gc_weak_link_register (volatile gpointer *link_addr, MonoObject *obj, gboolean track)
-{
-       binary_protocol_dislink_add ((gpointer)link_addr, obj, track);
-}
-
-void
-mono_gc_weak_link_unregister (volatile gpointer *link_addr, gboolean track)
-{
-       binary_protocol_dislink_remove ((gpointer)link_addr, track);
-}
-
-void
-mono_gc_ensure_weak_links_accessible (void)
-{
-       /*
-        * During the second bridge processing step the world is
-        * running again.  That step processes all weak links once
-        * more to null those that refer to dead objects.  Before that
-        * is completed, those links must not be followed, so we
-        * conservatively wait for bridge processing when any weak
-        * link is dereferenced.
-        */
-       /* FIXME: A GC can occur after this check fails, in which case we
-        * should wait for bridge processing but would fail to do so.
-        */
-       mono_gc_wait_for_bridge_processing ();
-}
-
 gpointer
 sgen_client_default_metadata (void)
 {