From: Raymond Hettinger Date: Thu, 15 Aug 2013 09:18:55 +0000 (-0700) Subject: Hoist the global "dummy" lookup outside of the reinsertion loop. X-Git-Tag: v3.4.0a2~222 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8ad39195775af35c16e4b03b6aa55f131981664e;p=thirdparty%2FPython%2Fcpython.git Hoist the global "dummy" lookup outside of the reinsertion loop. --- diff --git a/Objects/setobject.c b/Objects/setobject.c index eff91c566d17..ac501b600037 100644 --- a/Objects/setobject.c +++ b/Objects/setobject.c @@ -280,6 +280,7 @@ set_table_resize(PySetObject *so, Py_ssize_t minused) Py_ssize_t i; int is_oldtable_malloced; setentry small_copy[PySet_MINSIZE]; + PyObject *dummy_entry; assert(minused >= 0); @@ -336,11 +337,12 @@ set_table_resize(PySetObject *so, Py_ssize_t minused) /* Copy the data over; this is refcount-neutral for active entries; dummy entries aren't copied over, of course */ + dummy_entry = dummy; for (entry = oldtable; i > 0; entry++) { if (entry->key == NULL) { /* UNUSED */ ; - } else if (entry->key == dummy) { + } else if (entry->key == dummy_entry) { /* DUMMY */ --i; assert(entry->key == dummy);