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