[msvc] Fixed missing semi-colon.
[mono.git] / mono / metadata / sgen-cardtable.h
index af12d33be88047dcda3958c6819ac6c7dcdd824b..bc9ea77a5e320885d00440949a7c06028d6b2307 100644 (file)
 #ifndef __MONO_SGEN_CARD_TABLE_INLINES_H__
 #define __MONO_SGEN_CARD_TABLE_INLINES_H__
 
-#define SGEN_HAVE_CARDTABLE    1
-
-#ifdef SGEN_HAVE_CARDTABLE
-
 void sgen_card_table_reset_region (mword start, mword end) MONO_INTERNAL;
 void* sgen_card_table_align_pointer (void *ptr) MONO_INTERNAL;
 void sgen_card_table_mark_range (mword address, mword size) MONO_INTERNAL;
-void sgen_cardtable_scan_object (char *obj, mword obj_size, guint8 *cards, SgenGrayQueue *queue) MONO_INTERNAL;
+void sgen_cardtable_scan_object (char *obj, mword obj_size, guint8 *cards,
+               gboolean mod_union, SgenGrayQueue *queue) MONO_INTERNAL;
 
 gboolean sgen_card_table_get_card_data (guint8 *dest, mword address, mword cards) MONO_INTERNAL;
-void sgen_scan_from_card_tables (void *start_nursery, void *end_nursery, SgenGrayQueue *queue) MONO_INTERNAL;
-void sgen_card_tables_collect_stats (gboolean begin) MONO_INTERNAL;
-void sgen_card_table_clear (void) MONO_INTERNAL;
-void sgen_card_table_init (void) MONO_INTERNAL;
-gboolean sgen_ptr_in_nursery (void *p) MONO_INTERNAL;
 
+guint8* sgen_card_table_update_mod_union_from_cards (guint8 *dest, guint8 *start_card, size_t num_cards) MONO_INTERNAL;
+guint8* sgen_card_table_update_mod_union (guint8 *dest, char *obj, mword obj_size, size_t *out_num_cards) MONO_INTERNAL;
+
+void sgen_card_table_init (SgenRemeberedSet *remset) MONO_INTERNAL;
 
 /*How many bytes a single card covers*/
 #define CARD_BITS 9
@@ -71,7 +67,7 @@ sgen_card_table_get_card_address (mword address)
 
 extern guint8 *sgen_shadow_cardtable MONO_INTERNAL;
 
-static inline  guint8*
+static inline guint8*
 sgen_card_table_get_shadow_card_address (mword address)
 {
        return sgen_shadow_cardtable + ((address >> CARD_BITS) & CARD_MASK);
@@ -129,37 +125,4 @@ sgen_card_table_mark_address (mword address)
        *sgen_card_table_get_card_address (address) = 1;
 }
 
-
-#elif
-
-#else
-
-void
-sgen_card_table_mark_address (mword address)
-{
-       g_assert_not_reached ();
-}
-
-void
-sgen_card_table_mark_range (mword address, mword size)
-{
-       g_assert_not_reached ();
-}
-
-#define sgen_card_table_address_is_marked(p)   FALSE
-#define sgen_scan_from_card_tables(start,end,queue)
-#define sgen_card_table_clear()
-#define sgen_card_table_init()
-#define sgen_card_tables_collect_stats(begin)
-
-guint8*
-mono_gc_get_card_table (int *shift_bits, gpointer *mask)
-{
-       return NULL;
-}
-
-#endif
-
-
-
 #endif