factor/vm/vm.cpp

45 lines
941 B
C++
Raw Normal View History

2010-01-30 23:39:43 -05:00
#include "master.hpp"
namespace factor {
2010-01-30 23:39:43 -05:00
factor_vm::factor_vm(THREADHANDLE thread)
: ctx(NULL),
nursery(0, 0),
faulting_p(false),
thread(thread),
callback_id(0),
c_to_factor_func(NULL),
sampling_profiler_p(false),
signal_pipe_input(0),
signal_pipe_output(0),
gc_off(false),
current_gc(NULL),
current_gc_p(false),
current_jit_count(0),
gc_events(NULL),
fep_p(false),
fep_help_was_shown(false),
fep_disabled(false),
full_output(false),
last_nano_count(0),
signal_callstack_seg(NULL),
safepoint() {
primitive_reset_dispatch_stats();
2010-01-30 23:39:43 -05:00
}
factor_vm::~factor_vm() {
2016-05-12 21:22:13 -04:00
FACTOR_ASSERT(!ctx);
FACTOR_FOR_EACH(unused_contexts) {
delete *iter;
}
if (signal_callstack_seg) {
delete signal_callstack_seg;
signal_callstack_seg = NULL;
}
FACTOR_FOR_EACH(function_descriptors) {
delete[] * iter;
}
}
2010-01-30 23:39:43 -05:00
}