py: Fix location of VM returned exception in invalid opcode and comments

The location for a returned exception was changed to state[0] in
d95947b48a
This commit is contained in:
Damien George 2019-01-04 17:22:40 +11:00
parent 6d19934463
commit afecc124e6
2 changed files with 3 additions and 3 deletions

View File

@ -323,7 +323,7 @@ STATIC mp_obj_t fun_bc_call(mp_obj_t self_in, size_t n_args, size_t n_kw, const
} else { } else {
// must be an exception because normal functions can't yield // must be an exception because normal functions can't yield
assert(vm_return_kind == MP_VM_RETURN_EXCEPTION); assert(vm_return_kind == MP_VM_RETURN_EXCEPTION);
// return value is in fastn[0]==state[n_state - 1] // returned exception is in state[0]
result = code_state->state[0]; result = code_state->state[0];
} }

View File

@ -115,7 +115,7 @@
// returns: // returns:
// MP_VM_RETURN_NORMAL, sp valid, return value in *sp // MP_VM_RETURN_NORMAL, sp valid, return value in *sp
// MP_VM_RETURN_YIELD, ip, sp valid, yielded value in *sp // MP_VM_RETURN_YIELD, ip, sp valid, yielded value in *sp
// MP_VM_RETURN_EXCEPTION, exception in fastn[0] // MP_VM_RETURN_EXCEPTION, exception in state[0]
mp_vm_return_kind_t mp_execute_bytecode(mp_code_state_t *code_state, volatile mp_obj_t inject_exc) { mp_vm_return_kind_t mp_execute_bytecode(mp_code_state_t *code_state, volatile mp_obj_t inject_exc) {
#define SELECTIVE_EXC_IP (0) #define SELECTIVE_EXC_IP (0)
#if SELECTIVE_EXC_IP #if SELECTIVE_EXC_IP
@ -1274,7 +1274,7 @@ yield:
{ {
mp_obj_t obj = mp_obj_new_exception_msg(&mp_type_NotImplementedError, "byte code not implemented"); mp_obj_t obj = mp_obj_new_exception_msg(&mp_type_NotImplementedError, "byte code not implemented");
nlr_pop(); nlr_pop();
fastn[0] = obj; code_state->state[0] = obj;
return MP_VM_RETURN_EXCEPTION; return MP_VM_RETURN_EXCEPTION;
} }