VM: calls to visit_code_roots() replaced with visit_uninitialized_code_blocks()

db4
Björn Lindqvist 2015-01-06 14:53:52 +01:00
parent eb7a5ab1ba
commit 615420fe61
3 changed files with 3 additions and 9 deletions

View File

@ -23,8 +23,6 @@ template <typename Fixup> struct code_block_visitor {
void visit_embedded_code_pointers(code_block* compiled); void visit_embedded_code_pointers(code_block* compiled);
void visit_context_code_blocks(); void visit_context_code_blocks();
void visit_uninitialized_code_blocks(); void visit_uninitialized_code_blocks();
void visit_code_roots();
}; };
template <typename Fixup> template <typename Fixup>
@ -117,8 +115,4 @@ void code_block_visitor<Fixup>::visit_uninitialized_code_blocks() {
parent->code->uninitialized_blocks = new_uninitialized_blocks; parent->code->uninitialized_blocks = new_uninitialized_blocks;
} }
template <typename Fixup> void code_block_visitor<Fixup>::visit_code_roots() {
visit_uninitialized_code_blocks();
}
} }

View File

@ -198,7 +198,7 @@ void factor_vm::collect_compact_impl(bool trace_contexts_p) {
slot_visitor<compaction_fixup> data_forwarder(this, fixup); slot_visitor<compaction_fixup> data_forwarder(this, fixup);
code_block_visitor<compaction_fixup> code_forwarder(this, fixup); code_block_visitor<compaction_fixup> code_forwarder(this, fixup);
code_forwarder.visit_code_roots(); code_forwarder.visit_uninitialized_code_blocks();
/* Object start offsets get recomputed by the object_compaction_updater */ /* Object start offsets get recomputed by the object_compaction_updater */
data->tenured->starts.clear_object_start_offsets(); data->tenured->starts.clear_object_start_offsets();
@ -291,7 +291,7 @@ void factor_vm::collect_compact_code_impl(bool trace_contexts_p) {
slot_visitor<code_compaction_fixup> data_forwarder(this, fixup); slot_visitor<code_compaction_fixup> data_forwarder(this, fixup);
code_block_visitor<code_compaction_fixup> code_forwarder(this, fixup); code_block_visitor<code_compaction_fixup> code_forwarder(this, fixup);
code_forwarder.visit_code_roots(); code_forwarder.visit_uninitialized_code_blocks();
if (trace_contexts_p) if (trace_contexts_p)
code_forwarder.visit_context_code_blocks(); code_forwarder.visit_context_code_blocks();

View File

@ -43,7 +43,7 @@ void factor_vm::collect_mark_impl(bool trace_contexts_p) {
if (trace_contexts_p) { if (trace_contexts_p) {
collector.data_visitor.visit_contexts(); collector.data_visitor.visit_contexts();
collector.code_visitor.visit_context_code_blocks(); collector.code_visitor.visit_context_code_blocks();
collector.code_visitor.visit_code_roots(); collector.code_visitor.visit_uninitialized_code_blocks();
} }
while (!mark_stack.empty()) { while (!mark_stack.empty()) {