Replace PyObject_CallFunction() with fastcall

Replace
    PyObject_CallFunction(func, "O", arg)
and
    PyObject_CallFunction(func, "O", arg, NULL)
with
    _PyObject_CallArg1(func, arg)

Replace
    PyObject_CallFunction(func, NULL)
with
    _PyObject_CallNoArg(func)

_PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate
memory on the C stack.
This commit is contained in:
Victor Stinner 2016-12-01 14:51:04 +01:00
parent 842cfff321
commit 4778eab1f2
8 changed files with 13 additions and 13 deletions

View file

@ -1341,7 +1341,7 @@ async_gen_init_hooks(PyAsyncGenObject *o)
PyObject *res;
Py_INCREF(firstiter);
res = PyObject_CallFunction(firstiter, "O", o);
res = _PyObject_CallArg1(firstiter, o);
Py_DECREF(firstiter);
if (res == NULL) {
return 1;