diff options
Diffstat (limited to 'clox/src/vm.c')
-rw-r--r-- | clox/src/vm.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/clox/src/vm.c b/clox/src/vm.c index ffd207d..e05a0c8 100644 --- a/clox/src/vm.c +++ b/clox/src/vm.c @@ -6,13 +6,9 @@ VM vm; -static void resetStack() { - vm.stackTop = vm.stack; -} +static void resetStack() { vm.stackTop = vm.stack; } -void initVM() { - resetStack(); -} +void initVM() { resetStack(); } void freeVM() {} @@ -49,6 +45,9 @@ static InterpretResult run() { push(constant); break; } + case OP_NEGATE: + push(-pop()); + break; case OP_RETURN: { printValue(pop()); printf("\n"); |