#include "metadata/sgen-gc.h"
#include "metadata/sgen-pinning.h"
+#include "metadata/sgen-hash-table.h"
typedef struct _PinStatAddress PinStatAddress;
return;
pin_stats_tree_free (node->left);
pin_stats_tree_free (node->right);
- mono_sgen_free_internal_dynamic (node, sizeof (PinStatAddress), INTERNAL_MEM_STATISTICS);
+ sgen_free_internal_dynamic (node, sizeof (PinStatAddress), INTERNAL_MEM_STATISTICS);
}
void
-mono_sgen_pin_stats_reset (void)
+sgen_pin_stats_reset (void)
{
int i;
pin_stats_tree_free (pin_stat_addresses);
pinned_byte_counts [i] = 0;
while (pinned_objects) {
ObjectList *next = pinned_objects->next;
- mono_sgen_free_internal_dynamic (pinned_objects, sizeof (ObjectList), INTERNAL_MEM_STATISTICS);
+ sgen_free_internal_dynamic (pinned_objects, sizeof (ObjectList), INTERNAL_MEM_STATISTICS);
pinned_objects = next;
}
}
void
-mono_sgen_pin_stats_register_address (char *addr, int pin_type)
+sgen_pin_stats_register_address (char *addr, int pin_type)
{
PinStatAddress **node_ptr = &pin_stat_addresses;
PinStatAddress *node;
node_ptr = &node->right;
}
- node = mono_sgen_alloc_internal_dynamic (sizeof (PinStatAddress), INTERNAL_MEM_STATISTICS);
+ node = sgen_alloc_internal_dynamic (sizeof (PinStatAddress), INTERNAL_MEM_STATISTICS, TRUE);
node->addr = addr;
node->pin_types = pin_type_bit;
node->left = node->right = NULL;
lookup_class_entry (SgenHashTable *hash_table, MonoClass *class, gpointer empty_entry)
{
char *name = g_strdup_printf ("%s.%s", class->name_space, class->name);
- gpointer entry = mono_sgen_hash_table_lookup (hash_table, name);
+ gpointer entry = sgen_hash_table_lookup (hash_table, name);
if (entry) {
g_free (name);
} else {
- mono_sgen_hash_table_replace (hash_table, name, empty_entry);
- entry = mono_sgen_hash_table_lookup (hash_table, name);
+ sgen_hash_table_replace (hash_table, name, empty_entry, NULL);
+ entry = sgen_hash_table_lookup (hash_table, name);
}
return entry;
}
void
-mono_sgen_pin_stats_register_object (char *obj, size_t size)
+sgen_pin_stats_register_object (char *obj, size_t size)
{
int pin_types = 0;
ObjectList *list;
- list = mono_sgen_alloc_internal_dynamic (sizeof (ObjectList), INTERNAL_MEM_STATISTICS);
+ list = sgen_alloc_internal_dynamic (sizeof (ObjectList), INTERNAL_MEM_STATISTICS, TRUE);
pin_stats_count_object_from_tree (obj, size, pin_stat_addresses, &pin_types);
list->obj = (MonoObject*)obj;
list->next = pinned_objects;
}
void
-mono_sgen_pin_stats_register_global_remset (char *obj)
+sgen_pin_stats_register_global_remset (char *obj)
{
GlobalRemsetClassEntry empty_entry;
GlobalRemsetClassEntry *entry;
}
void
-mono_sgen_pin_stats_print_class_stats (void)
+sgen_pin_stats_print_class_stats (void)
{
char *name;
PinnedClassEntry *pinned_entry;
}
size_t
-mono_sgen_pin_stats_get_pinned_byte_count (int pin_type)
+sgen_pin_stats_get_pinned_byte_count (int pin_type)
{
return pinned_byte_counts [pin_type];
}
ObjectList*
-mono_sgen_pin_stats_get_object_list (void)
+sgen_pin_stats_get_object_list (void)
{
return pinned_objects;
}