[pypy-commit] pypy optresult-unroll: fix handling of inputargs

fijal noreply at buildbot.pypy.org
Wed Jul 1 11:13:42 CEST 2015


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: optresult-unroll
Changeset: r78371:854053774fc4
Date: 2015-07-01 10:21 +0200
http://bitbucket.org/pypy/pypy/changeset/854053774fc4/

Log:	fix handling of inputargs

diff --git a/rpython/jit/metainterp/optimizeopt/unroll.py b/rpython/jit/metainterp/optimizeopt/unroll.py
--- a/rpython/jit/metainterp/optimizeopt/unroll.py
+++ b/rpython/jit/metainterp/optimizeopt/unroll.py
@@ -300,8 +300,11 @@
         self.short_boxes = exported_state.short_boxes
         self.initial_virtual_state = target_token.virtual_state
 
-        for i, arg in enumerate(exported_state.orig_inputargs):
-            arg.set_forwarded(self.inputargs[i])
+        inpargs = self.initial_virtual_state.make_inputargs(
+            exported_state.orig_inputargs, self.optimizer)
+        for i, arg in enumerate(inpargs):
+            if arg is not self.inputargs[i]:
+                arg.set_forwarded(self.inputargs[i])
         for box in self.inputargs:
             preamble_info = exported_state.exported_values[box]
             self.optimizer.setinfo_from_preamble(box, preamble_info)


More information about the pypy-commit mailing list