Author: Richard Plangger <planri...@gmail.com>
Branch: vecopt-merge
Changeset: r80119:d847518f11de
Date: 2015-10-12 09:23 +0200
http://bitbucket.org/pypy/pypy/changeset/d847518f11de/

Log:    fixed the test suite (dependency, vecopt)

diff --git a/rpython/jit/metainterp/optimizeopt/optimizer.py 
b/rpython/jit/metainterp/optimizeopt/optimizer.py
--- a/rpython/jit/metainterp/optimizeopt/optimizer.py
+++ b/rpython/jit/metainterp/optimizeopt/optimizer.py
@@ -686,7 +686,7 @@
         assert pendingfields is not None
         if op.getdescr() is not None:
             descr = op.getdescr()
-            assert isinstance(descr, compile.ResumeAtPositionDescr)
+            assert isinstance(descr, compile.ResumeGuardDescr)
         else:
             descr = compile.invent_fail_descr_for_op(op.getopnum(), self)
             op.setdescr(descr)
diff --git a/rpython/jit/metainterp/optimizeopt/test/test_dependency.py 
b/rpython/jit/metainterp/optimizeopt/test/test_dependency.py
--- a/rpython/jit/metainterp/optimizeopt/test/test_dependency.py
+++ b/rpython/jit/metainterp/optimizeopt/test/test_dependency.py
@@ -7,7 +7,8 @@
         IndexVar, MemoryRef, Node)
 from rpython.jit.metainterp.optimizeopt.vector import VectorLoop
 from rpython.jit.metainterp.optimizeopt.test.test_util import (
-    LLtypeMixin, BaseTest, FakeMetaInterpStaticData, 
convert_old_style_to_targets)
+    LLtypeMixin, BaseTest, FakeMetaInterpStaticData, 
convert_old_style_to_targets,
+    FakeJitDriverStaticData)
 from rpython.jit.metainterp.resoperation import rop, ResOperation
 from rpython.jit.backend.llgraph.runner import ArrayDescr
 from rpython.jit.tool.oparser import OpParser
@@ -106,9 +107,14 @@
         jump = loop.operations[-1]
         loop = VectorLoop(label, loop.operations[0:-1], jump)
         loop.jump.setdescr(token)
+        class Optimizer(object):
+            metainterp_sd = FakeMetaInterpStaticData(self.cpu)
+            jitdriver_sd = FakeJitDriverStaticData()
+        opt = Optimizer()
+        opt.jitdriver_sd.vec = True
         for op in loop.operations:
             if op.is_guard() and not op.getdescr():
-                descr = invent_fail_descr_for_op(op.getopnum(), None)
+                descr = invent_fail_descr_for_op(op.getopnum(), opt)
                 op.setdescr(descr)
         return loop
 
diff --git a/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py 
b/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
--- a/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
+++ b/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
@@ -1315,118 +1315,6 @@
         except NotAVectorizeableLoop:
             pass
 
