• Victor Stinner's avatar
    Replace PyObject_CallFunctionObjArgs() with fastcall · 27580c1f
    Victor Stinner yazdı
    * PyObject_CallFunctionObjArgs(func, NULL) => _PyObject_CallNoArg(func)
    * PyObject_CallFunctionObjArgs(func, arg, NULL) => _PyObject_CallArg1(func, arg)
    
    PyObject_CallFunctionObjArgs() allocates 40 bytes on the C stack and requires
    extra work to "parse" C arguments to build a C array of PyObject*.
    
    _PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate
    memory on the C stack.
    
    This change is part of the fastcall project. The change on listsort() is
    related to the issue #23507.
    27580c1f
memoryobject.c 88.6 KB