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.15 58962 22
SSH_CONNECTION=10.0.0.15 58962 10.0.0.16 22
SSH_TTY=/dev/ttys000
TERM=xterm-256color
TMPDIR=/tmp/buildbot-x86_64/pytest
USER=matti
_=/Users/matti/oss/pypy-x86_64-buildbot/bin/buildslave
using PTY: False
/Users/matti/oss/pypy-x86_64-buildbot/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 darwin -- Python 2.7.18[pypy-7.3.17-final], pytest-2.9.2, py-1.4.29, pluggy-0.3.1
pytest-2.9.2 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
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 ..
pypy/module/pypyjit/test_pypy_c/test_bug.py s
pypy/module/pypyjit/test_pypy_c/test_call.py .........................s.
pypy/module/pypyjit/test_pypy_c/test_capture_locals.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_itertools.py ..
pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py F
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 .......................
pypy/module/pypyjit/test_pypy_c/test_shift.py ...........................................................................................................................................................................................................................
pypy/module/pypyjit/test_pypy_c/test_string.py ......x............
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 ===================================
______________________________ TestLogParser.test ______________________________
self = <pypy.module.pypyjit.test_pypy_c.test_jitlogparser.TestLogParser object at 0x00007fb0084d97c0>
def test(self):
def fn_with_bridges(N):
def is_prime(x):
for y in range(2, x):
if x % y == 0:
return False
return True
result = 0
for x in range(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 = {}
for loop in loops:
if hasattr(loop, 'force_asm'):
try:
> loop.force_asm()
pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
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\...%@\xfaASM\x8d\x9b\x80\xe7\xff\xffA\xff\xe3\xff5\x86\xf7\xff\xffM\x8d\x9b\xd0%@\xfaASM\x8d\x9b\xc0\xe6\xff\xffA\xff\xe3'
originaddr = 4479634016L, 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/pypy3.11-c...
3 symbols found
----------------------------- Captured stderr call -----------------------------
0%..loaded
=========================== short test summary info ============================
FAIL pypy/module/pypyjit/test_pypy_c/test_jitlogparser.py::TestLogParser::()::test
======= 1 failed, 1031 passed, 162 skipped, 1 xfailed in 206.59 seconds ========
program finished with exit code 1
elapsedTime=207.655649