diff options
Diffstat (limited to 'pkg/lang/vm/vm.go')
| -rw-r--r-- | pkg/lang/vm/vm.go | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/pkg/lang/vm/vm.go b/pkg/lang/vm/vm.go index 3f0703a..54fd8ee 100644 --- a/pkg/lang/vm/vm.go +++ b/pkg/lang/vm/vm.go @@ -164,14 +164,25 @@ func (vm *VM) step(op code.Op) (stepDecision, error) { err = vm.execAdd() case code.OpSub: err = vm.execSub() + case code.OpMul: + err = vm.execMul() + case code.OpDiv: + err = vm.execDiv() case code.OpMod: err = vm.execMod() - case code.OpIndex: - err = vm.execIndex() + case code.OpEq: + err = vm.execEq() case code.OpLt: err = vm.execLt() + case code.OpGt: + err = vm.execGt() case code.OpLte: err = vm.execLte() + case code.OpGte: + err = vm.execGte() + + case code.OpIndex: + err = vm.execIndex() case code.OpCall: argCount, advance := vm.code.GetUint(vm.pc) vm.pc += advance |
