Author: Maciej Fijalkowski <fij...@gmail.com> Branch: optresult-unroll Changeset: r79058:89142fbe7604 Date: 2015-08-19 15:10 +0200 http://bitbucket.org/pypy/pypy/changeset/89142fbe7604/
Log: fix test_resume 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 @@ -9,7 +9,7 @@ from rpython.jit.metainterp.history import ConstInt, get_const_ptr_for_string from rpython.jit.metainterp import executor, compile, resume from rpython.jit.metainterp.resoperation import rop, ResOperation, InputArgInt,\ - OpHelpers + OpHelpers, InputArgRef from rpython.rlib.rarithmetic import LONG_BIT from rpython.jit.tool.oparser import parse @@ -2483,11 +2483,13 @@ fieldvalue.strip(), strict=False) index += 1 - def check_expanded_fail_descr(self, expectedtext, guard_opnum): + def check_expanded_fail_descr(self, expectedtext, guard_opnum, values=None): from rpython.jit.metainterp.test.test_resume import ResumeDataFakeReader from rpython.jit.metainterp.test.test_resume import MyMetaInterp guard_op, = [op for op in self.loop.operations if op.is_guard()] fail_args = guard_op.getfailargs() + if values is not None: + fail_args = values fdescr = guard_op.getdescr() assert fdescr.guard_opnum == guard_opnum reader = ResumeDataFakeReader(fdescr, fail_args, @@ -2727,11 +2729,12 @@ jump(p1, i2, i4) """ self.optimize_loop(ops, expected) - self.loop.inputargs[0].setref_base(self.nodeaddr) - self.check_expanded_fail_descr(''' + self.check_expanded_fail_descr( + ''' p1.nextdescr = p2 where p2 is a node_vtable, valuedescr=i2 - ''', rop.GUARD_TRUE) + ''', rop.GUARD_TRUE, values=[InputArgInt(0), + InputArgRef(self.nodeaddr)]) def test_expand_fail_lazy_setfield_2(self): ops = """ diff --git a/rpython/jit/metainterp/optimizeopt/test/test_util.py b/rpython/jit/metainterp/optimizeopt/test/test_util.py --- a/rpython/jit/metainterp/optimizeopt/test/test_util.py +++ b/rpython/jit/metainterp/optimizeopt/test/test_util.py @@ -111,6 +111,7 @@ node = lltype.malloc(NODE) node.value = 5 + node.next = node node.parent.typeptr = node_vtable nodeaddr = lltype.cast_opaque_ptr(llmemory.GCREF, node) #nodebox = InputArgRef(lltype.cast_opaque_ptr(llmemory.GCREF, node)) diff --git a/rpython/jit/metainterp/test/test_resume.py b/rpython/jit/metainterp/test/test_resume.py --- a/rpython/jit/metainterp/test/test_resume.py +++ b/rpython/jit/metainterp/test/test_resume.py @@ -1207,16 +1207,16 @@ modifier.vfieldboxes = {} vdescr = LLtypeMixin.nodesize2 - v4 = info.InstancePtrInfo(ConstAddr(LLtypeMixin.node_vtable_adr2, - LLtypeMixin.cpu), vdescr) + ca = ConstAddr(LLtypeMixin.node_vtable_adr2, LLtypeMixin.cpu) + v4 = info.InstancePtrInfo(ca, vdescr) b4s.set_forwarded(v4) - v4.setfield(LLtypeMixin.nextdescr, b2s) - v4.setfield(LLtypeMixin.valuedescr, b3s) - v4.setfield(LLtypeMixin.otherdescr, b5s) - v2 = info.InstancePtrInfo(ConstAddr(LLtypeMixin.node_vtable_adr, - LLtypeMixin.cpu), LLtypeMixin.nodesize) - v2.setfield(LLtypeMixin.nextdescr, b4s) - v2.setfield(LLtypeMixin.valuedescr, c1s) + v4.setfield(LLtypeMixin.nextdescr, ca, b2s) + v4.setfield(LLtypeMixin.valuedescr, ca, b3s) + v4.setfield(LLtypeMixin.otherdescr, ca, b5s) + ca = ConstAddr(LLtypeMixin.node_vtable_adr, LLtypeMixin.cpu) + v2 = info.InstancePtrInfo(ca, LLtypeMixin.nodesize) + v2.setfield(LLtypeMixin.nextdescr, b4s, ca) + v2.setfield(LLtypeMixin.valuedescr, c1s, ca) b2s.set_forwarded(v2) modifier.register_virtual_fields(b2s, [c1s, None, None, b4s]) @@ -1335,9 +1335,10 @@ modifier.vfieldboxes = {} v2 = info.StructPtrInfo(LLtypeMixin.ssize) b2s.set_forwarded(v2) - v2.setfield(LLtypeMixin.adescr, c1s) - v2.setfield(LLtypeMixin.bdescr, b4s) - modifier.register_virtual_fields(b2s, [c1s, b4s]) + v2.setfield(LLtypeMixin.adescr, b2s, c1s) + v2.setfield(LLtypeMixin.abisdescr, b2s, c1s) + v2.setfield(LLtypeMixin.bdescr, b2s, b4s) + modifier.register_virtual_fields(b2s, [c1s, c1s, b4s]) liveboxes = [] modifier._number_virtuals(liveboxes, FakeOptimizer(), 0) dump_storage(storage, liveboxes) @@ -1357,6 +1358,7 @@ expected = [ (rop.NEW, [], b2t.getref_base(), LLtypeMixin.ssize), (rop.SETFIELD_GC, [b2t, c1s], None, LLtypeMixin.adescr), + (rop.SETFIELD_GC, [b2t, c1s], None, LLtypeMixin.abisdescr), (rop.SETFIELD_GC, [b2t, b4t], None, LLtypeMixin.bdescr), ] with CompareableConsts(): _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit