python testrunner/pypyjit_tests.py
in dir /build_dir/pypy-c-jit-linux-x86-64/build (timeout 4000 secs)
watching logfiles {'pytestLog': 'pypyjit_new.log'}
argv: ['python', 'testrunner/pypyjit_tests.py']
environment:
AUDITWHEEL_ARCH=x86_64
AUDITWHEEL_PLAT=manylinux2014_x86_64
AUDITWHEEL_POLICY=manylinux2014
DEVTOOLSET_ROOTPATH=/opt/rh/devtoolset-10/root
HOME=/home/buildslave
HOSTNAME=255659ffae49
LANG=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_ALL=en_US.UTF-8
LD_LIBRARY_PATH=/usr/local/lib:/opt/rh/devtoolset-10/root/usr/lib64:/opt/rh/devtoolset-10/root/usr/lib:/opt/rh/devtoolset-10/root/usr/lib64/dyninst:/opt/rh/devtoolset-10/root/usr/lib/dyninst:/usr/local/lib64
LOGNAME=buildslave
PATH=/python27_virt/bin:/opt/rh/devtoolset-10/root/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig
PWD=/build_dir/pypy-c-jit-linux-x86-64/build
PYPY_LOCALBASE=/usr/local
PYPY_MAKE_PORTABLE=1
PYPY_USESSION_DIR=/tmp/pytest
SHELL=/bin/bash
SHLVL=2
SSL_CERT_FILE=/opt/_internal/certs.pem
TERM=xterm
TMPDIR=/tmp/pytest
USER=buildslave
USE_CURL=1
_=/python27_virt/bin/buildslave
using PTY: False
============================= test session starts ==============================
platform linux2 -- Python 2.7.18[pypy-7.3.24-alpha], pytest-2.9.2, py-1.4.29, pluggy-0.3.1
pytest-2.9.2 from /build_dir/pypy-c-jit-linux-x86-64/build/pytest.pyc
rootdir: /build_dir/pypy-c-jit-linux-x86-64/build, inifile: pytest.ini
collected 1208 items
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 .......F
pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py ......................................................................................................................................................................................................................................................................................................................................
pypy/module/pypyjit/test_pypy_c/test_buffers.py ..
pypy/module/pypyjit/test_pypy_c/test_bug.py .
pypy/module/pypyjit/test_pypy_c/test_call.py ..........................
pypy/module/pypyjit/test_pypy_c/test_containers.py ......................
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 ................
pypy/module/pypyjit/test_pypy_c/test_intbound.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 ............................................................................................................................................................
pypy/module/pypyjit/test_pypy_c/test_min_max.py ...
pypy/module/pypyjit/test_pypy_c/test_misc.py .......................
pypy/module/pypyjit/test_pypy_c/test_shift.py ...........................................................................................................................................................................................................................
pypy/module/pypyjit/test_pypy_c/test_string.py ................
pypy/module/pypyjit/test_pypy_c/test_struct.py ......
pypy/module/pypyjit/test_pypy_c/test_thread.py ...
pypy/module/pypyjit/test_pypy_c/test_weakref.py .
=================================== FAILURES ===================================
____________________ TestArray.test_list_len_known_ge_zero _____________________
self = <pypy.module.pypyjit.test_pypy_c.test_array.TestArray object at 0x00000000097deb10>
def test_list_len_known_ge_zero(self):
def main(n):
l = [1, 32, 4, 2] * n
l.append(n)
while n > 0:
# can be removed because we now know that the length field of
# the resizable list gcstruct is non-negative
if -1 > len(l) - 1: # ID: lencheck
raise ValueError
l.pop()
n -= 1
return len(l)
log = self.run(main, [1000])
loop, = log.loops_by_filename(self.filepath, is_entry_bridge=True)
> ops = loop.match_by_id("lencheck", """
guard_not_invalidated?
guard_nonnull_class(p12, ConstClass(W_ListObject), descr=...)
p28 = getfield_gc_r(p12, descr=...)
guard_class(p28, ..., descr=...)
p30 = getfield_gc_r(p12, descr=...)
i31 = getfield_gc_i(p30, descr=...) # list length
# there is no comparison for the length here at all
i33 = int_sub(i31, 1)
""")
pypy/module/pypyjit/test_pypy_c/test_array.py:311:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pypy/module/pypyjit/test_pypy_c/model.py:191: in match_by_id
return matcher.match(expected_src, ignore_ops=ignore_ops)
pypy/module/pypyjit/test_pypy_c/model.py:527: in match
self.match_loop(expected_ops, ignore_ops)
pypy/module/pypyjit/test_pypy_c/model.py:503: in match_loop
self.match_op(op, exp_op)
pypy/module/pypyjit/test_pypy_c/model.py:412: in match_op
self._assert(op.name == exp_opname, "operation mismatch")
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pypy.module.pypyjit.test_pypy_c.model.OpMatcher object at 0x00000000098c12b8>
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:405: InvalidMatch
----------------------------- Captured stdout call -----------------------------
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Loops don't match
=================
loop id = 'lencheck'
('operation mismatch',)
<could not determine information>
Ignore ops: []
Got:
guard_not_invalidated(descr=<Guard0x7fd87312abf0>)
guard_nonnull_class(p12, ConstClass(W_ListObject), descr=<Guard0x7fd8731400c0>)
p28 = getfield_gc_r(p12, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
guard_class(p28, 140567602596680, descr=<Guard0x7fd87312ac28>)
p30 = getfield_gc_r(p12, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
i31 = getfield_gc_i(p30, descr=<FieldS list.length 8>)
===== HERE =====
i33 = int_add(i31, -1)
Expected:
guard_not_invalidated?
guard_nonnull_class(p12, ConstClass(W_ListObject), descr=...)
p28 = getfield_gc_r(p12, descr=...)
guard_class(p28, ..., descr=...)
p30 = getfield_gc_r(p12, descr=...)
i31 = getfield_gc_i(p30, descr=...) # list length
# there is no comparison for the length here at all
i33 = int_sub(i31, 1)
=========================== short test summary info ============================
FAIL pypy/module/pypyjit/test_pypy_c/test_array.py::TestArray::()::test_list_len_known_ge_zero
============== 1 failed, 1204 passed, 3 skipped in 82.27 seconds ===============
program finished with exit code 1
elapsedTime=82.566951