python testrunner/pypyjit_tests.py
in dir /Users/matti/build-worker-x86_64/pypy-c-jit-macos-x86-64/build (timeout 4000 secs)
watching logfiles {'pytestLog': 'pypyjit_new.log'}
argv: ['python', 'testrunner/pypyjit_tests.py']
environment:
HOME=/Users/matti
HOMEBREW_CELLAR=/opt/homebrew_x86_64/Cellar
HOMEBREW_PREFIX=/opt/homebrew_x86_64
HOMEBREW_REPOSITORY=/opt/homebrew_x86_64
INFOPATH=/opt/homebrew_x86_64/share/info:
LANG=en_US.UTF-8
LC_ADDRESS=en_AU.UTF-8
LC_IDENTIFICATION=en_AU.UTF-8
LC_MEASUREMENT=en_AU.UTF-8
LC_MONETARY=en_AU.UTF-8
LC_NAME=en_AU.UTF-8
LC_NUMERIC=en_AU.UTF-8
LC_PAPER=en_AU.UTF-8
LC_TELEPHONE=en_AU.UTF-8
LC_TIME=en_AU.UTF-8
LOGNAME=matti
OLDPWD=/Users/matti
PATH=/Users/matti/oss/pypy-x86_64-buildbot/bin:/opt/homebrew_x86_64/bin:/opt/homebrew_x86_64/sbin:/Library/Frameworks/Python.framework/Versions/3.11/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin
PKG_CONFIG_PATH=/opt/homebrew_x86_64/opt/openssl@1.1/lib/pkgconfig
PWD=/Users/matti/build-worker-x86_64/pypy-c-jit-macos-x86-64/build
PYPY_USESSION_DIR=/tmp/buildbot-x86_64
SHELL=/bin/zsh
SHLVL=2
SSH_CLIENT=10.0.0.20 50196 22
SSH_CONNECTION=10.0.0.20 50196 10.0.0.16 22
SSH_TTY=/dev/ttys000
TERM=tmux-256color
TMPDIR=/tmp/buildbot-x86_64/pytest
USER=matti
_=/Users/matti/oss/pypy-x86_64-buildbot/bin/buildslave
using PTY: False
============================= test session starts ==============================
platform darwin -- Python 2.7.18[pypy-7.3.23-alpha], pytest-3.10.1, py-1.11.0, pluggy-0.11.0
pytest-3.10.1 from /Users/matti/build-worker-x86_64/pypy-c-jit-macos-x86-64/build/pytest.pyc
rootdir: /Users/matti/build-worker-x86_64/pypy-c-jit-macos-x86-64/build, inifile: pytest.ini
collected 1207 items
pypy/module/pypyjit/test_pypy_c/test_00_model.py ....................... [ 1%]
.. [ 2%]
pypy/module/pypyjit/test_pypy_c/test_alloc.py .......................... [ 4%]
......................... [ 6%]
pypy/module/pypyjit/test_pypy_c/test_array.py ....... [ 6%]
pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py .................... [ 8%]
........................................................................ [ 14%]
........................................................................ [ 20%]
........................................................................ [ 26%]
........................................................................ [ 32%]
FFFFF............. [ 33%]
pypy/module/pypyjit/test_pypy_c/test_buffers.py .. [ 34%]
pypy/module/pypyjit/test_pypy_c/test_bug.py s [ 34%]
pypy/module/pypyjit/test_pypy_c/test_call.py .......................... [ 36%]
pypy/module/pypyjit/test_pypy_c/test_containers.py ..................... [ 38%]
. [ 38%]
pypy/module/pypyjit/test_pypy_c/test_cprofile.py . [ 38%]
pypy/module/pypyjit/test_pypy_c/test_exception.py ..... [ 38%]
pypy/module/pypyjit/test_pypy_c/test_ffi.py s..s...... [ 39%]
pypy/module/pypyjit/test_pypy_c/test_generators.py ... [ 39%]
pypy/module/pypyjit/test_pypy_c/test_getframe.py .. [ 39%]
pypy/module/pypyjit/test_pypy_c/test_globals.py . [ 39%]
pypy/module/pypyjit/test_pypy_c/test_import.py .. [ 40%]
pypy/module/pypyjit/test_pypy_c/test_instance.py ................ [ 41%]
pypy/module/pypyjit/test_pypy_c/test_intbound.py ....................... [ 43%]
........................................................................ [ 49%]
........................................................................ [ 55%]
........................................................................ [ 61%]
................................... [ 64%]
pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py F [ 64%]
pypy/module/pypyjit/test_pypy_c/test_math.py ..s.. [ 64%]
pypy/module/pypyjit/test_pypy_c/test_micronumpy.py ..................... [ 66%]
........................................................................ [ 72%]
............................................................... [ 77%]
pypy/module/pypyjit/test_pypy_c/test_min_max.py ... [ 77%]
pypy/module/pypyjit/test_pypy_c/test_misc.py ....................... [ 79%]
pypy/module/pypyjit/test_pypy_c/test_shift.py .......................... [ 81%]
........................................................................ [ 87%]
........................................................................ [ 93%]
................................................. [ 97%]
pypy/module/pypyjit/test_pypy_c/test_string.py ................ [ 99%]
pypy/module/pypyjit/test_pypy_c/test_struct.py ...... [ 99%]
pypy/module/pypyjit/test_pypy_c/test_thread.py ... [ 99%]
pypy/module/pypyjit/test_pypy_c/test_weakref.py . [100%]
=================================== FAILURES ===================================
___________________ TestBoolRewrite.test_boolrewrite_ptr[18] ___________________
self = <pypy.module.pypyjit.test_pypy_c.test_boolrewrite.TestBoolRewrite object at 0x00007f7bc0124838>
src = '\n class tst(object):\n pass\n def main():\n ... if i > 750:\n a = b\n return sa\n '
args = [], jitopts = {}
def run_and_check(self, src, args=[], **jitopts):
> log1 = self.run(src, args, threshold=-1) # without the JIT
pypy/module/pypyjit/test_pypy_c/test_00_model.py:101:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pypy/module/pypyjit/test_pypy_c/test_00_model.py:67: in run
stderr=subprocess.PIPE)
lib-python/2.7/subprocess.py:409: in __init__
errread, errwrite)
lib-python/2.7/subprocess.py:958: in _execute_child
errpipe_read, errpipe_write = self.pipe_cloexec()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <subprocess.Popen object at 0x00007f7ba033df68>
def pipe_cloexec(self):
"""Create a pipe with FDs set CLOEXEC."""
# Pipes' FDs are set CLOEXEC by default because we don't want them
# to be inherited by other subprocesses: the CLOEXEC flag is removed
# from the child's FDs by _dup2(), between fork() and exec().
# This is not atomic: we would need the pipe2() syscall for that.
> r, w = os.pipe()
E OSError: [Errno 24] Too many open files
lib-python/2.7/subprocess.py:895: OSError
___________________ TestBoolRewrite.test_boolrewrite_ptr[19] ___________________
self = <pypy.module.pypyjit.test_pypy_c.test_boolrewrite.TestBoolRewrite object at 0x00007f7bc0124838>
src = '\n class tst(object):\n pass\n def main():\n ... if i > 750:\n a = b\n return sa\n '
args = [], jitopts = {}
def run_and_check(self, src, args=[], **jitopts):
> log1 = self.run(src, args, threshold=-1) # without the JIT
pypy/module/pypyjit/test_pypy_c/test_00_model.py:101:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pypy/module/pypyjit/test_pypy_c/test_00_model.py:67: in run
stderr=subprocess.PIPE)
lib-python/2.7/subprocess.py:409: in __init__
errread, errwrite)
lib-python/2.7/subprocess.py:958: in _execute_child
errpipe_read, errpipe_write = self.pipe_cloexec()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <subprocess.Popen object at 0x00007f7bc37ab6a8>
def pipe_cloexec(self):
"""Create a pipe with FDs set CLOEXEC."""
# Pipes' FDs are set CLOEXEC by default because we don't want them
# to be inherited by other subprocesses: the CLOEXEC flag is removed
# from the child's FDs by _dup2(), between fork() and exec().
# This is not atomic: we would need the pipe2() syscall for that.
> r, w = os.pipe()
E OSError: [Errno 24] Too many open files
lib-python/2.7/subprocess.py:895: OSError
___________________ TestBoolRewrite.test_boolrewrite_ptr[20] ___________________
self = <pypy.module.pypyjit.test_pypy_c.test_boolrewrite.TestBoolRewrite object at 0x00007f7bc0124838>
src = '\n class tst(object):\n pass\n def main():\n ... if i > 750:\n a = b\n return sa\n '
args = [], jitopts = {}
def run_and_check(self, src, args=[], **jitopts):
> log1 = self.run(src, args, threshold=-1) # without the JIT
pypy/module/pypyjit/test_pypy_c/test_00_model.py:101:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pypy/module/pypyjit/test_pypy_c/test_00_model.py:67: in run
stderr=subprocess.PIPE)
lib-python/2.7/subprocess.py:409: in __init__
errread, errwrite)
lib-python/2.7/subprocess.py:958: in _execute_child
errpipe_read, errpipe_write = self.pipe_cloexec()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <subprocess.Popen object at 0x00007f7bc3ca49f8>
def pipe_cloexec(self):
"""Create a pipe with FDs set CLOEXEC."""
# Pipes' FDs are set CLOEXEC by default because we don't want them
# to be inherited by other subprocesses: the CLOEXEC flag is removed
# from the child's FDs by _dup2(), between fork() and exec().
# This is not atomic: we would need the pipe2() syscall for that.
> r, w = os.pipe()
E OSError: [Errno 24] Too many open files
lib-python/2.7/subprocess.py:895: OSError
___________________ TestBoolRewrite.test_boolrewrite_ptr[21] ___________________
self = <pypy.module.pypyjit.test_pypy_c.test_boolrewrite.TestBoolRewrite object at 0x00007f7bc0124838>
src = '\n class tst(object):\n pass\n def main():\n ... if i > 750:\n a = b\n return sa\n '
args = [], jitopts = {}
def run_and_check(self, src, args=[], **jitopts):
> log1 = self.run(src, args, threshold=-1) # without the JIT
pypy/module/pypyjit/test_pypy_c/test_00_model.py:101:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pypy/module/pypyjit/test_pypy_c/test_00_model.py:67: in run
stderr=subprocess.PIPE)
lib-python/2.7/subprocess.py:409: in __init__
errread, errwrite)
lib-python/2.7/subprocess.py:958: in _execute_child
errpipe_read, errpipe_write = self.pipe_cloexec()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <subprocess.Popen object at 0x00007f7bb0170020>
def pipe_cloexec(self):
"""Create a pipe with FDs set CLOEXEC."""
# Pipes' FDs are set CLOEXEC by default because we don't want them
# to be inherited by other subprocesses: the CLOEXEC flag is removed
# from the child's FDs by _dup2(), between fork() and exec().
# This is not atomic: we would need the pipe2() syscall for that.
> r, w = os.pipe()
E OSError: [Errno 24] Too many open files
lib-python/2.7/subprocess.py:895: OSError
___________________ TestBoolRewrite.test_boolrewrite_ptr[22] ___________________
self = <pypy.module.pypyjit.test_pypy_c.test_boolrewrite.TestBoolRewrite object at 0x00007f7bc0124838>
src = '\n class tst(object):\n pass\n def main():\n ... if i > 750:\n a = b\n return sa\n '
args = [], jitopts = {}
def run_and_check(self, src, args=[], **jitopts):
> log1 = self.run(src, args, threshold=-1) # without the JIT
pypy/module/pypyjit/test_pypy_c/test_00_model.py:101:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pypy/module/pypyjit/test_pypy_c/test_00_model.py:67: in run
stderr=subprocess.PIPE)
lib-python/2.7/subprocess.py:409: in __init__
errread, errwrite)
lib-python/2.7/subprocess.py:958: in _execute_child
errpipe_read, errpipe_write = self.pipe_cloexec()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <subprocess.Popen object at 0x00007f7bc29a59f0>
def pipe_cloexec(self):
"""Create a pipe with FDs set CLOEXEC."""
# Pipes' FDs are set CLOEXEC by default because we don't want them
# to be inherited by other subprocesses: the CLOEXEC flag is removed
# from the child's FDs by _dup2(), between fork() and exec().
# This is not atomic: we would need the pipe2() syscall for that.
> r, w = os.pipe()
E OSError: [Errno 24] Too many open files
lib-python/2.7/subprocess.py:895: OSError
______________________________ TestLogParser.test ______________________________
self = <pypy.module.pypyjit.test_pypy_c.test_jitlogparser.TestLogParser object at 0x00007f7bd2138988>
def test(self):
def fn_with_bridges(N):
def is_prime(x):
for y in xrange(2, x):
if x % y == 0:
return False
return True
result = 0
for x in xrange(N):
if x % 3 == 0:
result += 5
elif x % 5 == 0:
result += 3
elif is_prime(x):
result += x
elif x == 99:
result *= 2
return result
#
N = 10000
_log = self.run(fn_with_bridges, [N])
log, loops = import_log(_log.logfile)
parse_log_counts(extract_category(log, 'jit-backend-count'), loops)
is_prime_loops = []
fn_with_bridges_loops = []
bridges = {}
lib_re = re.compile("file '.*lib-python.*'")
for loop in loops:
if hasattr(loop, 'force_asm'):
try:
> loop.force_asm()
pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py:46:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rpython/tool/jitlogparser/parser.py:472: in <lambda>
dump_start=start_ofs))
rpython/tool/jitlogparser/parser.py:110: in postprocess
backend_tp, dump_start)
rpython/tool/jitlogparser/parser.py:151: in _asm_disassemble
return list(machine_code_dump(d, origin_addr, tp))
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
data = '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\...0\x00\x00ASM\x8d\x9b\xb0\xe6\xff\xffA\xff\xe3\xff5|\xfb\xff\xffM\x8d\x9b`\x12-\xfaASM\x8d\x9b\xa0\xe6\xff\xffA\xff\xe3'
originaddr = 4479859056L, backend_name = 'x86_64', label_list = None
def machine_code_dump(data, originaddr, backend_name, label_list=None):
objdump_machine_option = {
'x86': 'i386',
'x86-without-sse2': 'i386',
'x86_32': 'i386',
'x86_64': 'i386:x86-64',
'x86-64': 'i386:x86-64',
'i386': 'i386',
'arm': 'arm',
'arm_32': 'arm',
'aarch64': 'aarch64',
'ppc' : 'powerpc:common64',
'ppc-64' : 'powerpc:common64',
'riscv64': 'riscv:rv64',
's390x': 's390:64-bit',
}
machine_endianness = {
# default value: 'little'
'ppc' : sys.byteorder, # i.e. same as the running machine...
'ppc-64' : sys.byteorder, # i.e. same as the running machine...
's390x' : sys.byteorder, # i.e. same as the running machine...
}
cmd = find_objdump()
objdump = ('%(command)s -b binary -m %(machine)s '
'--endian=%(endianness)s '
'--disassembler-options=intel-mnemonics '
'--adjust-vma=%(origin)d -D %(file)s')
#
f = open(tmpfile, 'wb')
f.write(data)
f.close()
p = subprocess.Popen(objdump % {
'command': cmd,
'file': tmpfile,
'origin': originaddr,
'machine': objdump_machine_option[backend_name],
'endianness': machine_endianness.get(backend_name, 'little'),
}, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = p.communicate()
assert not p.returncode, ('Encountered an error running objdump: %s' %
> stderr)
E AssertionError: Encountered an error running objdump: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump: error: unknown argument '-b'
rpython/jit/backend/tool/viewcode.py:82: AssertionError
----------------------------- Captured stdout call -----------------------------
loading symbols from /Users/matti/build-worker-x86_64/pypy-c-jit-macos-x86-64/build/pypy/goal/pypy-c...
3 symbols found
----------------------------- Captured stderr call -----------------------------
0%..loaded
=========================== short test summary info ============================
FAIL pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py::TestBoolRewrite::()::test_boolrewrite_ptr::[18]
FAIL pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py::TestBoolRewrite::()::test_boolrewrite_ptr::[19]
FAIL pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py::TestBoolRewrite::()::test_boolrewrite_ptr::[20]
FAIL pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py::TestBoolRewrite::()::test_boolrewrite_ptr::[21]
FAIL pypy/module/pypyjit/test_pypy_c/test_boolrewrite.py::TestBoolRewrite::()::test_boolrewrite_ptr::[22]
FAIL pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py::TestLogParser::()::test
=============================== warnings summary ===============================
_pytest/resultlog.py:39
/Users/matti/build-worker-x86_64/pypy-c-jit-macos-x86-64/build/_pytest/resultlog.py:39: RemovedInPytest4Warning: --result-log is deprecated and scheduled for removal in pytest 4.0.
See https://docs.pytest.org/en/latest/usage.html#creating-resultlog-format-files for more information.
_issue_config_warning(RESULT_LOG, config)
-- Docs: https://docs.pytest.org/en/latest/warnings.html
======== 6 failed, 1197 passed, 4 skipped, 1 warnings in 178.63 seconds ========
program finished with exit code 1
elapsedTime=179.201476