[pypy-svn] pypy default: Systematically list both SETFIELD and SETARRAYITEM.

arigo commits-noreply at bitbucket.org
Thu Mar 24 19:34:32 CET 2011


Author: Armin Rigo <arigo at tunes.org>
Branch: 
Changeset: r42909:e6acea94037b
Date: 2011-03-24 19:33 +0100
http://bitbucket.org/pypy/pypy/changeset/e6acea94037b/

Log:	Systematically list both SETFIELD and SETARRAYITEM.

diff --git a/pypy/jit/metainterp/optimizeopt/heap.py b/pypy/jit/metainterp/optimizeopt/heap.py
--- a/pypy/jit/metainterp/optimizeopt/heap.py
+++ b/pypy/jit/metainterp/optimizeopt/heap.py
@@ -288,7 +288,8 @@
         if len(newoperations) < 2:
             return
         lastop = newoperations[-1]
-        if lastop.getopnum() != rop.SETFIELD_GC:
+        if (lastop.getopnum() != rop.SETFIELD_GC and
+            lastop.getopnum() != rop.SETARRAYITEM_GC):
             return
         # - is_comparison() for cases like "int_eq/setfield_gc/guard_true"
         # - CALL_MAY_FORCE: "call_may_force/setfield_gc/guard_not_forced"


More information about the Pypy-commit mailing list