Author: Carl Friedrich Bolz <cfb...@gmx.de> Branch: value-profiling Changeset: r79954:a891bd9b2efa Date: 2015-10-03 15:38 +0100 http://bitbucket.org/pypy/pypy/changeset/a891bd9b2efa/
Log: more test_pypy_c fixes diff --git a/pypy/module/pypyjit/test_pypy_c/test_misc.py b/pypy/module/pypyjit/test_pypy_c/test_misc.py --- a/pypy/module/pypyjit/test_pypy_c/test_misc.py +++ b/pypy/module/pypyjit/test_pypy_c/test_misc.py @@ -111,20 +111,16 @@ return sa # log = self.run(main, [1000]) - assert log.result == 4000 + assert log.result == main(1000) loop, = log.loops_by_filename(self.filepath) assert loop.match(""" guard_not_invalidated(descr=...) i12 = int_is_true(i4) guard_true(i12, descr=...) - i10p = getfield_gc_pure_i(p10, descr=...) - i10 = int_mul_ovf(2, i10p) + i14 = int_add_ovf(i13, 2) guard_no_overflow(descr=...) - i14 = int_add_ovf(i13, i10) + i13 = int_add_ovf(i14, 2) guard_no_overflow(descr=...) - i13 = int_add_ovf(i14, i9) - guard_no_overflow(descr=...) - setfield_gc(p17, p10, descr=...) i17 = int_sub_ovf(i4, 1) guard_no_overflow(descr=...) --TICK-- @@ -146,12 +142,12 @@ assert log.result == 1000 * 999 / 2 loop, = log.loops_by_filename(self.filepath) assert loop.match(""" - guard_not_invalidated(descr=...) i15 = int_lt(i10, i11) guard_true(i15, descr=...) i17 = int_add(i10, 1) + setfield_gc(p9, i17, descr=<.* .*W_XRangeIterator.inst_current .*>) + guard_not_invalidated(descr=...) i18 = force_token() - setfield_gc(p9, i17, descr=<.* .*W_XRangeIterator.inst_current .*>) i21 = int_lt(i10, 0) guard_false(i21, descr=...) i22 = int_lt(i10, i14) @@ -181,9 +177,9 @@ i16 = int_ge(i11, i12) guard_false(i16, descr=...) i20 = int_add(i11, 1) - i21 = force_token() setfield_gc(p4, i20, descr=<.* .*W_AbstractSeqIterObject.inst_index .*>) guard_not_invalidated? + i21 = force_token() i88 = int_sub(i9, 1) i25 = int_ge(i11, i9) guard_false(i25, descr=...) @@ -214,9 +210,9 @@ i17 = int_mul(i11, i14) i18 = int_add(i15, i17) i20 = int_add(i11, 1) - i21 = force_token() setfield_gc(p4, i20, descr=<.* .*W_AbstractSeqIterObject.inst_index .*>) guard_not_invalidated? + i19 = force_token() i95 = int_sub(i9, 1) i23 = int_lt(i18, 0) guard_false(i23, descr=...) @@ -270,16 +266,15 @@ guard_false(i16, descr=...) p17 = getarrayitem_gc_r(p16, i12, descr=<ArrayP .>) i19 = int_add(i12, 1) + i21 = getfield_gc_i(p17, descr=<FieldS .*W_Array.*.inst_len .*>) setfield_gc(p9, i19, descr=<FieldS .*W_AbstractSeqIterObject.inst_index .*>) - guard_nonnull_class(p17, ..., descr=...) - guard_not_invalidated? - i21 = getfield_gc_i(p17, descr=<FieldS .*W_Array.*.inst_len .*>) i23 = int_lt(0, i21) guard_true(i23, descr=...) i24 = getfield_gc_i(p17, descr=<FieldU .*W_ArrayTypei.inst_buffer .*>) i25 = getarrayitem_raw_i(i24, 0, descr=<.*>) i27 = int_lt(1, i21) guard_false(i27, descr=...) + guard_not_invalidated? i28 = int_add_ovf(i10, i25) guard_no_overflow(descr=...) --TICK-- @@ -304,6 +299,7 @@ assert log.jit_summary.tracing_no == 1 loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated? i11 = int_lt(i7, 300) guard_true(i11, descr=...) i12 = int_add_ovf(i8, i9) diff --git a/pypy/module/pypyjit/test_pypy_c/test_string.py b/pypy/module/pypyjit/test_pypy_c/test_string.py --- a/pypy/module/pypyjit/test_pypy_c/test_string.py +++ b/pypy/module/pypyjit/test_pypy_c/test_string.py @@ -24,9 +24,9 @@ assert log.result == 300 loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated(descr=...) i14 = int_lt(i6, i9) guard_true(i14, descr=...) - guard_not_invalidated(descr=...) i16 = int_eq(i6, %d) guard_false(i16, descr=...) i15 = int_mod(i6, i10) @@ -64,9 +64,9 @@ assert log.result == main(1100) loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated(descr=...) i11 = int_lt(i6, i7) guard_true(i11, descr=...) - guard_not_invalidated(descr=...) i13 = int_eq(i6, %d) # value provided below guard_false(i13, descr=...) i15 = int_mod(i6, 10) @@ -105,9 +105,9 @@ assert log.result == main(1000) loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated(descr=...) i79 = int_gt(i74, 0) guard_true(i79, descr=...) - guard_not_invalidated(descr=...) p80 = call_r(ConstClass(ll_int2dec__Signed), i74, descr=<Callr . i EF=3>) guard_no_exception(descr=...) i85 = strlen(p80) diff --git a/pypy/module/pypyjit/test_pypy_c/test_struct.py b/pypy/module/pypyjit/test_pypy_c/test_struct.py --- a/pypy/module/pypyjit/test_pypy_c/test_struct.py +++ b/pypy/module/pypyjit/test_pypy_c/test_struct.py @@ -30,7 +30,7 @@ # This could, of course stand some improvement, to remove all these # arithmatic ops, but we've removed all the core overhead. assert loop.match_by_id("struct", """ - guard_not_invalidated(descr=...) + guard_not_invalidated? # struct.pack %s i11 = int_and(i4, 255) @@ -67,7 +67,7 @@ loop, = log.loops_by_filename(self.filepath) assert loop.match_by_id('struct', """ - guard_not_invalidated(descr=...) + guard_not_invalidated? # struct.pack %s i11 = int_and(i4, 255) diff --git a/pypy/module/pypyjit/test_pypy_c/test_thread.py b/pypy/module/pypyjit/test_pypy_c/test_thread.py --- a/pypy/module/pypyjit/test_pypy_c/test_thread.py +++ b/pypy/module/pypyjit/test_pypy_c/test_thread.py @@ -20,6 +20,7 @@ assert round(log.result, 6) == round(main(500), 6) loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated(descr=...) i2 = int_lt(i0, i1) guard_true(i2, descr=...) i3 = int_add(i0, 1) @@ -40,12 +41,11 @@ assert round(log.result, 6) == round(main(500), 6) loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated(descr=...) i53 = int_lt(i48, i27) guard_true(i53, descr=...) - i54 = int_add_ovf(i48, i47) - guard_no_overflow(descr=...) + i54 = int_add(i48, 1) --TICK-- - i58 = arraylen_gc(p43, descr=...) jump(..., descr=...) """) @@ -60,6 +60,7 @@ assert log.result == main(500) loop, = log.loops_by_filename(self.filepath) assert loop.match(""" + guard_not_invalidated(descr=...) i56 = int_gt(i44, 0) guard_true(i56, descr=...) p57 = force_token() @@ -67,11 +68,11 @@ i58 = call_release_gil_i(0, _, i37, 1, descr=<Calli 4 ii EF=7>) guard_not_forced(descr=...) guard_no_exception(descr=...) + guard_not_invalidated(descr=...) i58 = int_sub(i44, 1) i59 = call_i(ConstClass(RPyThreadReleaseLock), i37, descr=<Calli . i EF=2>) i60 = int_is_true(i59) guard_false(i60, descr=...) - guard_not_invalidated(descr=...) --TICK-- jump(..., descr=...) """) diff --git a/pypy/module/pypyjit/test_pypy_c/test_weakref.py b/pypy/module/pypyjit/test_pypy_c/test_weakref.py --- a/pypy/module/pypyjit/test_pypy_c/test_weakref.py +++ b/pypy/module/pypyjit/test_pypy_c/test_weakref.py @@ -23,19 +23,17 @@ i60 = int_lt(i58, i31) guard_true(i60, descr=...) i61 = int_add(i58, 1) + setfield_gc(p18, i61, descr=<FieldS pypy.module.__builtin__.functional.W_XRangeIterator.inst_current 8>) + guard_not_invalidated(descr=...) p62 = getfield_gc_r(ConstPtr(ptr37), descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy \d+>) - setfield_gc(p18, i61, descr=<FieldS pypy.module.__builtin__.functional.W_XRangeIterator.inst_current 8>) guard_value(p62, ConstPtr(ptr39), descr=...) - guard_not_invalidated(descr=...) p64 = getfield_gc_r(ConstPtr(ptr40), descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy \d+>) guard_value(p64, ConstPtr(ptr42), descr=...) p65 = getfield_gc_r(p14, descr=<FieldP pypy.objspace.std.mapdict.W_ObjectObjectSize5.inst_map \d+>) guard_value(p65, ConstPtr(ptr45), descr=...) - p66 = getfield_gc_r(p14, descr=<FieldP pypy.objspace.std.mapdict.W_ObjectObjectSize5.inst__value0 \d+>) - guard_nonnull_class(p66, ..., descr=...) p67 = force_token() setfield_gc(p0, p67, descr=<FieldP pypy.interpreter.pyframe.PyFrame.vable_token \d+>) - p68 = call_may_force_r(ConstClass(WeakrefLifelineWithCallbacks.make_weakref_with_callback), p66, ConstPtr(ptr50), p14, ConstPtr(ptr51), descr=<Callr \d rrrr EF=7>) + p68 = call_may_force_r(ConstClass(WeakrefLifelineWithCallbacks.make_weakref_with_callback), ConstPtr(ptr49), ConstPtr(ptr50), p14, ConstPtr(ptr51), descr=<Callr \d rrrr EF=7>) guard_not_forced(descr=...) guard_no_exception(descr=...) guard_nonnull_class(p68, ..., descr=...) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit