VM: the clear_mark_bits methods are only called once -- make the calls inline instead
parent
fb9fa12cdd
commit
693e8ad33a
|
@ -47,8 +47,6 @@ void code_heap::set_marked_p(code_block* compiled) {
|
|||
allocator->state.set_marked_p((cell)compiled, compiled->size());
|
||||
}
|
||||
|
||||
void code_heap::clear_mark_bits() { allocator->state.clear_mark_bits(); }
|
||||
|
||||
void code_heap::free(code_block* compiled) {
|
||||
FACTOR_ASSERT(!uninitialized_p(compiled));
|
||||
points_to_nursery.erase(compiled);
|
||||
|
|
|
@ -39,7 +39,6 @@ struct code_heap {
|
|||
bool uninitialized_p(code_block* compiled);
|
||||
bool marked_p(code_block* compiled);
|
||||
void set_marked_p(code_block* compiled);
|
||||
void clear_mark_bits();
|
||||
void free(code_block* compiled);
|
||||
void flush_icache();
|
||||
void guard_safepoint();
|
||||
|
|
|
@ -36,8 +36,8 @@ void factor_vm::collect_mark_impl(bool trace_contexts_p) {
|
|||
|
||||
mark_stack.clear();
|
||||
|
||||
code->clear_mark_bits();
|
||||
data->tenured->clear_mark_bits();
|
||||
code->allocator->state.clear_mark_bits();
|
||||
data->tenured->state.clear_mark_bits();
|
||||
|
||||
collector.data_visitor.visit_roots();
|
||||
if (trace_contexts_p) {
|
||||
|
|
|
@ -25,8 +25,6 @@ struct tenured_space : free_list_allocator<object> {
|
|||
return (cell)next_allocated_block_after(next);
|
||||
}
|
||||
|
||||
void clear_mark_bits() { state.clear_mark_bits(); }
|
||||
|
||||
bool marked_p(object* obj) {
|
||||
return this->state.marked_p((cell)obj);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue