From ce478b0b80af331b89813148df7b04d46968e328 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Sun, 23 Jan 2022 15:58:35 -0800 Subject: Chapter 24.3 --- clox/src/vm.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'clox/src/vm.h') diff --git a/clox/src/vm.h b/clox/src/vm.h index 0ab269b..170166b 100644 --- a/clox/src/vm.h +++ b/clox/src/vm.h @@ -2,14 +2,23 @@ #define clox_vm_h #include "chunk.h" +#include "object.h" #include "table.h" #include "value.h" -#define STACK_MAX 256 +#define FRAMES_MAX 64 +#define STACK_MAX (FRAMES_MAX * UINT8_COUNT) typedef struct { - Chunk *chunk; + ObjFunction *function; uint8_t *ip; + Value *slots; +} CallFrame; + +typedef struct { + CallFrame frames[FRAMES_MAX]; + int frameCount; + Value stack[STACK_MAX]; Value *stackTop; Table globals; -- cgit v1.2.3-54-g00ecf