Boehm now supports long links.
[mono.git] / mono / metadata / sgen-bridge.h
index 0b92d110f890b0dc239e7decb13d3646eda54ca8..787418b7582de0f1c41031fb8a6fff37e6057365 100644 (file)
 MONO_BEGIN_DECLS
 
 enum {
-       MONO_SGEN_BRIDGE_VERSION = 1
+       SGEN_BRIDGE_VERSION = 3
 };
        
 typedef struct {
+       mono_bool is_alive;     /* to be set by the cross reference callback */
        int num_objs;
        MonoObject *objs [MONO_ZERO_LEN_ARRAY];
 } MonoGCBridgeSCC;
@@ -45,11 +46,14 @@ typedef struct {
 typedef struct {
        int bridge_version;
        mono_bool (*is_bridge_class) (MonoClass *class);
+       mono_bool (*is_bridge_object) (MonoObject *object);
        void (*cross_references) (int num_sccs, MonoGCBridgeSCC **sccs, int num_xrefs, MonoGCBridgeXRef *xrefs);
 } MonoGCBridgeCallbacks;
 
 void mono_gc_register_bridge_callbacks (MonoGCBridgeCallbacks *callbacks);
 
+void mono_gc_wait_for_bridge_processing (void);
+
 MONO_END_DECLS
 
 #endif