@@ -23,21 +23,21 @@ typedef void (*ProcessOffsetEdgeFn)(closure_pointer closure, void* slot, int off
23
23
/**
24
24
* Allocation
25
25
*/
26
- extern MMTk_Mutator bind_mutator (void * tls , int tid );
27
- extern void add_mutator_ref (void * mutator_ref );
28
- extern void destroy_mutator (MMTk_Mutator mutator );
26
+ extern MMTk_Mutator mmtk_bind_mutator (void * tls , int tid );
27
+ extern void mmtk_add_mutator_ref (void * mutator_ref );
28
+ extern void mmtk_destroy_mutator (MMTk_Mutator mutator );
29
29
30
- extern void * alloc (MMTk_Mutator mutator , size_t size ,
30
+ extern void * mmtk_alloc (MMTk_Mutator mutator , size_t size ,
31
31
size_t align , size_t offset , int allocator );
32
32
33
- extern void * alloc_large (MMTk_Mutator mutator , size_t size ,
33
+ extern void * mmtk_alloc_large (MMTk_Mutator mutator , size_t size ,
34
34
size_t align , size_t offset , int allocator );
35
35
36
- extern void post_alloc (MMTk_Mutator mutator , void * refer ,
36
+ extern void mmtk_post_alloc (MMTk_Mutator mutator , void * refer ,
37
37
size_t bytes , int allocator );
38
38
39
- extern void add_object_to_mmtk_roots (void * obj );
40
- extern void process_root_edges (closure_pointer c , void * slot );
39
+ extern void mmtk_add_object_to_mmtk_roots (void * obj );
40
+ extern void mmtk_process_root_edges (closure_pointer c , void * slot );
41
41
42
42
extern void * mmtk_counted_malloc (size_t size );
43
43
extern void * mmtk_malloc (size_t size );
@@ -50,13 +50,13 @@ extern void mmtk_free(void* addr);
50
50
extern void * mmtk_malloc_aligned (size_t size , size_t alignment );
51
51
extern void mmtk_free_aligned (void * addr );
52
52
53
- extern bool is_live_object (void * ref );
54
- extern bool is_mapped_object (void * ref );
55
- extern bool is_mapped_address (void * addr );
56
- extern void modify_check (void * ref );
57
- extern int object_is_managed_by_mmtk (void * addr );
58
- extern void runtime_panic (void );
59
- extern void unreachable (void );
53
+ extern bool mmtk_is_live_object (void * ref );
54
+ extern bool mmtk_is_mapped_object (void * ref );
55
+ extern bool mmtk_is_mapped_address (void * addr );
56
+ extern void mmtk_modify_check (void * ref );
57
+ extern int mmtk_object_is_managed_by_mmtk (void * addr );
58
+ extern void mmtk_runtime_panic (void );
59
+ extern void mmtk_unreachable (void );
60
60
61
61
extern void mmtk_set_vm_space (void * addr , size_t size );
62
62
extern void mmtk_immortal_region_post_alloc (void * addr , size_t size );
@@ -66,26 +66,9 @@ extern void mmtk_memory_region_copy(MMTk_Mutator mutator, void* src_obj, void* s
66
66
extern void mmtk_object_reference_write_post (MMTk_Mutator mutator , const void * src , const void * target );
67
67
extern void mmtk_object_reference_write_slow (MMTk_Mutator mutator , const void * src , const void * target );
68
68
extern const uint8_t MMTK_NEEDS_WRITE_BARRIER ;
69
- extern const uint8_t NO_BARRIER ;
70
- extern const uint8_t OBJECT_BARRIER ;
69
+ extern const uint8_t MMTK_NO_BARRIER ;
70
+ extern const uint8_t MMTK_OBJECT_BARRIER ;
71
71
extern const void * MMTK_SIDE_LOG_BIT_BASE_ADDRESS ;
72
- /**
73
- * Tracing
74
- */
75
- extern void report_delayed_root_edge (MMTk_TraceLocal trace_local ,
76
- void * addr );
77
-
78
- extern bool will_not_move_in_current_collection (MMTk_TraceLocal trace_local ,
79
- void * obj );
80
-
81
- extern void process_interior_edge (MMTk_TraceLocal trace_local , void * target ,
82
- void * slot , bool root );
83
-
84
- extern void * trace_get_forwarded_referent (MMTk_TraceLocal trace_local , void * obj );
85
-
86
- extern void * trace_get_forwarded_reference (MMTk_TraceLocal trace_local , void * obj );
87
-
88
- extern void * trace_retain_referent (MMTk_TraceLocal trace_local , void * obj );
89
72
90
73
/**
91
74
* Julia-specific
@@ -122,30 +105,30 @@ typedef struct {
122
105
/**
123
106
* Misc
124
107
*/
125
- extern void gc_init ( long long min_heap_size , long long max_heap_size , Julia_Upcalls * calls , long header_size );
126
- extern bool will_never_move (void * object );
127
- extern bool process (char * name , char * value );
128
- extern void scan_region (void );
129
- extern void handle_user_collection_request (void * tls , uint8_t collection );
130
- extern void initialize_collection (void * tls );
131
- extern void enable_collection (void );
132
- extern void disable_collection (void );
133
- extern void start_control_collector (void * tls );
134
- extern void start_worker (void * tls , void * worker , void * mmtk );
135
- extern void process_julia_obj (void * addr );
136
- extern void register_finalizer (void * obj , void * function , bool is_ptr );
137
- extern void run_finalizers_for_obj (void * obj );
108
+ extern void mmtk_gc_init ( uintptr_t min_heap_size , uintptr_t max_heap_size , uintptr_t n_gcthreads , Julia_Upcalls * calls , uintptr_t header_size );
109
+ extern bool mmtk_will_never_move (void * object );
110
+ extern bool mmtk_process (char * name , char * value );
111
+ extern void mmtk_scan_region (void );
112
+ extern void mmtk_handle_user_collection_request (void * tls , uint8_t collection );
113
+ extern void mmtk_initialize_collection (void * tls );
114
+ extern void mmtk_enable_collection (void );
115
+ extern void mmtk_disable_collection (void );
116
+ extern void mmtk_start_control_collector (void * tls );
117
+ extern void mmtk_start_worker (void * tls , void * worker , void * mmtk );
118
+ extern void mmtk_process_julia_obj (void * addr );
119
+ extern void mmtk_register_finalizer (void * obj , void * function , bool is_ptr );
120
+ extern void mmtk_run_finalizers_for_obj (void * obj );
138
121
extern void mmtk_run_finalizers (bool at_exit );
139
122
extern void mmtk_gc_poll (void * tls );
140
123
141
124
/**
142
125
* VM Accounting
143
126
*/
144
- extern size_t free_bytes (void );
145
- extern size_t total_bytes (void );
146
- extern size_t used_bytes (void );
147
- extern void * starting_heap_address (void );
148
- extern void * last_heap_address (void );
127
+ extern size_t mmtk_free_bytes (void );
128
+ extern size_t mmtk_total_bytes (void );
129
+ extern size_t mmtk_used_bytes (void );
130
+ extern void * mmtk_starting_heap_address (void );
131
+ extern void * mmtk_last_heap_address (void );
149
132
150
133
/**
151
134
* Reference Processing
@@ -154,8 +137,8 @@ extern void mmtk_add_weak_candidate(void* ref);
154
137
extern void mmtk_add_soft_candidate (void * ref );
155
138
extern void mmtk_add_phantom_candidate (void * ref );
156
139
157
- extern void harness_begin (void * tls );
158
- extern void harness_end (void );
140
+ extern void mmtk_harness_begin (void * tls );
141
+ extern void mmtk_harness_end (void );
159
142
160
143
#ifdef __cplusplus
161
144
}
0 commit comments