Add support for value types to mono_object_to_string
[mono.git] / mono / metadata / sgen-memory-governor.h
index c321f54d22161505ba6b4fddf2cf0e415b25d247..1dd344524e07a0a339a9b3f71f954b6389ebcd49 100644 (file)
@@ -44,10 +44,19 @@ mword sgen_get_minor_collection_allowance (void) MONO_INTERNAL;
 gboolean sgen_need_major_collection (mword space_needed) MONO_INTERNAL;
 
 
+typedef enum {
+       SGEN_ALLOC_INTERNAL = 0,
+       SGEN_ALLOC_HEAP = 1,
+       SGEN_ALLOC_ACTIVATE = 2
+} SgenAllocFlags;
+
 /* OS memory allocation */
-void* sgen_alloc_os_memory (size_t size, int activate) MONO_INTERNAL;
-void* sgen_alloc_os_memory_aligned (size_t size, mword alignment, gboolean activate) MONO_INTERNAL;
-void sgen_free_os_memory (void *addr, size_t size) MONO_INTERNAL;
+void* sgen_alloc_os_memory (size_t size, SgenAllocFlags flags, const char *assert_description) MONO_INTERNAL;
+void* sgen_alloc_os_memory_aligned (size_t size, mword alignment, SgenAllocFlags flags, const char *assert_description) MONO_INTERNAL;
+void sgen_free_os_memory (void *addr, size_t size, SgenAllocFlags flags) MONO_INTERNAL;
+
+/* Error handling */
+void sgen_assert_memory_alloc (void *ptr, size_t requested_size, const char *assert_description) MONO_INTERNAL;
 
 #endif