X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fsgen%2Fgc-internal-agnostic.h;h=fef115796dd1b0d8f4553879d55c653c44959f54;hb=fe1eeb07241018430cc63097f1dd6b9c69f40cf2;hp=9fe2f3ceeb4a62b9fc16be861e6d28179fcaac1c;hpb=d1c2c7172df75be26e219e018b22de6104b77079;p=mono.git diff --git a/mono/sgen/gc-internal-agnostic.h b/mono/sgen/gc-internal-agnostic.h index 9fe2f3ceeb4..fef115796dd 100644 --- a/mono/sgen/gc-internal-agnostic.h +++ b/mono/sgen/gc-internal-agnostic.h @@ -1,5 +1,6 @@ -/* - * gc-internal-agnostic.h: Mono-agnostic GC interface. +/** + * \file + * Mono-agnostic GC interface. * * Copyright (C) 2015 Xamarin Inc * @@ -62,11 +63,11 @@ typedef enum { #define MONO_GC_HANDLE(slot, type) (((slot) << MONO_GC_HANDLE_TYPE_SHIFT) | (((type) & MONO_GC_HANDLE_TYPE_MASK) + 1)) typedef struct { - guint minor_gc_count; - guint major_gc_count; - guint64 minor_gc_time; - guint64 major_gc_time; - guint64 major_gc_time_concurrent; + gint32 minor_gc_count; + gint32 major_gc_count; + gint64 minor_gc_time; + gint64 major_gc_time; + gint64 major_gc_time_concurrent; } GCStats; extern GCStats gc_stats; @@ -79,12 +80,6 @@ typedef void* MonoGCDescriptor; #define MONO_GC_DESCRIPTOR_NULL NULL #endif -/* - * Try to register a foreign thread with the GC, if we fail or the backend - * can't cope with this concept - we return FALSE. - */ -extern gboolean mono_gc_register_thread (void *baseptr); - gboolean mono_gc_parse_environment_string_extract_number (const char *str, size_t *out); MonoGCDescriptor mono_gc_make_descr_for_object (gsize *bitmap, int numbits, size_t obj_size); @@ -93,6 +88,9 @@ MonoGCDescriptor mono_gc_make_descr_for_array (int vector, gsize *elem_bitmap, i /* simple interface for data structures needed in the runtime */ MonoGCDescriptor mono_gc_make_descr_from_bitmap (gsize *bitmap, int numbits); +/* Return a root descriptor for a vector with repeating refs bitmap */ +MonoGCDescriptor mono_gc_make_vector_descr (void); + /* Return a root descriptor for a root with all refs */ MonoGCDescriptor mono_gc_make_root_descr_all_refs (int numbits); @@ -110,4 +108,9 @@ void mono_gc_memmove_aligned (void *dest, const void *src, size_t size); FILE *mono_gc_get_logfile (void); +/* equivalent to options set via MONO_GC_PARAMS */ +void mono_gc_params_set (const char* options); +/* equivalent to options set via MONO_GC_DEBUG */ +void mono_gc_debug_set (const char* options); + #endif