summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Peters <tim.peters@gmail.com>2002-07-15 05:16:13 (GMT)
committerTim Peters <tim.peters@gmail.com>2002-07-15 05:16:13 (GMT)
commit58cf361e35ba64f51b30e75737720bc73c7f6f2e (patch)
tree9874500af2262f6f36f40ce4d2e645c68395cb69
parent155adbdcbb18a8eb66826034bff391f3cb0059a6 (diff)
downloadcpython-58cf361e35ba64f51b30e75737720bc73c7f6f2e.zip
cpython-58cf361e35ba64f51b30e75737720bc73c7f6f2e.tar.gz
cpython-58cf361e35ba64f51b30e75737720bc73c7f6f2e.tar.bz2
docompare(): Another reasonable optimization from Jonathan Hogg for the
explicit comparison function case: use PyObject_Call instead of PyEval_CallObject. Same thing in context, but gives a 2.4% overall speedup when sorting a list of ints via list.sort(__builtin__.cmp).
-rw-r--r--Misc/ACKS1
-rw-r--r--Objects/listobject.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/Misc/ACKS b/Misc/ACKS
index 4ecc56f..5a4501e 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -213,6 +213,7 @@ Joerg-Cyril Hoehle
Gregor Hoffleit
Chris Hoffman
Albert Hofkamp
+Jonathan Hogg
Gerrit Holl
Philip Homburg
Naofumi Honda
diff --git a/Objects/listobject.c b/Objects/listobject.c
index dd2d580..4825e9b 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -780,7 +780,7 @@ docompare(PyObject *x, PyObject *y, PyObject *compare)
Py_INCREF(y);
PyTuple_SET_ITEM(args, 0, x);
PyTuple_SET_ITEM(args, 1, y);
- res = PyEval_CallObject(compare, args);
+ res = PyObject_Call(compare, args, NULL);
Py_DECREF(args);
if (res == NULL)
return CMPERROR;