python testrunner/pypyjit_tests.py in dir /buildbot/slave/pypy-c-jit-linux-x86-32/build (timeout 4000 secs) watching logfiles {'pytestLog': 'pypyjit_new.log'} argv: ['python', 'testrunner/pypyjit_tests.py'] environment: AUDITWHEEL_ARCH=i686 AUDITWHEEL_PLAT=manylinux_2_28_i686 AUDITWHEEL_POLICY=manylinux_2_28 DEVTOOLSET_ROOTPATH=/opt/rh/gcc-toolset-14/root HGDEMANDIMPORT=disable HOME=/home/buildworker HOSTNAME=Debian-trixie-latest-amd64-base LANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8 LC_ALL=en_US.UTF-8 LD_LIBRARY_PATH=/usr/local/lib:/opt/rh/gcc-toolset-14/root/usr/lib64:/opt/rh/gcc-toolset-14/root/usr/lib:/opt/rh/gcc-toolset-14/root/usr/lib64/dyninst:/opt/rh/gcc-toolset-14/root/usr/lib/dyninst OLDPWD=/buildbot/slave PATH=/tmp/venv/bin:/opt/clang/bin:/opt/rh/gcc-toolset-14/root/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/pypy2.7-v7.3.22-linux32/bin PKG_CONFIG_PATH=/usr/local/lib/pkgconfig PS1=(venv) PWD=/buildbot/slave/pypy-c-jit-linux-x86-32/build PYPY_LOCALBASE=/usr/local PYPY_MAKE_PORTABLE=1 SHLVL=1 SSL_CERT_FILE=/opt/_internal/certs.pem TERM=xterm TMPDIR=/tmp/pytest VIRTUAL_ENV=/tmp/venv container=podman using PTY: False /tmp/venv/site-packages/hypothesis/extra/pytestplugin.py:61: HypothesisWarning: You are using Pytest version 2.9.2. Hypothesis tests work with any test runner, but our Pytest plugin requires Pytest 4.3 or newer. Note that the Pytest developers no longer support this version either! Disabling the Hypothesis pytest plugin... warnings.warn(PYTEST_TOO_OLD_MESSAGE % (pytest.__version__,), HypothesisWarning) ============================= test session starts ============================== platform linux2 -- Python 2.7.18[pypy-7.3.22-final], pytest-2.9.2, py-1.4.29, pluggy-0.3.1 pytest-2.9.2 from /buildbot/slave/pypy-c-jit-linux-x86-32/build/pytest.pyc rootdir: /buildbot/slave/pypy-c-jit-linux-x86-32/build, inifile: pytest.ini plugins: hypothesis-4.57.1 collected 1194 items / 1 skipped pypy/module/pypyjit/test_pypy_c/test_00_model.py ........................ pypy/module/pypyjit/test_pypy_c/test_alloc.py ................................................... pypy/module/pypyjit/test_pypy_c/test_array.py ........ pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py ...................................................................................................................................................................................................................................................................................................................................... pypy/module/pypyjit/test_pypy_c/test_buffers.py F. pypy/module/pypyjit/test_pypy_c/test_bug.py . pypy/module/pypyjit/test_pypy_c/test_call.py .........................s. pypy/module/pypyjit/test_pypy_c/test_capture_locals.py F pypy/module/pypyjit/test_pypy_c/test_cprofile.py . pypy/module/pypyjit/test_pypy_c/test_exception.py ..... pypy/module/pypyjit/test_pypy_c/test_ffi.py s..s...... pypy/module/pypyjit/test_pypy_c/test_generators.py ... pypy/module/pypyjit/test_pypy_c/test_getframe.py .. pypy/module/pypyjit/test_pypy_c/test_globals.py . pypy/module/pypyjit/test_pypy_c/test_import.py .... pypy/module/pypyjit/test_pypy_c/test_instance.py ...........F... pypy/module/pypyjit/test_pypy_c/test_intbound.py ................................................................................................................................................................................................................................................................................... pypy/module/pypyjit/test_pypy_c/test_itertools.py .. pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py . pypy/module/pypyjit/test_pypy_c/test_math.py ..s.. pypy/module/pypyjit/test_pypy_c/test_micronumpy.py ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss pypy/module/pypyjit/test_pypy_c/test_min_max.py ... pypy/module/pypyjit/test_pypy_c/test_misc.py .................s..... pypy/module/pypyjit/test_pypy_c/test_shift.py ........................................................................................................................................................................................................................... pypy/module/pypyjit/test_pypy_c/test_string.py .F....x............ pypy/module/pypyjit/test_pypy_c/test_struct.py ....F. pypy/module/pypyjit/test_pypy_c/test_thread.py ..F pypy/module/pypyjit/test_pypy_c/test_weakref.py . =================================== FAILURES =================================== __________________________ TestBuffers.test_re_match ___________________________ self = <pypy.module.pypyjit.test_pypy_c.test_buffers.TestBuffers object at 0x0e68c230> def test_re_match(self): def main(n): import re import array p = re.compile(b'.+') a = array.array('B', b'test' * 1000) i = 0 while i < n: i += 1 p.match(a) # ID: match return i log = self.run(main, [1000]) assert log.result == 1000 loop, = log.loops_by_filename(self.filepath) > assert loop.match_by_id('match', """ guard_not_invalidated(descr=...) p71 = getfield_gc_r(p15, descr=...) # check that the pattern is not None and a W_BytesObject guard_nonnull_class(p71, ConstClass(W_BytesObject), descr=...) i74 = instance_ptr_eq(_, p71) guard_false(i74, descr=...) i65 = getfield_gc_i(p18, descr=...) i67 = int_gt(0, i65) guard_false(i67, descr=...) i69 = int_gt(#, i65) guard_true(i69, descr=...) --TICK-- """) pypy/module/pypyjit/test_pypy_c/test_buffers.py:19: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy/module/pypyjit/test_pypy_c/model.py:182: in match_by_id return matcher.match(expected_src, ignore_ops=ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:500: in match_loop self.match_op(op, exp_op) pypy/module/pypyjit/test_pypy_c/model.py:409: in match_op self._assert(op.name == exp_opname, "operation mismatch") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x10133350> cond = False, message = 'operation mismatch' def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: operation mismatch pypy/module/pypyjit/test_pypy_c/model.py:402: InvalidMatch ----------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = 'match' ('operation mismatch',) <could not determine information> Ignore ops: [] Got: guard_not_invalidated(descr=<Guard0x844d518>) p73 = getfield_gc_r(p14, descr=<FieldP pypy.module._sre.interp_sre.W_SRE_Pattern.inst_w_pattern 32>) guard_nonnull_class(p73, ConstClass(W_BytesObject), descr=<Guard0x8414b28>) i76 = instance_ptr_eq(ConstPtr(ptr75), p73) guard_false(i76, descr=<Guard0x844d550>) i77 = getfield_gc_i(p16, descr=<FieldS pypy.module.array.interp_array.W_ArrayBase.inst__exports 12>) ===== HERE ===== i79 = int_add(i77, 1) i80 = getfield_gc_i(p16, descr=<FieldS pypy.module.array.interp_array.W_ArrayBase.inst_len 24>) i82 = int_gt(0, i80) guard_false(i82, descr=<Guard0x844d588>) i84 = int_gt(2147483647, i80) guard_true(i84, descr=<Guard0x844d5c0>) guard_not_invalidated(descr=<Guard0x844d630>) i98 = getfield_raw_i(-135128064, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i100 = int_lt(i98, 0) guard_false(i100, descr=<Guard0x844d668>) Expected: guard_not_invalidated(descr=...) p71 = getfield_gc_r(p15, descr=...) # check that the pattern is not None and a W_BytesObject guard_nonnull_class(p71, ConstClass(W_BytesObject), descr=...) i74 = instance_ptr_eq(_, p71) guard_false(i74, descr=...) i65 = getfield_gc_i(p18, descr=...) i67 = int_gt(0, i65) guard_false(i67, descr=...) i69 = int_gt(#, i65) guard_true(i69, descr=...) guard_not_invalidated? ticker0 = getfield_raw_i(#, descr=<FieldS pypysig_long_struct_inner.c_value .*>) ticker_cond0 = int_lt(ticker0, 0) guard_false(ticker_cond0, descr=...) ____________________ TestCaptureLocals.test_capture_locals _____________________ self = <pypy.module.pypyjit.test_pypy_c.test_capture_locals.TestCaptureLocals object at 0x120c5af0> def test_capture_locals(self): def main(n): num = 42 i = 0 acc = 0 src = ''' while i < n: acc += num i += 1 ''' exec(src) return acc log = self.run(main, [500]) print (log.result) assert log.result == 0 loop, = log.loops_by_filename("<string>") > assert loop.match(""" guard_not_invalidated(descr=...) i48 = int_lt(i41, i33) guard_true(i48, descr=...) i49 = int_add_ovf(i39, i38) guard_no_overflow(descr=...) i51 = int_add(i41, 1) i53 = getfield_raw_i(..., descr=...) setarrayitem_gc(p27, 3, i49, descr=...) setarrayitem_gc(p27, 2, i51, descr=...) i57 = int_lt(i53, 0) guard_false(i57, descr=...) i59 = arraylen_gc(p25, descr=...) i60 = arraylen_gc(p27, descr=...) jump(..., descr=...) """) pypy/module/pypyjit/test_pypy_c/test_capture_locals.py:22: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy/module/pypyjit/test_pypy_c/model.py:177: in match return matcher.match(expected_src, **kwds) pypy/module/pypyjit/test_pypy_c/model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:500: in match_loop self.match_op(op, exp_op) pypy/module/pypyjit/test_pypy_c/model.py:409: in match_op self._assert(op.name == exp_opname, "operation mismatch") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x1211b450> cond = False, message = 'operation mismatch' def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: operation mismatch pypy/module/pypyjit/test_pypy_c/model.py:402: InvalidMatch ----------------------------- Captured stdout call ----------------------------- 0 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = None ('operation mismatch',) <could not determine information> Ignore ops: [] Got: ===== HERE ===== i55 = getfield_gc_i(p51, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8 pure>) i56 = int_lt(i55, i34) guard_true(i56, descr=<Guard0xf4930bf0>) i57 = getfield_gc_i(p53, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8 pure>) i58 = int_add_ovf(i57, i43) guard_no_overflow(descr=<Guard0xf48dc224>) guard_not_invalidated(descr=<Guard0xf48dc240>) i60 = int_add(i55, 1) i62 = getfield_raw_i(-135246848, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i64 = int_lt(i62, 0) guard_false(i64, descr=<Guard0xf48dc278>) i65 = arraylen_gc(p24, descr=<ArrayP 4>) p66 = new_with_vtable(descr=<SizeDescr 12>) setfield_gc(p66, i60, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8 pure>) p67 = new_with_vtable(descr=<SizeDescr 12>) setfield_gc(p67, i58, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8 pure>) setarrayitem_gc(p24, 3, p66, descr=<ArrayP 4>) setarrayitem_gc(p24, 4, p67, descr=<ArrayP 4>) jump(p0, p1, p5, p13, p20, p24, p66, p31, i34, p67, p40, i43, descr=TargetToken(-191800100)) Expected: guard_not_invalidated(descr=...) i48 = int_lt(i41, i33) guard_true(i48, descr=...) i49 = int_add_ovf(i39, i38) guard_no_overflow(descr=...) i51 = int_add(i41, 1) i53 = getfield_raw_i(..., descr=...) setarrayitem_gc(p27, 3, i49, descr=...) setarrayitem_gc(p27, 2, i51, descr=...) i57 = int_lt(i53, 0) guard_false(i57, descr=...) i59 = arraylen_gc(p25, descr=...) i60 = arraylen_gc(p27, descr=...) jump(..., descr=...) __________________ TestInstance.test_namedtuple_construction ___________________ self = <pypy.module.pypyjit.test_pypy_c.test_instance.TestInstance object at 0x0e43a7f0> def test_namedtuple_construction(self): def main(): from collections import namedtuple A = namedtuple("A", "x y") res = 0 i = 0 while i < 2000: res += A(i, 0).x i += 1 log = self.run(main, []) loop, = log.loops_by_filename(self.filepath) > assert loop.match(""" i7 = int_lt(i5, 2000) guard_true(i7, descr=...) guard_not_invalidated(descr=...) p1 = force_token() p2 = force_token() i20 = int_add_ovf(i19, i5) guard_no_overflow(descr=...) i9 = int_add(i5, 1) --TICK-- jump(..., descr=...) """) pypy/module/pypyjit/test_pypy_c/test_instance.py:390: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy/module/pypyjit/test_pypy_c/model.py:177: in match return matcher.match(expected_src, **kwds) pypy/module/pypyjit/test_pypy_c/model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:500: in match_loop self.match_op(op, exp_op) pypy/module/pypyjit/test_pypy_c/model.py:409: in match_op self._assert(op.name == exp_opname, "operation mismatch") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x0fb55ab0> cond = False, message = 'operation mismatch' def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: operation mismatch pypy/module/pypyjit/test_pypy_c/model.py:402: InvalidMatch ----------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = None ('operation mismatch',) <could not determine information> Ignore ops: [] Got: i77 = int_lt(i71, 2000) guard_true(i77, descr=<Guard0xf492b268>) guard_not_invalidated(descr=<Guard0xf4937cc0>) p78 = force_token() ===== HERE ===== p81 = new_with_vtable(descr=<SizeDescr 20>) setfield_gc(p81, ConstPtr(ptr82), descr=<FieldP pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8 16 pure>) i86 = call_i(ConstClass(ll_call_lookup_function_trampoline__v2210___simple_call__function_), p46, p81, 265858722, 0, descr=<Calli 4 rrii EF=5 OS=4>) setfield_gc(p81, ConstPtr(null), descr=<FieldP pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage 8>) setfield_gc(p81, 10, descr=<FieldS pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length 12 pure>) guard_no_exception(descr=<Guard0xf492b290>) i90 = int_lt(i86, 0) guard_false(i90, descr=<Guard0xf4937cf8>) p91 = getinteriorfield_gc_r(p57, i86, descr=<InteriorFieldDescr <FieldP odictentry.value 4>>) guard_value(p91, ConstPtr(ptr92), descr=<Guard0xf492b2b8>) p94 = force_token() i98 = int_add_ovf(i69, i71) guard_no_overflow(descr=<Guard0xf4937d14>) i100 = int_add(i71, 1) i102 = getfield_raw_i(-134628352, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i104 = int_lt(i102, 0) guard_false(i104, descr=<Guard0xf4937d4c>) jump(p0, p1, p8, i98, i100, p33, p46, p34, p57, descr=TargetToken(-191719008)) Expected: i7 = int_lt(i5, 2000) guard_true(i7, descr=...) guard_not_invalidated(descr=...) p1 = force_token() p2 = force_token() i20 = int_add_ovf(i19, i5) guard_no_overflow(descr=...) i9 = int_add(i5, 1) guard_not_invalidated? ticker0 = getfield_raw_i(#, descr=<FieldS pypysig_long_struct_inner.c_value .*>) ticker_cond0 = int_lt(ticker0, 0) guard_false(ticker_cond0, descr=...) jump(..., descr=...) ___________________ TestString.test_lookup_default_encoding ____________________ self = <pypy.module.pypyjit.test_pypy_c.test_string.TestString object at 0x0e43a0f0> def test_lookup_default_encoding(self): def main(n): i = 0 letters = b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' uletters = u'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' while i < n: c = bytes([letters[i % len(uletters)]]) i += (c.decode() == uletters[i % len(uletters)]) return i log = self.run(main, [300], import_site=True) assert log.result == 300 loop, = log.loops_by_filename(self.filepath) assert loop.match(""" i88 = int_lt(i83, i36) guard_true(i88, descr=...) guard_not_invalidated(descr=...) i92 = int_eq(i83, %d) i94 = call_i(ConstClass(ll_int_py_mod__Signed_Signed), i83, i46, descr=<Calli . ii EF=0 OS=14>) i97 = int_ge(i94, i53) guard_false(i97, descr=...) i98 = strgetitem(p52, i94) p103 = newstr(1) strsetitem(p103, 0, i98) i95 = call_i(ConstClass(_check_utf8), p103, 0, 0, -1, descr=<Calli 8 riii EF=4>) guard_no_exception(descr=...) i98 = int_ge(i95, 0) guard_true(i98, descr=...) i99 = int_ge(i94, i46) guard_false(i99, descr=...) i115 = int_add(i94, 1) i116 = int_gt(i115, i71) guard_false(i116, descr=...) i104 = call_i(ConstClass(_ll_4_str_eq_slice_char__rpy_stringPtr_Signed_Signed_Char), p65, i94, 1, i98, descr=<Calli 8 riii EF=0 OS=27>) guard_true(i104, descr=...) i124 = int_add(i83, 1) --TICK-- jump(..., descr=...) > """ % (-sys.maxint-1,)) pypy/module/pypyjit/test_pypy_c/test_string.py:85: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy/module/pypyjit/test_pypy_c/model.py:177: in match return matcher.match(expected_src, **kwds) pypy/module/pypyjit/test_pypy_c/model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:500: in match_loop self.match_op(op, exp_op) pypy/module/pypyjit/test_pypy_c/model.py:418: in match_op self.match_descr(op.descr, exp_descr) pypy/module/pypyjit/test_pypy_c/model.py:398: in match_descr self._assert(exp_descr is not None and re.match(exp_descr, descr), "descr mismatch") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x0f9c2bd0> cond = None, message = 'descr mismatch' def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: descr mismatch pypy/module/pypyjit/test_pypy_c/model.py:402: InvalidMatch ----------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = None ('descr mismatch',) <could not determine information> Ignore ops: [] Got: i75 = int_lt(i70, i33) guard_true(i75, descr=<Guard0xf48e6858>) guard_not_invalidated(descr=<Guard0xf488625c>) i77 = int_eq(i70, -2147483648) i79 = call_i(ConstClass(ll_int_py_mod__Signed_Signed), i70, i38, descr=<Calli 4 ii EF=0 OS=14>) i80 = int_ge(i79, i47) guard_false(i80, descr=<Guard0xf48e6880>) i81 = strgetitem(p46, i79) p83 = newstr(1) strsetitem(p83, 0, i81) ===== HERE ===== i88 = call_i(ConstClass(_check_utf8), p83, 0, 0, -1, descr=<Calli 4 riii EF=4>) guard_no_exception(descr=<Guard0xf48e68a8>) i91 = int_ge(i88, 0) guard_true(i91, descr=<Guard0xf48862b0>) i92 = int_ge(i79, i38) guard_false(i92, descr=<Guard0xf48862e8>) i94 = int_add(i79, 1) i95 = int_gt(i94, i61) guard_false(i95, descr=<Guard0xf4886320>) i97 = call_i(ConstClass(_ll_4_str_eq_slice_char__rpy_stringPtr_Signed_Signed_Char), p60, i79, 1, i81, descr=<Calli 4 riii EF=0 OS=27>) guard_true(i97, descr=<Guard0xf48e68d0>) i99 = int_add(i70, 1) i101 = getfield_raw_i(-135283712, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i103 = int_lt(i101, 0) guard_false(i103, descr=<Guard0xf4886374>) jump(p0, p1, p8, i99, p12, p14, p83, i33, i38, i47, p46, i61, p60, descr=TargetToken(-192025920)) Expected: i88 = int_lt(i83, i36) guard_true(i88, descr=...) guard_not_invalidated(descr=...) i92 = int_eq(i83, -2147483648) i94 = call_i(ConstClass(ll_int_py_mod__Signed_Signed), i83, i46, descr=<Calli . ii EF=0 OS=14>) i97 = int_ge(i94, i53) guard_false(i97, descr=...) i98 = strgetitem(p52, i94) p103 = newstr(1) strsetitem(p103, 0, i98) i95 = call_i(ConstClass(_check_utf8), p103, 0, 0, -1, descr=<Calli 8 riii EF=4>) guard_no_exception(descr=...) i98 = int_ge(i95, 0) guard_true(i98, descr=...) i99 = int_ge(i94, i46) guard_false(i99, descr=...) i115 = int_add(i94, 1) i116 = int_gt(i115, i71) guard_false(i116, descr=...) i104 = call_i(ConstClass(_ll_4_str_eq_slice_char__rpy_stringPtr_Signed_Signed_Char), p65, i94, 1, i98, descr=<Calli 8 riii EF=0 OS=27>) guard_true(i104, descr=...) i124 = int_add(i83, 1) guard_not_invalidated? ticker0 = getfield_raw_i(#, descr=<FieldS pypysig_long_struct_inner.c_value .*>) ticker_cond0 = int_lt(ticker0, 0) guard_false(ticker_cond0, descr=...) jump(..., descr=...) _____________________ TestStruct.test_pack_into_raw_buffer _____________________ self = <pypy.module.pypyjit.test_pypy_c.test_struct.TestStruct object at 0x0ef032b0> def test_pack_into_raw_buffer(self): def main(n): import array import struct buf = array.array('b', b'\x00'*8) i = 1 while i < n: struct.pack_into("h", buf, 4, i) # ID: pack_into i += 1 return i log = self.run(main, [1000]) assert log.result == main(1000) loop, = log.loops_by_filename(self.filepath) > assert loop.match_by_id('pack_into', """\ guard_not_invalidated(descr=...) i65 = int_le(i58, 32767) guard_true(i65, descr=...) raw_store(i55, 4, i58, descr=<ArrayS 2>) """) pypy/module/pypyjit/test_pypy_c/test_struct.py:175: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy/module/pypyjit/test_pypy_c/model.py:182: in match_by_id return matcher.match(expected_src, ignore_ops=ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:500: in match_loop self.match_op(op, exp_op) pypy/module/pypyjit/test_pypy_c/model.py:409: in match_op self._assert(op.name == exp_opname, "operation mismatch") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x0ff70e10> cond = False, message = 'operation mismatch' def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: operation mismatch pypy/module/pypyjit/test_pypy_c/model.py:402: InvalidMatch ----------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = 'pack_into' ('operation mismatch',) <could not determine information> Ignore ops: [] Got: guard_not_invalidated(descr=<Guard0xf48cb4c4>) ===== HERE ===== setfield_gc(p14, i45, descr=<FieldS pypy.module.array.interp_array.W_ArrayBase.inst__exports 12>) i65 = int_le(i58, 32767) guard_true(i65, descr=<Guard0xf491bcb8>) raw_store(i55, 4, i58, descr=<ArrayS 2>) Expected: guard_not_invalidated(descr=...) i65 = int_le(i58, 32767) guard_true(i65, descr=...) raw_store(i55, 4, i58, descr=<ArrayS 2>) _____________________ TestThread.test_lock_acquire_release _____________________ self = <pypy.module.pypyjit.test_pypy_c.test_thread.TestThread object at 0x12549790> def test_lock_acquire_release(self): def main(n): import threading lock = threading.Lock() while n > 0: with lock: n -= 1 log = self.run(main, [500]) assert log.result == main(500) loop, = log.loops_by_filename(self.filepath) > assert loop.match(""" i56 = int_gt(i44, 0) guard_true(i56, descr=...) guard_not_invalidated? p57 = force_token() setfield_gc(p0, p57, descr=<FieldP pypy.interpreter.pyframe.PyFrame.vable_token 8>) i58 = call_may_force_i(ConstClass(acquire_timed), p31, -1, descr=<Calli . ri EF=7>) guard_not_forced(descr=...) guard_no_exception(descr=...) i99 = int_eq(i58, 1) guard_true(i99, descr=...) i58 = int_add(i44, -1) guard_not_invalidated? i59 = call_i(ConstClass(RPyThreadReleaseLock), i37, descr=<Calli . i EF=2>) i60 = int_is_true(i59) guard_false(i60, descr=...) --TICK-- jump(..., descr=...) """) pypy/module/pypyjit/test_pypy_c/test_thread.py:69: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pypy/module/pypyjit/test_pypy_c/model.py:177: in match return matcher.match(expected_src, **kwds) pypy/module/pypyjit/test_pypy_c/model.py:524: in match self.match_loop(expected_ops, ignore_ops) pypy/module/pypyjit/test_pypy_c/model.py:500: in match_loop self.match_op(op, exp_op) pypy/module/pypyjit/test_pypy_c/model.py:417: in match_op self._assert(self.match_var(arg, exp_arg), "variable mismatch: %r instead of %r" % (arg, exp_arg)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x10b3ebd0> cond = False, message = "variable mismatch: 'nan' instead of '-1'" def _assert(self, cond, message): if not cond: > raise InvalidMatch(message, frame=sys._getframe(1)) E InvalidMatch: variable mismatch: 'nan' instead of '-1' pypy/module/pypyjit/test_pypy_c/model.py:402: InvalidMatch ----------------------------- Captured stdout call ----------------------------- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Loops don't match ================= loop id = None ("variable mismatch: 'nan' instead of '-1'",) <could not determine information> Ignore ops: [] Got: i50 = int_gt(i40, 0) guard_true(i50, descr=<Guard0xf47d4f60>) guard_not_invalidated(descr=<Guard0xf4781f60>) p51 = force_token() setfield_gc(p0, p51, descr=<FieldP pypy.interpreter.pyframe.PyFrame.vable_token 8>) ===== HERE ===== i54 = call_may_force_i(ConstClass(acquire_timed), p32, nan, descr=<Calli 4 rL EF=7>) guard_not_forced(descr=<Guard0xf478f170>) guard_no_exception(descr=<Guard0xf4781f7c>) i56 = int_eq(i54, 1) guard_true(i56, descr=<Guard0xf4781fb4>) i58 = int_add(i40, -1) guard_not_invalidated(descr=<Guard0xf4781fd0>) i60 = call_i(ConstClass(RPyThreadReleaseLock), i41, descr=<Calli 4 i EF=2>) i61 = int_is_true(i60) guard_false(i61, descr=<Guard0xf47d4f88>) i64 = getfield_raw_i(-135644160, descr=<FieldS pypysig_long_struct_inner.c_value 0>) i66 = int_lt(i64, 0) guard_false(i66, descr=<Guard0xf4792048>) jump(p0, p1, i58, p10, p12, p22, p24, p32, i41, descr=TargetToken(-193061236)) Expected: i56 = int_gt(i44, 0) guard_true(i56, descr=...) guard_not_invalidated? p57 = force_token() setfield_gc(p0, p57, descr=<FieldP pypy.interpreter.pyframe.PyFrame.vable_token 8>) i58 = call_may_force_i(ConstClass(acquire_timed), p31, -1, descr=<Calli . ri EF=7>) guard_not_forced(descr=...) guard_no_exception(descr=...) i99 = int_eq(i58, 1) guard_true(i99, descr=...) i58 = int_add(i44, -1) guard_not_invalidated? i59 = call_i(ConstClass(RPyThreadReleaseLock), i37, descr=<Calli . i EF=2>) i60 = int_is_true(i59) guard_false(i60, descr=...) guard_not_invalidated? ticker0 = getfield_raw_i(#, descr=<FieldS pypysig_long_struct_inner.c_value .*>) ticker_cond0 = int_lt(ticker0, 0) guard_false(ticker_cond0, descr=...) jump(..., descr=...) =========================== short test summary info ============================ FAIL pypy/module/pypyjit/test_pypy_c/test_buffers.py::TestBuffers::()::test_re_match FAIL pypy/module/pypyjit/test_pypy_c/test_capture_locals.py::TestCaptureLocals::()::test_capture_locals FAIL pypy/module/pypyjit/test_pypy_c/test_instance.py::TestInstance::()::test_namedtuple_construction FAIL pypy/module/pypyjit/test_pypy_c/test_string.py::TestString::()::test_lookup_default_encoding FAIL pypy/module/pypyjit/test_pypy_c/test_struct.py::TestStruct::()::test_pack_into_raw_buffer FAIL pypy/module/pypyjit/test_pypy_c/test_thread.py::TestThread::()::test_lock_acquire_release ======= 6 failed, 1026 passed, 162 skipped, 1 xfailed in 165.86 seconds ======== program finished with exit code 1 elapsedTime=166.819672