-    def test_axis_sum(self):
-        # TODO
-        trace = """
-        [i1, p10, i11, p8, i12, p3, p4, p13, i14, i15, p6, p9, i16, i17, i18, 
i19, i20, i21, i22, i23]
-        f24 = raw_load_f(i16, i12, descr=floatarraydescr)
-        guard_not_invalidated() [i1, p9, p8, p6, p4, p3, f24, i11, i15, p13, 
i12, i14, p10]
-        i26 = int_add(i12, 8)
-        i27 = getarrayitem_gc_f(p13, i1, descr=floatarraydescr)
-        i28 = int_is_zero(i27)
-        guard_false(i28) [i1, p9, p8, p6, p4, p3, f24, i26, i11, i15, p13, 
None, i14, p10]
-        f30 = raw_load_f(i17, i15, descr=floatarraydescr)
-        f31 = float_add(f30, f24)
-        raw_store(i18, i15, f31, descr=floatarraydescr)
-        i33 = int_add(i14, 1)
-        i34 = getarrayitem_gc_f(p13, i19, descr=floatarraydescr)
-        i35 = int_lt(i34, i20)
-        guard_true(i35) [i1, p9, p8, p6, p4, p3, i21, i34, i15, i33, i19, p13, 
f31, None, i26, i11, None, None, None, i14, p10]
-        i37 = int_add(i34, 1)
-        setarrayitem_gc(p13, i19, i37, descr=floatarraydescr)
-        i38 = int_add(i15, i22)
-        i39 = int_ge(i33, i23)
-        guard_false(i39) [i1, p9, p8, p6, p4, p3, i33, i38, None, None, i26, 
i11, None, p13, None, None, p10]
-        jump(i1, p10, i11, p8, i26, p3, p4, p13, i33, i38, p6, p9, i16, i17, 
i18, i19, i20, i21, i22, i23)
-        """
-        loop = self.parse_loop(trace)
-        self.vectorize(loop)
-
-    def test_cast_1(self):
-        # TODO
-        trace = self.parse_loop("""
-        [i9, i10, p2, p11, i12, i13, p4, p5, p14, i15, p8, i16, p17, i18, i19, 
i20, i21, i22, i23]
-        i24 = raw_load_i(i20, i16, descr=float32arraydescr)
-        guard_not_invalidated() [p8, p5, p4, p2, i24, p17, i13, i12, i10, i19, 
p14, p11, i18, i15, i16, None]
-        i27 = int_add(i16, 4)
-        i28 = raw_load_i(i21, i19, descr=float32arraydescr)
-        i30 = int_add(i19, 4)
-        f31 = cast_singlefloat_to_float(i24)
-        f32 = cast_singlefloat_to_float(i28)
-        f33 = float_add(f31, f32)
-        i34 = cast_float_to_singlefloat(f33)
-        raw_store(i22, i13, i34, descr=float32arraydescr)
-        i36 = int_add(i12, 1)
-        i38 = int_add(i13, 4)
-        i39 = int_ge(i36, i23)
-        guard_false(i39) [p8, p5, p4, p2, i27, i28, i30, i24, i38, i36, p17, 
None, None, None, None, p14, p11, i18, i15, None, None]
-        jump(i24, i28, p2, p11, i36, i38, p4, p5, p14, i15, p8, i27, p17, i18, 
i30, i20, i21, i22, i23)
-        """)
-        opt = self.vectorize(trace)
-        self.debug_print_operations(trace)
-
-    def test_truediv_abs_neg_float(self):
-        # TODO
-        trace = self.parse_loop("""
-        [f9,p10,i11,p4,i12,p2,p5,p13,i14,p7,i15,p8,i16,f17,i18,i19]
-        f20 = raw_load_f(i16, i12, descr=floatarraydescr)
-        guard_not_invalidated() [p8, p7, p5, p4, p2, f20, None, i12, i11, p10, 
i15, i14, p13]
-        i23 = int_add(i12, 8)
-        f24 = float_truediv(f20, f17)
-        f25 = float_abs(f20)
-        f26 = float_neg(f20)
-        raw_store(i18, i15, f24, descr=floatarraydescr)
-        i26 = int_add(i14, 1)
-        i28 = int_add(i15, 8)
-        i29 = int_ge(i26, i19)
-        guard_false(i29) [p8, p7, p5, p4, p2, f20, i23, i28, None, p13]
-        jump(f20, p10, i11, p4, i23, p2, p5, p13, i26, p7, i28, p8, i16, f17, 
i18, i19)
-        """)
-        opt = self.vectorize(trace)
-        self.debug_print_operations(trace)
-
-
-    def test_all_guard(self):
-        # TODO
-        trace = """
-        [p0, p3, i4, i5, i6, i7]
-        f8 = raw_load_f(i6, i5, descr=floatarraydescr)
-        guard_not_invalidated() [p0, f8, p3, i5, i4]
-        i9 = cast_float_to_int(f8)
-        i11 = int_and(i9, 255)
-        guard_false(i11) [p0, p3, i5, i4]
-        i13 = int_add(i4, 1)
-        i15 = int_add(i5, 8)
-        i16 = int_ge(i13, i7)
-        guard_false(i16) [p0, i13, i15, p3, None, None]
-        jump(p0, p3, i13, i15, i6, i7)
-        """
-        loop = self.parse_loop(trace)
-        opt = self.vectorize(loop)
-        self.debug_print_operations(loop)
-
-    def test_111(self):
-        trace = """
-        [p0, p1, p2, p3, i4, p5, p6, p7, i8, p9, i10, p11]
-        guard_not_invalidated(descr=<ResumeGuardNotInvalidated object at 
0x7f4dec0129f8>) [p1, p0, p2, p3, p5, p6, i4]
-        i12 = int_lt(i4, i8)
-        guard_true(i12, descr=<ResumeGuardTrueDescr object at 0x7f4dec012a70>) 
[p1, p0, p2, p3, p5, p6, i8, i4]
-        i13 = uint_ge(i4, i10)
-        guard_false(i13, descr=<ResumeGuardFalseDescr object at 
0x7f4dec012ae8>) [p1, p0, i10, i4, p9, p2, p3, p5, p6, None, None]
-        i15 = getarrayitem_gc_i(p11, i4, descr=arraydescr)
-        i17 = int_add_ovf(i15, 1)
-        guard_no_overflow(descr=<ResumeGuardNoOverflowDescr object at 
0x7f4dec012b60>) [p1, p0, i17, p2, p3, p5, p6, i15, None, i4]
-        setarrayitem_gc(p11, i4, i17, descr=arraydescr)
-        i19 = int_add(i4, 1)
-        i21 = getfield_raw_i(139972894828928, descr=<FieldS 
pypysig_long_struct.c_value 0>)
-        i23 = int_lt(i21, 0)
-        guard_false(i23, descr=<ResumeGuardFalseDescr object at 
0x7f4dec012bd8>) [p1, p0, p2, p3, p5, p6, i19, None, None, None]
-        i24 = arraylen_gc(p11, descr=arraydescr)
-        jump(p0, p1, p2, p3, i19, p5, p6, p7, i8, p9, i10, p11)
-        """
-        loop = self.parse_loop(trace)
-        opt = self.schedule(loop, with_guard_opt=True)
-        self.debug_print_operations(loop)
 
 class TestLLtype(BaseTestVectorize, LLtypeMixin):
     pass
diff --git a/rpython/jit/metainterp/optimizeopt/vector.py 
b/rpython/jit/metainterp/optimizeopt/vector.py
--- a/rpython/jit/metainterp/optimizeopt/vector.py
+++ b/rpython/jit/metainterp/optimizeopt/vector.py
@@ -84,7 +84,6 @@
             prefix_label = self.prefix_label.copy()
             renamer.rename(prefix_label)
         oplist = []
-        op1 = self.operations[2]
         for op in self.operations:
             newop = op.copy()
             renamer.rename(newop)
diff --git a/rpython/jit/metainterp/resoperation.py 
b/rpython/jit/metainterp/resoperation.py
--- a/rpython/jit/metainterp/resoperation.py
+++ b/rpython/jit/metainterp/resoperation.py
@@ -81,6 +81,10 @@
     def is_vector(self):
         return False
 
+    def returns_void(self):
+        return False
+
+
 def ResOperation(opnum, args, descr=None):
     cls = opclasses[opnum]
     op = cls()
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to