Dev checkpoint

db4
Phil Dawes 2009-08-17 21:37:14 +01:00
parent 93c665c653
commit baaf71eddc
4 changed files with 5 additions and 5 deletions

View File

@ -467,9 +467,9 @@ void factorvm::update_literal_and_word_references(code_block *compiled)
update_word_references(compiled);
}
void update_literal_and_word_references(code_block *compiled)
void update_literal_and_word_references(code_block *compiled, factorvm *myvm)
{
return vm->update_literal_and_word_references(compiled);
return myvm->update_literal_and_word_references(compiled);
}
void factorvm::check_code_address(cell address)

View File

@ -78,7 +78,7 @@ void copy_literal_references(code_block *compiled, factorvm *myvm);
void update_word_references(code_block *compiled, factorvm *myvm);
void update_literal_and_word_references(code_block *compiled);
void update_literal_and_word_references(code_block *compiled, factorvm *myvm);
void mark_code_block(code_block *compiled);

View File

@ -299,7 +299,7 @@ void factorvm::free_unmarked(heap *heap, heap_iterator iter)
add_to_free_list(heap,(free_heap_block *)prev);
scan->status = B_ALLOCATED;
prev = scan;
iter(scan);
iter(scan,this);
break;
default:
critical_error("Invalid scan->status",(cell)scan);

View File

@ -14,7 +14,7 @@ struct heap {
heap_free_list free;
};
typedef void (*heap_iterator)(heap_block *compiled);
typedef void (*heap_iterator)(heap_block *compiled,factorvm *vm);
void new_heap(heap *h, cell size);
void build_free_list(heap *h, cell size);