Author: Maciej Fijalkowski <fij...@gmail.com>
Branch: result-in-resops
Changeset: r58494:4db10840977e
Date: 2012-10-27 11:28 +0200
http://bitbucket.org/pypy/pypy/changeset/4db10840977e/

Log:    hooray 11 tests passing

diff --git a/pypy/jit/metainterp/optimizeopt/intbounds.py 
b/pypy/jit/metainterp/optimizeopt/intbounds.py
--- a/pypy/jit/metainterp/optimizeopt/intbounds.py
+++ b/pypy/jit/metainterp/optimizeopt/intbounds.py
@@ -238,18 +238,18 @@
             return op
 
     def optimize_INT_GT(self, op):
-        v1 = self.getvalue(op.getarg(0))
-        v2 = self.getvalue(op.getarg(1))
+        v1 = self.getforwarded(op.getarg(0))
+        v2 = self.getforwarded(op.getarg(1))
         if v1.getintbound().known_gt(v2.getintbound()):
             self.make_constant_int(op, 1)
         elif v1.getintbound().known_le(v2.getintbound()) or v1 is v2:
             self.make_constant_int(op, 0)
         else:
-            self.emit_operation(op)
+            return op
 
     def optimize_INT_LE(self, op):
-        v1 = self.getvalue(op.getarg(0))
-        v2 = self.getvalue(op.getarg(1))
+        v1 = self.getforwarded(op.getarg(0))
+        v2 = self.getforwarded(op.getarg(1))
         if v1.getintbound().known_le(v2.getintbound()) or v1 is v2:
             self.make_constant_int(op, 1)
         elif v1.getintbound().known_gt(v2.getintbound()):
@@ -365,9 +365,9 @@
                 self.make_int_le(op.getarg(0), op.getarg(1))
 
     def propagate_bounds_INT_LE(self, op):
-        r = self.getvalue(op)
+        r = self.getforwarded(op)
         if r.is_constant():
-            if r.op.same_constant(CONST_1):
+            if r.same_constant(CONST_1):
                 self.make_int_le(op.getarg(0), op.getarg(1))
             else:
                 self.make_int_gt(op.getarg(0), op.getarg(1))
diff --git a/pypy/jit/metainterp/optimizeopt/test/test_optimizebasic.py 
b/pypy/jit/metainterp/optimizeopt/test/test_optimizebasic.py
--- a/pypy/jit/metainterp/optimizeopt/test/test_optimizebasic.py
+++ b/pypy/jit/metainterp/optimizeopt/test/test_optimizebasic.py
@@ -285,15 +285,15 @@
         ops = """
         [i0]
         i1 = int_gt(i0, 0)
-        guard_true(i1) []
+        guard_true(i1)
         i2 = int_le(i0, 0)
-        guard_false(i2) []
+        guard_false(i2)
         jump(i0)
         """
         expected = """
         [i0]
         i1 = int_gt(i0, 0)
-        guard_true(i1) []
+        guard_true(i1)
         jump(i0)
         """
         self.optimize_loop(ops, expected)
@@ -302,15 +302,15 @@
         ops = """
         [i0]
         i1 = int_gt(i0, 0)
-        guard_true(i1) []
+        guard_true(i1)
         i2 = int_lt(0, i0)
-        guard_true(i2) []
+        guard_true(i2)
         jump(i0)
         """
         expected = """
         [i0]
         i1 = int_gt(i0, 0)
-        guard_true(i1) []
+        guard_true(i1)
         jump(i0)
         """
         self.optimize_loop(ops, expected)
@@ -319,15 +319,15 @@
         ops = """
         [i0]
         i1 = int_gt(i0, 0)
-        guard_true(i1) []
+        guard_true(i1)
         i2 = int_ge(0, i0)
-        guard_false(i2) []
+        guard_false(i2)
         jump(i0)
         """
         expected = """
         [i0]
         i1 = int_gt(i0, 0)
-        guard_true(i1) []
+        guard_true(i1)
         jump(i0)
         """
         self.optimize_loop(ops, expected)
@@ -335,16 +335,16 @@
     def test_remove_consecutive_guard_value_constfold(self):
         ops = """
         [i0]
-        guard_value(i0, 0) []
+        guard_value(i0, 0)
         i1 = int_add(i0, 1)
-        guard_value(i1, 1) []
+        guard_value(i1, 1)
         i2 = int_add(i1, 2)
         escape(i2)
         jump(i0)
         """
         expected = """
         [i0]
-        guard_value(i0, 0) []
+        guard_value(i0, 0)
         escape(3)
         jump(0)
         """
@@ -353,7 +353,7 @@
     def test_remove_guard_value_if_constant(self):
         ops = """
         [p1]
-        guard_value(p1, ConstPtr(myptr)) []
+        guard_value(p1, ConstPtr(myptr))
         jump(ConstPtr(myptr))
         """
         expected = """
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to