VM: bignum_roots traversal code deleted!

db4
Björn Lindqvist 2014-06-17 17:22:03 +02:00 committed by John Benediktsson
parent 981a02be27
commit 8741dbefce
3 changed files with 0 additions and 38 deletions

View File

@ -37,27 +37,4 @@ template <typename Type> struct data_root : public tagged<Type> {
} }
}; };
/* A similar hack for the bignum implementation */
struct gc_bignum {
bignum** addr;
factor_vm* parent;
gc_bignum(bignum** addr, factor_vm* parent) : addr(addr), parent(parent) {
/* Don't bother with variables holding NULL pointers. */
if (*addr) {
parent->check_data_pointer(*addr);
parent->bignum_roots.push_back(addr);
}
}
~gc_bignum() {
if (*addr) {
FACTOR_ASSERT(parent->bignum_roots.back() == addr);
parent->bignum_roots.pop_back();
}
}
};
#define GC_BIGNUM(x) gc_bignum x##__data_root(&x, this)
} }

View File

@ -119,7 +119,6 @@ template <typename Fixup> struct slot_visitor {
void visit_slots(object* ptr); void visit_slots(object* ptr);
void visit_stack_elements(segment* region, cell* top); void visit_stack_elements(segment* region, cell* top);
void visit_data_roots(); void visit_data_roots();
void visit_bignum_roots();
void visit_callback_roots(); void visit_callback_roots();
void visit_literal_table_roots(); void visit_literal_table_roots();
void visit_roots(); void visit_roots();
@ -186,18 +185,6 @@ template <typename Fixup> void slot_visitor<Fixup>::visit_data_roots() {
} }
} }
template <typename Fixup> void slot_visitor<Fixup>::visit_bignum_roots() {
std::vector<bignum**>::const_iterator iter =
parent->bignum_roots.begin();
std::vector<bignum**>::const_iterator end =
parent->bignum_roots.end();
for (; iter < end; iter++) {
bignum** ref = *iter;
*ref = (bignum*)fixup.fixup_data(*ref);
}
}
template <typename Fixup> struct callback_slot_visitor { template <typename Fixup> struct callback_slot_visitor {
slot_visitor<Fixup>* visitor; slot_visitor<Fixup>* visitor;
@ -251,7 +238,6 @@ template <typename Fixup> void slot_visitor<Fixup>::visit_roots() {
visit_handle(&parent->bignum_neg_one); visit_handle(&parent->bignum_neg_one);
visit_data_roots(); visit_data_roots();
visit_bignum_roots();
visit_callback_roots(); visit_callback_roots();
visit_literal_table_roots(); visit_literal_table_roots();
visit_sample_callstacks(); visit_sample_callstacks();

View File

@ -114,7 +114,6 @@ struct factor_vm {
themselves here. See data_roots.hpp and code_roots.hpp */ themselves here. See data_roots.hpp and code_roots.hpp */
std::vector<cell*> data_roots; std::vector<cell*> data_roots;
std::vector<bignum**> bignum_roots;
std::vector<code_root*> code_roots; std::vector<code_root*> code_roots;
/* Debugger */ /* Debugger */