diff -r ade227d8fe32 -r 41cda88e558d Include/abstract.h --- a/Include/abstract.h Tue Jan 10 18:31:21 2017 +0100 +++ b/Include/abstract.h Tue Jan 10 18:35:11 2017 +0100 @@ -195,8 +195,8 @@ PyAPI_FUNC(PyObject **) _PyStack_UnpackD The size is chosen to not abuse the C stack and so limit the risk of stack overflow. The size is also chosen to allow using the small stack for most function calls of the Python standard library. On 64-bit CPU, it allocates - 40 bytes on the stack. */ -#define _PY_FASTCALL_SMALL_STACK 5 + 24 bytes on the stack. */ +#define _PY_FASTCALL_SMALL_STACK 3 /* Call the callable object 'callable' with the "fast call" calling convention: args is a C array for positional arguments (nargs is the number of diff -r ade227d8fe32 -r 41cda88e558d Python/ceval.c --- a/Python/ceval.c Tue Jan 10 18:31:21 2017 +0100 +++ b/Python/ceval.c Tue Jan 10 18:35:11 2017 +0100 @@ -36,7 +36,7 @@ extern int _PyObject_GetMethod(PyObject typedef PyObject *(*callproc)(PyObject *, PyObject *, PyObject *); /* Forward declarations */ -static PyObject * call_function(PyObject ***, Py_ssize_t, PyObject *); +Py_LOCAL_INLINE(PyObject *) call_function(PyObject ***, Py_ssize_t, PyObject *); static PyObject * fast_function(PyObject *, PyObject **, Py_ssize_t, PyObject *); static PyObject * do_call_core(PyObject *, PyObject *, PyObject *); @@ -4829,7 +4829,7 @@ if (tstate->use_tracing && tstate->c_pro x = call; \ } -static PyObject* _Py_HOT_FUNCTION +Py_LOCAL_INLINE(PyObject *) _Py_HOT_FUNCTION call_function(PyObject ***pp_stack, Py_ssize_t oparg, PyObject *kwnames) { PyObject **pfunc = (*pp_stack) - oparg - 1;