py: Allow tail call optimisation in mp_call_function_n_kw.
This saves 4 words of stack space per Python call.
diff --git a/py/runtime.c b/py/runtime.c
index 27a5ed5..f13cc1d 100644
--- a/py/runtime.c
+++ b/py/runtime.c
@@ -526,10 +526,7 @@
// do the call
if (type->call != NULL) {
- mp_obj_t res = type->call(fun_in, n_args, n_kw, args);
- if (res != NULL) {
- return res;
- }
+ return type->call(fun_in, n_args, n_kw, args);
}
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_TypeError, "'%s' object is not callable", mp_obj_get_type_str(fun_in)));