Author: Maciej Fijalkowski <fij...@gmail.com>
Branch: result-in-resops
Changeset: r58537:40876c78ca5b
Date: 2012-10-28 18:29 +0100
http://bitbucket.org/pypy/pypy/changeset/40876c78ca5b/

Log:    one more test

diff --git a/pypy/jit/metainterp/optimizeopt/pure.py 
b/pypy/jit/metainterp/optimizeopt/pure.py
--- a/pypy/jit/metainterp/optimizeopt/pure.py
+++ b/pypy/jit/metainterp/optimizeopt/pure.py
@@ -63,11 +63,12 @@
                 self.last_emitted_operation = REMOVED
                 return
             else:
-                new_op = op.copy_if_modified_by_optimization(self.optimizer)
+                new_op = self.optimizer.getforwarded(op)
                 self.pure_operations.set(new_op, op)
                 self.remember_emitting_pure(op)
 
             # replace CALL_PURE with just CALL
+            xxx
             self.emit_operation(self.optimizer.copy_and_change(op, opnum))
         return optimize_CALL_PURE
     optimize_CALL_PURE_i = _new_optimize_call_pure(rop.CALL_i)
@@ -80,7 +81,7 @@
             # it was a CALL_PURE that was killed; so we also kill the
             # following GUARD_NO_EXCEPTION
             return
-        self.emit_operation(op)
+        return op
 
     def flush(self):
         assert self.posponedop is None
diff --git a/pypy/jit/metainterp/optimizeopt/rewrite.py 
b/pypy/jit/metainterp/optimizeopt/rewrite.py
--- a/pypy/jit/metainterp/optimizeopt/rewrite.py
+++ b/pypy/jit/metainterp/optimizeopt/rewrite.py
@@ -2,7 +2,7 @@
 from pypy.jit.metainterp.optimize import InvalidLoop
 from pypy.jit.metainterp.optimizeopt.intutils import IntBound
 from pypy.jit.metainterp.optimizeopt.optimizer import Optimization, CONST_1,\
-     CONST_0
+     CONST_0, REMOVED
 from pypy.jit.metainterp.resoperation import (opboolinvers, opboolreflex, rop,
                                               ConstInt, make_hashable_int,
                                               create_resop_2, Const,
@@ -515,7 +515,7 @@
             # it was a CALL_PURE or a CALL_LOOPINVARIANT that was killed;
             # so we also kill the following GUARD_NO_EXCEPTION
             return
-        self.emit_operation(op)
+        return op
 
     def optimize_INT_FLOORDIV(self, op):
         v1 = self.getvalue(op.getarg(0))
diff --git a/pypy/jit/metainterp/optimizeopt/vstring.py 
b/pypy/jit/metainterp/optimizeopt/vstring.py
--- a/pypy/jit/metainterp/optimizeopt/vstring.py
+++ b/pypy/jit/metainterp/optimizeopt/vstring.py
@@ -551,7 +551,7 @@
     def optimize_GUARD_NO_EXCEPTION(self, op):
         if self.last_emitted_operation is REMOVED:
             return
-        self.emit_operation(op)
+        return op
 
     def opt_call_str_STR2UNICODE(self, op):
         # Constant-fold unicode("constant string").
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to