[pypy-svn] r76963 - pypy/branch/jit-generator/pypy/jit/metainterp

arigo at codespeak.net arigo at codespeak.net
Thu Sep 9 12:07:42 CEST 2010


Author: arigo
Date: Thu Sep  9 12:07:41 2010
New Revision: 76963

Modified:
   pypy/branch/jit-generator/pypy/jit/metainterp/compile.py
Log:
Avoids one extra copy.


Modified: pypy/branch/jit-generator/pypy/jit/metainterp/compile.py
==============================================================================
--- pypy/branch/jit-generator/pypy/jit/metainterp/compile.py	(original)
+++ pypy/branch/jit-generator/pypy/jit/metainterp/compile.py	Thu Sep  9 12:07:41 2010
@@ -57,12 +57,9 @@
     loop.inputargs = history.inputargs
     for box in loop.inputargs:
         assert isinstance(box, Box)
-    if start > 0:
-        ops = history.operations[start:]
-    else:
-        ops = history.operations
     # make a copy, because optimize_loop can mutate the ops and descrs
-    loop.operations = [op.clone() for op in ops]
+    h_ops = history.operations
+    loop.operations = [h_ops[i].clone() for i in range(start, len(h_ops))]
     metainterp_sd = metainterp.staticdata
     jitdriver_sd = metainterp.jitdriver_sd
     loop_token = make_loop_token(len(loop.inputargs), jitdriver_sd)



More information about the Pypy-commit mailing list