[pypy-svn] r77855 - pypy/branch/jit-unroll-loops/pypy/jit/metainterp/optimizeopt

hakanardo at codespeak.net hakanardo at codespeak.net
Tue Oct 12 20:18:09 CEST 2010


Author: hakanardo
Date: Tue Oct 12 20:18:08 2010
New Revision: 77855

Modified:
   pypy/branch/jit-unroll-loops/pypy/jit/metainterp/optimizeopt/unroll.py
Log:
translation fixes

Modified: pypy/branch/jit-unroll-loops/pypy/jit/metainterp/optimizeopt/unroll.py
==============================================================================
--- pypy/branch/jit-unroll-loops/pypy/jit/metainterp/optimizeopt/unroll.py	(original)
+++ pypy/branch/jit-unroll-loops/pypy/jit/metainterp/optimizeopt/unroll.py	Tue Oct 12 20:18:08 2010
@@ -59,7 +59,9 @@
                 argmap[op.result] = newop.result
             descr = newop.getdescr()
             if isinstance(descr, ResumeGuardDescr):
-                op.getdescr().rd_snapshot = None #FIXME: In the right place?
+                orgdescr = op.getdescr()
+                assert isinstance(orgdescr, ResumeGuardDescr)
+                orgdescr.rd_snapshot = None #FIXME: In the right place?
                 descr.rd_numb = None
                 descr.rd_snapshot = self.inline_snapshot(descr.rd_snapshot)
                 
@@ -75,7 +77,9 @@
 
             for op in self.optimizer.newoperations[current:]:
                 if op.is_guard():
-                    op.getdescr().rd_snapshot = None #FIXME: In the right place?
+                    descr = op.getdescr()
+                    assert isinstance(descr, ResumeGuardDescr)
+                    descr.rd_snapshot = None #FIXME: In the right place?
                 args = op.getarglist()
                 if op.is_guard():
                     args = args + op.getfailargs()
@@ -103,7 +107,9 @@
                 boxes.append(a)
             else:
                 boxes.append(self.inline_arg(a))
-        return Snapshot(self.inline_snapshot(snapshot.prev), boxes)
+        new_snapshot = Snapshot(self.inline_snapshot(snapshot.prev), boxes[:])
+        self.snapshot_map[snapshot] = new_snapshot
+        return new_snapshot
     
 
         



More information about the Pypy-commit mailing list