[pypy-commit] pypy default: Made a bunch of guard numbers into "..." in the JIT tests so they pass consistantly. Also sprinked guard_not_invalidated in a few places, and removed a few instructions.
alex_gaynor
noreply at buildbot.pypy.org
Tue Jul 12 04:50:55 CEST 2011
Author: Alex Gaynor <alex.gaynor at gmail.com>
Branch:
Changeset: r45494:3b4ad4eaddf7
Date: 2011-07-11 19:50 -0700
http://bitbucket.org/pypy/pypy/changeset/3b4ad4eaddf7/
Log: Made a bunch of guard numbers into "..." in the JIT tests so they
pass consistantly. Also sprinked guard_not_invalidated in a few
places, and removed a few instructions.
diff --git a/pypy/module/pypyjit/test_pypy_c/test_array.py b/pypy/module/pypyjit/test_pypy_c/test_array.py
--- a/pypy/module/pypyjit/test_pypy_c/test_array.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_array.py
@@ -19,7 +19,7 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i7 = int_lt(i5, i6)
- guard_true(i7, descr=<Guard3>)
+ guard_true(i7, descr=...)
i9 = int_add(i5, 1)
--TICK--
jump(p0, p1, p2, p3, p4, i9, i6, descr=<Loop0>)
@@ -39,11 +39,12 @@
assert log.result == 19507200
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
+ guard_not_invalidated(descr=...)
i13 = int_lt(i7, i9)
- guard_true(i13, descr=<Guard3>)
+ guard_true(i13, descr=...)
i15 = getarrayitem_raw(i10, i7, descr=<.*ArrayNoLengthDescr>)
i16 = int_add_ovf(i8, i15)
- guard_no_overflow(descr=<Guard4>)
+ guard_no_overflow(descr=...)
i18 = int_add(i7, 1)
--TICK--
jump(p0, p1, p2, p3, p4, p5, i18, i16, p8, i9, i10, descr=<Loop0>)
@@ -68,16 +69,17 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i13 = int_lt(i8, 307200)
- guard_true(i13, descr=<Guard3>)
+ guard_true(i13, descr=...)
+ guard_not_invalidated(descr=...)
# the bound check guard on img has been killed (thanks to the asserts)
i14 = getarrayitem_raw(i10, i8, descr=<.*ArrayNoLengthDescr>)
i15 = int_add_ovf(i9, i14)
- guard_no_overflow(descr=<Guard4>)
+ guard_no_overflow(descr=...)
i17 = int_sub(i8, 640)
# the bound check guard on intimg has been killed (thanks to the asserts)
i18 = getarrayitem_raw(i11, i17, descr=<.*ArrayNoLengthDescr>)
i19 = int_add_ovf(i18, i15)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
# on 64bit, there is a guard checking that i19 actually fits into 32bit
...
setarrayitem_raw(i11, i8, _, descr=<.*ArrayNoLengthDescr>)
diff --git a/pypy/module/pypyjit/test_pypy_c/test_call.py b/pypy/module/pypyjit/test_pypy_c/test_call.py
--- a/pypy/module/pypyjit/test_pypy_c/test_call.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_call.py
@@ -80,19 +80,19 @@
#
assert entry_bridge.match_by_id('call', """
p29 = getfield_gc(ConstPtr(ptr28), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value .*>)
- guard_nonnull_class(p29, ConstClass(Function), descr=<Guard18>)
+ guard_nonnull_class(p29, ConstClass(Function), descr=...)
p33 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code .*>)
- guard_value(p33, ConstPtr(ptr34), descr=<Guard19>)
+ guard_value(p33, ConstPtr(ptr34), descr=...)
p35 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals .*>)
p36 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure .*>)
p38 = call(ConstClass(getexecutioncontext), descr=<GcPtrCallDescr>)
p39 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref .*>)
i40 = force_token()
p41 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc .*>)
- guard_isnull(p41, descr=<Guard20>)
+ guard_isnull(p41, descr=...)
i42 = getfield_gc(p38, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc .*>)
i43 = int_is_zero(i42)
- guard_true(i43, descr=<Guard21>)
+ guard_true(i43, descr=...)
i50 = force_token()
""")
#
@@ -101,16 +101,16 @@
loop, = log.loops_by_id('call')
assert loop.match("""
i12 = int_lt(i5, i6)
- guard_true(i12, descr=<Guard3>)
+ guard_true(i12, descr=...)
i13 = force_token()
i15 = int_add(i5, 1)
i16 = int_add_ovf(i15, i7)
- guard_no_overflow(descr=<Guard4>)
+ guard_no_overflow(descr=...)
i18 = force_token()
i20 = int_add_ovf(i16, 1)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
i21 = int_add_ovf(i20, i7)
- guard_no_overflow(descr=<Guard6>)
+ guard_no_overflow(descr=...)
--TICK--
jump(p0, p1, p2, p3, p4, i21, i6, i7, p8, p9, p10, p11, descr=<Loop0>)
""")
@@ -146,14 +146,14 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i15 = int_lt(i6, i9)
- guard_true(i15, descr=<Guard3>)
- guard_not_invalidated(descr=<Guard4>)
+ guard_true(i15, descr=...)
+ guard_not_invalidated(descr=...)
i16 = force_token()
i17 = int_add_ovf(i10, i6)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
i18 = force_token()
i19 = int_add_ovf(i10, i17)
- guard_no_overflow(descr=<Guard6>)
+ guard_no_overflow(descr=...)
--TICK--
jump(p0, p1, p2, p3, p4, p5, i19, p7, i17, i9, i10, p11, p12, p13, descr=<Loop0>)
""")
@@ -180,11 +180,11 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i14 = int_lt(i6, i9)
- guard_true(i14, descr=<Guard3>)
- guard_not_invalidated(descr=<Guard4>)
+ guard_true(i14, descr=...)
+ guard_not_invalidated(descr=...)
i15 = force_token()
i17 = int_add_ovf(i8, 1)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
i18 = force_token()
--TICK--
jump(p0, p1, p2, p3, p4, i8, p7, i17, p8, i9, p10, p11, p12, descr=<Loop0>)
@@ -281,25 +281,23 @@
loop0, = log.loops_by_id('g1')
assert loop0.match_by_id('g1', """
i20 = force_token()
- setfield_gc(p4, i19, descr=<.*W_AbstractSeqIterObject.inst_index .*>)
i22 = int_add_ovf(i8, 3)
- guard_no_overflow(descr=<Guard4>)
+ guard_no_overflow(descr=...)
""")
assert loop0.match_by_id('h1', """
i20 = force_token()
i22 = int_add_ovf(i8, 2)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
""")
assert loop0.match_by_id('g2', """
i27 = force_token()
i29 = int_add_ovf(i26, 3)
- guard_no_overflow(descr=<Guard6>)
+ guard_no_overflow(descr=...)
""")
#
loop1, = log.loops_by_id('g3')
assert loop1.match_by_id('g3', """
i21 = force_token()
- setfield_gc(p4, i20, descr=<.* .*W_AbstractSeqIterObject.inst_index .*>)
i23 = int_add_ovf(i9, 3)
guard_no_overflow(descr=...)
""")
@@ -352,7 +350,7 @@
i13 = getfield_gc(p8, descr=<SignedFieldDescr list.length .*>)
i15 = int_add(i13, 1)
call(ConstClass(_ll_list_resize_ge__listPtr_Signed), p8, i15, descr=<VoidCallDescr>)
- guard_no_exception(descr=<Guard4>)
+ guard_no_exception(descr=...)
p17 = getfield_gc(p8, descr=<GcPtrFieldDescr list.items .*>)
p19 = new_with_vtable(ConstClass(W_IntObject))
setfield_gc(p19, i12, descr=<SignedFieldDescr .*W_IntObject.inst_intval .*>)
@@ -404,9 +402,9 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i10 = int_lt(i5, i6)
- guard_true(i10, descr=<Guard3>)
+ guard_true(i10, descr=...)
+ guard_not_invalidated(descr=...)
i120 = int_add(i5, 1)
- guard_not_invalidated(descr=<Guard4>)
--TICK--
jump(..., descr=<Loop0>)
""")
diff --git a/pypy/module/pypyjit/test_pypy_c/test_exception.py b/pypy/module/pypyjit/test_pypy_c/test_exception.py
--- a/pypy/module/pypyjit/test_pypy_c/test_exception.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_exception.py
@@ -36,11 +36,11 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i5 = int_is_true(i3)
- guard_true(i5, descr=<Guard3>)
- guard_not_invalidated(descr=<Guard4>)
+ guard_true(i5, descr=...)
+ guard_not_invalidated(descr=...)
--EXC-TICK--
i12 = int_sub_ovf(i3, 1)
- guard_no_overflow(descr=<Guard6>)
+ guard_no_overflow(descr=...)
--TICK--
jump(..., descr=<Loop0>)
""")
@@ -84,8 +84,8 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i7 = int_lt(i4, i5)
- guard_true(i7, descr=<Guard3>)
- guard_not_invalidated(descr=<Guard4>)
+ guard_true(i7, descr=...)
+ guard_not_invalidated(descr=...)
--EXC-TICK--
i14 = int_add(i4, 1)
--TICK--
diff --git a/pypy/module/pypyjit/test_pypy_c/test_import.py b/pypy/module/pypyjit/test_pypy_c/test_import.py
--- a/pypy/module/pypyjit/test_pypy_c/test_import.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_import.py
@@ -15,13 +15,13 @@
assert log.result == 500
loop, = log.loops_by_id('import')
assert loop.match_by_id('import', """
+ guard_not_invalidated(descr=...)
p11 = getfield_gc(ConstPtr(ptr10), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
- guard_value(p11, ConstPtr(ptr12), descr=<Guard4>)
- guard_not_invalidated(descr=<Guard5>)
+ guard_value(p11, ConstPtr(ptr12), descr=...)
p14 = getfield_gc(ConstPtr(ptr13), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
p16 = getfield_gc(ConstPtr(ptr15), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
- guard_value(p14, ConstPtr(ptr17), descr=<Guard6>)
- guard_isnull(p16, descr=<Guard7>)
+ guard_value(p14, ConstPtr(ptr17), descr=...)
+ guard_isnull(p16, descr=...)
""")
def test_import_fast_path(self, tmpdir):
diff --git a/pypy/module/pypyjit/test_pypy_c/test_instance.py b/pypy/module/pypyjit/test_pypy_c/test_instance.py
--- a/pypy/module/pypyjit/test_pypy_c/test_instance.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_instance.py
@@ -22,10 +22,10 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i7 = int_lt(i5, i6)
- guard_true(i7, descr=<Guard3>)
- guard_not_invalidated(descr=<Guard4>)
+ guard_true(i7, descr=...)
+ guard_not_invalidated(descr=...)
i9 = int_add_ovf(i5, 2)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
--TICK--
jump(p0, p1, p2, p3, p4, i9, i6, descr=<Loop0>)
""")
@@ -47,10 +47,10 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i9 = int_lt(i5, i6)
- guard_true(i9, descr=<Guard3>)
- guard_not_invalidated(descr=<Guard4>)
+ guard_true(i9, descr=...)
+ guard_not_invalidated(descr=...)
i10 = int_add_ovf(i5, i7)
- guard_no_overflow(descr=<Guard5>)
+ guard_no_overflow(descr=...)
--TICK--
jump(p0, p1, p2, p3, p4, i10, i6, p7, i7, p8, descr=<Loop0>)
""")
diff --git a/pypy/module/pypyjit/test_pypy_c/test_min_max.py b/pypy/module/pypyjit/test_pypy_c/test_min_max.py
--- a/pypy/module/pypyjit/test_pypy_c/test_min_max.py
+++ b/pypy/module/pypyjit/test_pypy_c/test_min_max.py
@@ -17,6 +17,7 @@
assert loop.match("""
i7 = int_lt(i4, 300)
guard_true(i7, descr=...)
+ guard_not_invalidated(descr=...)
i9 = int_add_ovf(i5, 3000)
guard_no_overflow(descr=...)
i11 = int_add(i4, 1)
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
@@ -84,7 +84,7 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i9 = float_lt(f5, f7)
- guard_true(i9, descr=<Guard3>)
+ guard_true(i9, descr=...)
f10 = float_add(f8, f5)
--TICK--
jump(p0, p1, p2, p3, p4, f10, p6, f7, f8, descr=<Loop0>)
@@ -107,19 +107,19 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i16 = int_ge(i11, i12)
- guard_false(i16, descr=<Guard3>)
+ guard_false(i16, descr=...)
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(descr=<Guard4>)
+ guard_not_invalidated(descr=...)
i23 = int_lt(i18, 0)
- guard_false(i23, descr=<Guard5>)
+ guard_false(i23, descr=...)
i25 = int_ge(i18, i9)
- guard_false(i25, descr=<Guard6>)
+ guard_false(i25, descr=...)
i27 = int_add_ovf(i7, i18)
- guard_no_overflow(descr=<Guard7>)
+ guard_no_overflow(descr=...)
--TICK--
jump(..., descr=<Loop0>)
""")
@@ -164,20 +164,20 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i16 = int_ge(i12, i13)
- guard_false(i16, descr=<Guard3>)
+ guard_false(i16, descr=...)
p17 = getarrayitem_gc(p15, i12, descr=<GcPtrArrayDescr>)
i19 = int_add(i12, 1)
setfield_gc(p9, i19, descr=<SignedFieldDescr .*W_AbstractSeqIterObject.inst_index .*>)
- guard_nonnull_class(p17, 146982464, descr=<Guard4>)
+ guard_nonnull_class(p17, 146982464, descr=...)
i21 = getfield_gc(p17, descr=<SignedFieldDescr .*W_ArrayTypei.inst_len .*>)
i23 = int_lt(0, i21)
- guard_true(i23, descr=<Guard5>)
+ guard_true(i23, descr=...)
i24 = getfield_gc(p17, descr=<NonGcPtrFieldDescr .*W_ArrayTypei.inst_buffer .*>)
i25 = getarrayitem_raw(i24, 0, descr=<.*>)
i27 = int_lt(1, i21)
- guard_false(i27, descr=<Guard6>)
+ guard_false(i27, descr=...)
i28 = int_add_ovf(i10, i25)
- guard_no_overflow(descr=<Guard7>)
+ guard_no_overflow(descr=...)
--TICK--
jump(p0, p1, p2, p3, p4, p5, p6, i28, i25, p9, p10, p11, i19, i13, p14, p15, descr=<Loop0>)
""")
@@ -201,9 +201,9 @@
loop, = log.loops_by_filename(self.filepath)
assert loop.match("""
i11 = int_lt(i7, 300)
- guard_true(i11, descr=<Guard3>)
+ guard_true(i11, descr=...)
i12 = int_add_ovf(i8, i9)
- guard_no_overflow(descr=<Guard4>)
+ guard_no_overflow(descr=...)
i14 = int_add(i7, 1)
--TICK--
jump(..., descr=...)
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
@@ -92,10 +92,10 @@
p51 = new_with_vtable(21136408)
setfield_gc(p51, p28, descr=<GcPtrFieldDescr .*NumberStringParser.inst_literal .*>)
setfield_gc(p51, ConstPtr(ptr51), descr=<GcPtrFieldDescr pypy.objspace.std.strutil.NumberStringParser.inst_fname .*>)
+ setfield_gc(p51, i29, descr=<SignedFieldDescr .*NumberStringParser.inst_n .*>)
setfield_gc(p51, 1, descr=<SignedFieldDescr .*NumberStringParser.inst_sign .*>)
setfield_gc(p51, 16, descr=<SignedFieldDescr .*NumberStringParser.inst_base .*>)
setfield_gc(p51, p28, descr=<GcPtrFieldDescr .*NumberStringParser.inst_s .*>)
- setfield_gc(p51, i29, descr=<SignedFieldDescr .*NumberStringParser.inst_n .*>)
p55 = call(ConstClass(parse_digit_string), p51, descr=<GcPtrCallDescr>)
guard_no_exception(descr=...)
i57 = call(ConstClass(rbigint.toint), p55, descr=<SignedCallDescr>)
More information about the pypy-commit
mailing list