[issue28870] Refactor PyObject_CallFunctionObjArgs() and like

2016-12-15 Thread STINNER Victor
STINNER Victor added the comment: I reworked abstract.c to prepare work for this issue: * change 455169e87bb3: Add _PyObject_CallFunctionVa() helper * change 6e748eb79038: Add _PyObject_VaCallFunctionObjArgs() private function * change 71876e4abce4: Add _PY_FASTCALL_SMALL_STACK constant I wrot

[issue28870] Refactor PyObject_CallFunctionObjArgs() and like

2016-12-15 Thread Roundup Robot
Roundup Robot added the comment: New changeset 71876e4abce4 by Victor Stinner in branch 'default': Add _PY_FASTCALL_SMALL_STACK constant https://hg.python.org/cpython/rev/71876e4abce4 -- nosy: +python-dev ___ Python tracker

[issue28870] Refactor PyObject_CallFunctionObjArgs() and like

2016-12-04 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: > What do you think of using alloca() instead of an "PyObject *small_stack[5];" > which has a fixed size? alloca() is not in POSIX.1. I afraid it would make CPython less portable. > Note: About your patch, try to avoid _PyObject_CallArg1() if you care of the

[issue28870] Refactor PyObject_CallFunctionObjArgs() and like

2016-12-04 Thread STINNER Victor
STINNER Victor added the comment: > But it doesn't affect a stack consumption. How do you check the stack consumption of PyObject_CallFunctionObjArgs()? -- ___ Python tracker __

[issue28870] Refactor PyObject_CallFunctionObjArgs() and like

2016-12-04 Thread STINNER Victor
STINNER Victor added the comment: What do you think of using alloca() instead of an "PyObject *small_stack[5];" which has a fixed size? Note: About your patch, try to avoid _PyObject_CallArg1() if you care of the usage of the C stack, see issue #28858. --

[issue28870] Refactor PyObject_CallFunctionObjArgs() and like

2016-12-04 Thread Serhiy Storchaka
New submission from Serhiy Storchaka: Following patch I wrote in attempt to decrease a stack consumption of PyObject_CallFunctionObjArgs(), PyObject_CallMethodObjArgs() and _PyObject_CallMethodIdObjArgs(). But it doesn't affect a stack consumption. I still didn't measured what performance effe