[pypy-commit] pypy jit-short_from_state: No point in emitting here, all we need is to make the boxes equal. Besides, it might mess up the values we use later

hakanardo noreply at buildbot.pypy.org
Mon Jul 25 23:21:32 CEST 2011


Author: Hakan Ardo <hakan at debian.org>
Branch: jit-short_from_state
Changeset: r45985:23033be41f5e
Date: 2011-07-25 16:03 +0200
http://bitbucket.org/pypy/pypy/changeset/23033be41f5e/

Log:	No point in emitting here, all we need is to make the boxes equal.
	Besides, it might mess up the values we use later

diff --git a/pypy/jit/metainterp/optimizeopt/unroll.py b/pypy/jit/metainterp/optimizeopt/unroll.py
--- a/pypy/jit/metainterp/optimizeopt/unroll.py
+++ b/pypy/jit/metainterp/optimizeopt/unroll.py
@@ -185,6 +185,7 @@
 
             modifier = VirtualStateAdder(self.optimizer)
             virtual_state = modifier.get_virtual_state(jump_args)
+            
             values = [self.getvalue(arg) for arg in jump_args]
             inputargs = virtual_state.make_inputargs(values)
             short_inputargs = virtual_state.make_inputargs(values, keyboxes=True)
diff --git a/pypy/jit/metainterp/optimizeopt/virtualstate.py b/pypy/jit/metainterp/optimizeopt/virtualstate.py
--- a/pypy/jit/metainterp/optimizeopt/virtualstate.py
+++ b/pypy/jit/metainterp/optimizeopt/virtualstate.py
@@ -496,12 +496,8 @@
             self.duplicates[op.result].append(newop.result)
         else:
             self.duplicates[op.result] = [newop.result]
-        self.optimizer.send_extra_operation(newop)
-        if newop.is_ovf():
-            guard = ResOperation(rop.GUARD_NO_OVERFLOW, [], None)
-            self.optimizer.send_extra_operation(guard)
+        self.optimizer.make_equal_to(newop.result, self.optimizer.getvalue(op.result))
         return newop
-        
 
     def debug_print(self, logops):
         debug_start('jit-short-boxes')


More information about the pypy-commit mailing list