[Python-checkins] bpo-39425: Fix list.count performance regression (GH-18119) (GH-18121)
Pablo Galindo
webhook-mailer at python.org
Wed Jan 22 13:11:35 EST 2020
https://github.com/python/cpython/commit/9e06d61af30bac4fcacb7973f826147ccc010392
commit: 9e06d61af30bac4fcacb7973f826147ccc010392
branch: 3.7
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: Pablo Galindo <Pablogsal at gmail.com>
date: 2020-01-22T18:11:30Z
summary:
bpo-39425: Fix list.count performance regression (GH-18119) (GH-18121)
https://bugs.python.org/issue39425
Automerge-Triggered-By: @pablogsal
(cherry picked from commit 14d80d0b605d8b148e14458e4c1853a940071462)
Co-authored-by: Dong-hee Na <donghee.na92 at gmail.com>
Co-authored-by: Dong-hee Na <donghee.na92 at gmail.com>
files:
M Objects/listobject.c
diff --git a/Objects/listobject.c b/Objects/listobject.c
index d622da9e0dbf3..856f3215e8855 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -2537,6 +2537,10 @@ list_count(PyListObject *self, PyObject *value)
for (i = 0; i < Py_SIZE(self); i++) {
PyObject *obj = self->ob_item[i];
+ if (obj == value) {
+ count++;
+ continue;
+ }
Py_INCREF(obj);
int cmp = PyObject_RichCompareBool(obj, value, Py_EQ);
Py_DECREF(obj);
More information about the Python-checkins
mailing list