Author: Berkin Ilbeyi <[email protected]>
Branch: fold-arith-ops
Changeset: r77437:fda606ceff6b
Date: 2015-05-20 16:05 -0400
http://bitbucket.org/pypy/pypy/changeset/fda606ceff6b/

Log:    more/better testing for removing multiple int_add's

diff --git a/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py 
b/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py
--- a/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py
+++ b/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py
@@ -3079,7 +3079,7 @@
         """
         self.optimize_loop(ops, expected, preamble)
 
-    def test_remove_multiple_add(self):
+    def test_remove_multiple_add_1(self):
         ops = """
         [i0]
         i1 = int_add(i0, 1)
@@ -3090,12 +3090,39 @@
         expected = """
         [i0]
         i1 = int_add(i0, 1)
-        i2 = int_add(i1, 2)
+        i2 = int_add(i0, 3)
         i3 = int_add(i0, 4)
         jump(i3)
         """
         self.optimize_loop(ops, expected)
 
+    def test_remove_multiple_add_2(self):
+        ops = """
+        [i0]
+        i1 = int_add(i0, 1)
+        i2 = int_add(2, i1)
+        i3 = int_add(i2, 1)
+        i4 = int_mul(i3, 5)
+        i5 = int_add(5, i4)
+        i6 = int_add(1, i5)
+        i7 = int_add(i2, i6)
+        i8 = int_add(i7, 1)
+        jump(i8)
+        """
+        expected = """
+        [i0]
+        i1 = int_add(i0, 1)
+        i2 = int_add(i0, 3)
+        i3 = int_add(i0, 4)
+        i4 = int_mul(i3, 5)
+        i5 = int_add(5, i4)
+        i6 = int_add(i4, 6)
+        i7 = int_add(i2, i6)
+        i8 = int_add(i7, 1)
+        jump(i8)
+        """
+        self.optimize_loop(ops, expected)
+
     def test_remove_duplicate_pure_op(self):
         ops = """
         [p1, p2]
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to