[pypy-commit] pypy array-propagate-len: more tests for getfield_gc, failing test for arrays

squeaky noreply at buildbot.pypy.org
Sat Feb 15 18:21:18 CET 2014


Author: Squeaky <squeaky_pl at gmx.com>
Branch: array-propagate-len
Changeset: r69155:14f943c2f482
Date: 2014-02-14 22:42 +0100
http://bitbucket.org/pypy/pypy/changeset/14f943c2f482/

Log:	more tests for getfield_gc, failing test for arrays

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
@@ -5200,7 +5200,7 @@
         """
         self.optimize_loop(ops, ops)
 
-    def test_getfield_cmp_outside_intbounds(self):
+    def test_getfield_cmp_above_bounds(self):
         ops = """
         [p0]
         i0 = getfield_gc(p0, descr=chardescr)
@@ -5214,6 +5214,46 @@
         """
         self.optimize_loop(ops, expected)
 
+    def test_getfield_cmp_below_bounds(self):
+        ops = """
+        [p0]
+        i0 = getfield_gc(p0, descr=chardescr)
+        i1 = int_gt(i0, -1)
+        guard_true(i1) []
+        """
+
+        expected = """
+        [p0]
+        i0 = getfield_gc(p0, descr=chardescr)
+        """
+        self.optimize_loop(ops, expected)
+
+    def test_getfield_cmp_in_bounds(self):
+        ops = """
+        [p0]
+        i0 = getfield_gc(p0, descr=chardescr)
+        i1 = int_gt(i0, 0)
+        guard_true(i1) []
+        i2 = int_lt(i0, 255)
+        guard_true(i2) []
+        """
+        self.optimize_loop(ops, ops)
+
+
+    def test_rawarray_cmp_outside_intbounds(self):
+        ops = """
+        [i0]
+        i1 = getarrayitem_raw(i0, 0, descr=rawarraydescr_char)
+        i2 = int_lt(i1, 256)
+        guard_true(i2) []
+        """
+
+        expected = """
+        [i0]
+        i1 = getarrayitem_raw(i0, 0, descr=rawarraydescr_char)
+        """
+        self.optimize_loop(ops, expected)
+
 
 class TestLLtype(BaseTestOptimizeBasic, LLtypeMixin):
     pass


More information about the pypy-commit mailing list