Author: Maciej Fijalkowski <fij...@gmail.com>
Branch: 
Changeset: r67357:5c7098ff9525
Date: 2013-10-14 14:39 +0200
http://bitbucket.org/pypy/pypy/changeset/5c7098ff9525/

Log:    merge

diff --git a/rpython/jit/metainterp/optimizeopt/rewrite.py 
b/rpython/jit/metainterp/optimizeopt/rewrite.py
--- a/rpython/jit/metainterp/optimizeopt/rewrite.py
+++ b/rpython/jit/metainterp/optimizeopt/rewrite.py
@@ -129,6 +129,7 @@
             self.make_equal_to(op.result, v1)
         else:
             self.emit_operation(op)
+            self.pure(rop.INT_ADD, [op.getarg(1), op.getarg(0)], op.result)
             # Synthesize the reverse op for optimize_default to reuse
             self.pure(rop.INT_SUB, [op.result, op.getarg(1)], op.getarg(0))
             self.pure(rop.INT_SUB, [op.result, op.getarg(0)], op.getarg(1))
diff --git a/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py 
b/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py
--- a/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py
+++ b/rpython/jit/metainterp/optimizeopt/test/test_optimizebasic.py
@@ -3670,6 +3670,20 @@
         """
         self.optimize_loop(ops, expected)
 
+    def test_int_add_commutative(self):
+        ops = """
+        [i0, i1]
+        i2 = int_add(i0, i1)
+        i3 = int_add(i1, i0)
+        jump(i2, i3)
+        """
+        expected = """
+        [i0, i1]
+        i2 = int_add(i0, i1)
+        jump(i2, i2)
+        """
+        self.optimize_loop(ops, expected)
+
     def test_framestackdepth_overhead(self):
         ops = """
         [p0, i22]
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to