a few peephole optimizations
diff --git a/Objects/listobject.c b/Objects/listobject.c
index a367ed1..44003bc 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -120,6 +120,7 @@
register object *newitem;
{
register object *olditem;
+ register object **p;
if (!is_listobject(op)) {
XDECREF(newitem);
err_badcall();
@@ -130,8 +131,9 @@
err_setstr(IndexError, "list assignment index out of range");
return -1;
}
- olditem = ((listobject *)op) -> ob_item[i];
- ((listobject *)op) -> ob_item[i] = newitem;
+ p = ((listobject *)op) -> ob_item + i;
+ olditem = *p;
+ *p = newitem;
XDECREF(olditem);
return 0;
}