diff --git a/interpreter/src/vm.rs b/interpreter/src/vm.rs index 912318d..e0cfa58 100644 --- a/interpreter/src/vm.rs +++ b/interpreter/src/vm.rs @@ -61,11 +61,12 @@ pub struct Consts<'a>(pub IndexSet, RandomState, &'a Bump>); impl<'a> Interpreter<'a> { pub fn new(compat: ExecMode, code: Code<'a>) -> Self { + let n_regs = code.reg_pointer as usize + 1; Self { arena: code.arena, bc: code.bc, program_counter: 0, - registers: Registers(bumpalo::vec![in code.arena; Value::Untyped; 8]), + registers: Registers(bumpalo::vec![in code.arena; Value::Untyped; n_regs]), symbols: code.symbols, consts: code.consts, compat,