callstack_size = 128 * sizeof(cell);
#endif
- code_size = 64;
+ code_size = 96;
young_size = sizeof(cell) / 4;
aging_size = sizeof(cell) / 2;
tenured_size = 24 * sizeof(cell);
fep = true;
else if (STRCMP(arg, STRING_LITERAL("-no-signals")) == 0)
signals = false;
- else if (STRCMP(arg, STRING_LITERAL("-console")) == 0)
- console = true;
}
}
visitor.visit_all_roots();
auto start_object_updater = [&](object *obj, cell size) {
+ (void)size;
data->tenured->starts.record_object_start_offset(obj);
visitor.visit_slots(obj);
switch (obj->type()) {
data->tenured->iterate(start_object_updater, fixup);
auto updater = [&](code_block* compiled, cell size) {
+ (void)size;
visitor.visit_code_block_objects(compiled);
cell rel_base = compiled->entry_point() - fixup.code_offset;
visitor.visit_instruction_operands(compiled, rel_base);
FILE* file = OPEN_READ(p->image_path);
if (file == NULL) {
- std::cout << "Cannot open image file: " << p->image_path << std::endl;
+ std::cout << "Cannot open image file: " << AS_UTF8(p->image_path) << std::endl;
char *msg = threadsafe_strerror(errno);
- std::cout << "strerror:2: " << msg << std::endl;
+ std::cout << "strerror: " << msg << std::endl;
free(msg);
exit(1);
}
// so. Instead we signal failure by returning false.
bool factor_vm::save_image(const vm_char* saving_filename,
const vm_char* filename) {
- image_header h;
+ image_header h = {};
h.magic = image_magic;
h.version = image_version;