summaryrefslogtreecommitdiffstats
path: root/Python
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2006-05-25 19:15:31 (GMT)
committerGeorg Brandl <georg@python.org>2006-05-25 19:15:31 (GMT)
commit684fd0c8ec0bad54d3ff39ae15873f80e119478b (patch)
tree56596aed7bfd401ebe049e566201f75f88150b27 /Python
parent3b0cae9cc06374eb7a7159f1328ec700208d6109 (diff)
downloadcpython-684fd0c8ec0bad54d3ff39ae15873f80e119478b.zip
cpython-684fd0c8ec0bad54d3ff39ae15873f80e119478b.tar.gz
cpython-684fd0c8ec0bad54d3ff39ae15873f80e119478b.tar.bz2
Replace PyObject_CallFunction calls with only object args
with PyObject_CallFunctionObjArgs, which is 30% faster.
Diffstat (limited to 'Python')
-rw-r--r--Python/ceval.c2
-rw-r--r--Python/import.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/Python/ceval.c b/Python/ceval.c
index b59f718..3043f82 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -4053,7 +4053,7 @@ build_class(PyObject *methods, PyObject *bases, PyObject *name)
metaclass = (PyObject *) &PyClass_Type;
Py_INCREF(metaclass);
}
- result = PyObject_CallFunction(metaclass, "OOO", name, bases, methods);
+ result = PyObject_CallFunctionObjArgs(metaclass, name, bases, methods, NULL);
Py_DECREF(metaclass);
if (result == NULL && PyErr_ExceptionMatches(PyExc_TypeError)) {
/* A type error here likely means that the user passed
diff --git a/Python/import.c b/Python/import.c
index 6642082..862f33c 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -1043,7 +1043,7 @@ get_path_importer(PyObject *path_importer_cache, PyObject *path_hooks,
PyObject *hook = PyList_GetItem(path_hooks, j);
if (hook == NULL)
return NULL;
- importer = PyObject_CallFunction(hook, "O", p);
+ importer = PyObject_CallFunctionObjArgs(hook, p, NULL);
if (importer != NULL)
break;
@@ -2499,8 +2499,8 @@ PyImport_Import(PyObject *module_name)
goto err;
/* Call the _import__ function with the proper argument list */
- r = PyObject_CallFunction(import, "OOOO",
- module_name, globals, globals, silly_list);
+ r = PyObject_CallFunctionObjArgs(import, module_name, globals,
+ globals, silly_list, NULL);
err:
Py_XDECREF(globals);