From 8ad39195775af35c16e4b03b6aa55f131981664e Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Thu, 15 Aug 2013 02:18:55 -0700 Subject: [PATCH] Hoist the global "dummy" lookup outside of the reinsertion loop. --- Objects/setobject.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/setobject.c b/Objects/setobject.c index eff91c566d..ac501b6000 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); -- 2.50.1