diff options
| -rw-r--r-- | vm/runtime.c | 13 | 
1 files changed, 5 insertions, 8 deletions
| diff --git a/vm/runtime.c b/vm/runtime.c index d188b29..82886b8 100644 --- a/vm/runtime.c +++ b/vm/runtime.c @@ -725,8 +725,7 @@ err_t vm_eq_byte(vm_t *vm)  err_t vm_eq_char(vm_t *vm)  { -  (void)vm; -  return ERR_END_OF_PROGRAM; +  return vm_eq_byte(vm);  }  err_t vm_eq_hword(vm_t *vm) @@ -738,19 +737,17 @@ err_t vm_eq_hword(vm_t *vm)    err = vm_pop_hword(vm, &b);    if (err)      return err; -  return vm_push_hword(vm, DHWORD(a.as_hword == b.as_hword)); +  return vm_push_byte(vm, DBYTE(a.as_hword == b.as_hword));  }  err_t vm_eq_int(vm_t *vm)  { -  (void)vm; -  return ERR_END_OF_PROGRAM; +  return vm_eq_hword(vm);  }  err_t vm_eq_long(vm_t *vm)  { -  (void)vm; -  return ERR_END_OF_PROGRAM; +  return vm_eq_word(vm);  }  err_t vm_eq_word(vm_t *vm) @@ -762,7 +759,7 @@ err_t vm_eq_word(vm_t *vm)    err = vm_pop_word(vm, &b);    if (err)      return err; -  return vm_push_word(vm, DWORD(a.as_word == b.as_word)); +  return vm_push_byte(vm, DBYTE(a.as_word == b.as_word));  }  err_t vm_lt_byte(vm_t *vm) | 
