Unable to find image 'ghcr.io/pypy/buildworker_i686@sha256:5bec0450459eccc503ee3dc2448a5d207c085ab267477c78fbca6eba1d64b984' locally ghcr.io/pypy/buildworker_i686@sha256:5bec0450459eccc503ee3dc2448a5d207c085ab267477c78fbca6eba1d64b984: Pulling from pypy/buildworker_i686 106754d5a1c8: Pulling fs layer 1f3dbe844647: Pulling fs layer 4dff31859b47: Pulling fs layer 4f4fb700ef54: Pulling fs layer 430f3d78dceb: Pulling fs layer 89e30e38585c: Pulling fs layer 2906afb99a9f: Pulling fs layer 40445660bf28: Pulling fs layer 92bd4f00f3c7: Pulling fs layer 78cc64b5426f: Pulling fs layer 5fbd53d45f99: Pulling fs layer da5da9e0d2a8: Pulling fs layer 6e93f700f7e3: Pulling fs layer 6963cad2ec2c: Pulling fs layer dee2db8d2866: Pulling fs layer d79238a74a2e: Pulling fs layer 1b9a0c4f0d0a: Pulling fs layer 133cb1401b2d: Pulling fs layer e464f07e8afb: Pulling fs layer fb24ba1aaf79: Pulling fs layer a635786812b3: Pulling fs layer 13db909bf3e6: Pulling fs layer 68a1d8dc8732: Pulling fs layer 22b0f1fd4f4a: Pulling fs layer 92c281b5b821: Pulling fs layer 5c4e4aed138a: Pulling fs layer f3211d837144: Pulling fs layer e54b306eee4f: Pulling fs layer 8372e20df7aa: Pulling fs layer ceb0cf186156: Pulling fs layer 387d2f646739: Pulling fs layer 508240997352: Pulling fs layer 8f09dc1ac434: Pulling fs layer 2fc1a05acb03: Pulling fs layer 4ef4cc356149: Pulling fs layer 581f40aa00f5: Pulling fs layer 37c0b17733ee: Pulling fs layer d3ea65d14d8b: Pulling fs layer be3c7978393b: Pulling fs layer 27cabc60c1cd: Pulling fs layer 232cae68a158: Pulling fs layer adef888fa773: Pulling fs layer 99aab6a15cc9: Pulling fs layer f2baec005172: Pulling fs layer dee2db8d2866: Waiting d79238a74a2e: Waiting 4f4fb700ef54: Waiting 430f3d78dceb: Waiting 89e30e38585c: Waiting 2906afb99a9f: Waiting 1b9a0c4f0d0a: Waiting 40445660bf28: Waiting 92bd4f00f3c7: Waiting 133cb1401b2d: Waiting 78cc64b5426f: Waiting e464f07e8afb: Waiting 5fbd53d45f99: Waiting fb24ba1aaf79: Waiting da5da9e0d2a8: Waiting a635786812b3: Waiting 6e93f700f7e3: Waiting 6963cad2ec2c: Waiting 13db909bf3e6: Waiting 2fc1a05acb03: Waiting 68a1d8dc8732: Waiting 4ef4cc356149: Waiting 22b0f1fd4f4a: Waiting 581f40aa00f5: Waiting 37c0b17733ee: Waiting d3ea65d14d8b: Waiting 92c281b5b821: Waiting be3c7978393b: Waiting 5c4e4aed138a: Waiting 27cabc60c1cd: Waiting f3211d837144: Waiting 232cae68a158: Waiting e54b306eee4f: Waiting adef888fa773: Waiting 8372e20df7aa: Waiting 99aab6a15cc9: Waiting ceb0cf186156: Waiting f2baec005172: Waiting 387d2f646739: Waiting 508240997352: Waiting 8f09dc1ac434: Waiting 4dff31859b47: Verifying Checksum 4dff31859b47: Download complete 1f3dbe844647: Verifying Checksum 1f3dbe844647: Download complete 4f4fb700ef54: Verifying Checksum 4f4fb700ef54: Download complete 430f3d78dceb: Download complete 89e30e38585c: Verifying Checksum 89e30e38585c: Download complete 40445660bf28: Verifying Checksum 40445660bf28: Download complete 92bd4f00f3c7: Download complete 78cc64b5426f: Download complete 106754d5a1c8: Verifying Checksum 106754d5a1c8: Download complete 5fbd53d45f99: Verifying Checksum 5fbd53d45f99: Download complete da5da9e0d2a8: Download complete 6e93f700f7e3: Download complete 6963cad2ec2c: Verifying Checksum 6963cad2ec2c: Download complete dee2db8d2866: Verifying Checksum dee2db8d2866: Download complete d79238a74a2e: Verifying Checksum d79238a74a2e: Download complete 1b9a0c4f0d0a: Verifying Checksum 1b9a0c4f0d0a: Download complete e464f07e8afb: Download complete 133cb1401b2d: Verifying Checksum 133cb1401b2d: Download complete a635786812b3: Verifying Checksum a635786812b3: Download complete 13db909bf3e6: Verifying Checksum 13db909bf3e6: Download complete 106754d5a1c8: Pull complete 2906afb99a9f: Verifying Checksum 2906afb99a9f: Download complete 68a1d8dc8732: Verifying Checksum 68a1d8dc8732: Download complete 22b0f1fd4f4a: Download complete 92c281b5b821: Download complete f3211d837144: Verifying Checksum f3211d837144: Download complete 5c4e4aed138a: Verifying Checksum 5c4e4aed138a: Download complete e54b306eee4f: Download complete 8372e20df7aa: Download complete ceb0cf186156: Verifying Checksum ceb0cf186156: Download complete 387d2f646739: Verifying Checksum 387d2f646739: Download complete 508240997352: Verifying Checksum 508240997352: Download complete 8f09dc1ac434: Verifying Checksum 8f09dc1ac434: Download complete fb24ba1aaf79: Verifying Checksum fb24ba1aaf79: Download complete 4ef4cc356149: Verifying Checksum 2fc1a05acb03: Verifying Checksum 2fc1a05acb03: Download complete 581f40aa00f5: Verifying Checksum 581f40aa00f5: Download complete 37c0b17733ee: Download complete be3c7978393b: Verifying Checksum be3c7978393b: Download complete 27cabc60c1cd: Verifying Checksum 27cabc60c1cd: Download complete d3ea65d14d8b: Verifying Checksum d3ea65d14d8b: Download complete adef888fa773: Verifying Checksum adef888fa773: Download complete 99aab6a15cc9: Verifying Checksum 99aab6a15cc9: Download complete f2baec005172: Download complete 232cae68a158: Verifying Checksum 232cae68a158: Download complete 1f3dbe844647: Pull complete 4dff31859b47: Pull complete 4f4fb700ef54: Pull complete 430f3d78dceb: Pull complete 89e30e38585c: Pull complete 2906afb99a9f: Pull complete 40445660bf28: Pull complete 92bd4f00f3c7: Pull complete 78cc64b5426f: Pull complete 5fbd53d45f99: Pull complete da5da9e0d2a8: Pull complete 6e93f700f7e3: Pull complete 6963cad2ec2c: Pull complete dee2db8d2866: Pull complete d79238a74a2e: Pull complete 1b9a0c4f0d0a: Pull complete 133cb1401b2d: Pull complete e464f07e8afb: Pull complete fb24ba1aaf79: Pull complete a635786812b3: Pull complete 13db909bf3e6: Pull complete 68a1d8dc8732: Pull complete 22b0f1fd4f4a: Pull complete 92c281b5b821: Pull complete 5c4e4aed138a: Pull complete f3211d837144: Pull complete e54b306eee4f: Pull complete 8372e20df7aa: Pull complete ceb0cf186156: Pull complete 387d2f646739: Pull complete 508240997352: Pull complete 8f09dc1ac434: Pull complete 2fc1a05acb03: Pull complete 4ef4cc356149: Pull complete 581f40aa00f5: Pull complete 37c0b17733ee: Pull complete d3ea65d14d8b: Pull complete be3c7978393b: Pull complete 27cabc60c1cd: Pull complete 232cae68a158: Pull complete adef888fa773: Pull complete 99aab6a15cc9: Pull complete f2baec005172: Pull complete Digest: sha256:5bec0450459eccc503ee3dc2448a5d207c085ab267477c78fbca6eba1d64b984 Status: Downloaded newer image for ghcr.io/pypy/buildworker_i686@sha256:5bec0450459eccc503ee3dc2448a5d207c085ab267477c78fbca6eba1d64b984 using config pypy/testrunner_cfg.py using config machine_cfg.py running 4 parallel test workers setting MAKEFLAGS to ' ' (space) -- jit/backend/x86/test/test_assembler.py -- jit/backend/x86/test/test_basic.py -- jit/backend/x86/test/test_call.py -- jit/backend/x86/test/test_callbuilder.py -- jit/backend/x86/test/test_calling_convention.py -- jit/backend/x86/test/test_del.py -- jit/backend/x86/test/test_dict.py -- jit/backend/x86/test/test_exception.py -- jit/backend/x86/test/test_fficall.py -- jit/backend/x86/test/test_float.py -- jit/backend/x86/test/test_jitlog.py -- jit/backend/x86/test/test_jump.py -- jit/backend/x86/test/test_list.py -- jit/backend/x86/test/test_llop.py -- jit/backend/x86/test/test_longlong.py -- jit/backend/x86/test/test_loop_unroll.py -- jit/backend/x86/test/test_quasiimmut.py -- jit/backend/x86/test/test_rawmem.py -- jit/backend/x86/test/test_recursive.py -- jit/backend/x86/test/test_regalloc.py -- jit/backend/x86/test/test_regloc.py -- jit/backend/x86/test/test_runner.py -- jit/backend/x86/test/test_rvmprof.py -- jit/backend/x86/test/test_rx86.py -- jit/backend/x86/test/test_rx86_32_auto_encoding.py -- jit/backend/x86/test/test_rx86_64_auto_encoding.py -- jit/backend/x86/test/test_send.py -- jit/backend/x86/test/test_slist.py -- jit/backend/x86/test/test_string.py -- jit/backend/x86/test/test_symbolic_x86.py -- jit/backend/x86/test/test_tl.py -- jit/backend/x86/test/test_tlc.py -- jit/backend/x86/test/test_tracelimit.py -- jit/backend/x86/test/test_virtual.py -- jit/backend/x86/test/test_virtualizable.py -- jit/backend/x86/test/test_virtualref.py -- jit/backend/x86/test/test_x86vector.py -- jit/backend/x86/test/test_zmath.py -- jit/backend/x86/test/test_zrpy_gc.py -- jit/backend/x86/test/test_zrpy_gc_boehm.py -- jit/backend/x86/test/test_zrpy_releasegil.py -- jit/backend/x86/test/test_zrpy_vecopt.py -- jit/backend/x86/test/test_zrpy_vmprof.py -- jit/backend/x86/test/test_ztranslation_basic.py -- jit/backend/x86/test/test_ztranslation_call_assembler.py -- jit/backend/x86/test/test_ztranslation_external_exception.py -- jit/backend/x86/test/test_ztranslation_jit_stats.py -- jit/backend/x86/tool/test/test_viewcode.py -- total: 48 to run ++ 14:13:57 starting jit/backend/x86/test/test_assembler.py [1 started in total] ++ 14:13:57 starting jit/backend/x86/test/test_basic.py [2 started in total] ++ 14:13:57 starting jit/backend/x86/test/test_call.py [3 started in total] ++ 14:13:57 starting jit/backend/x86/test/test_callbuilder.py [4 started in total] __ jit/backend/x86/test/test_callbuilder.py [1 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 2 items jit/backend/x86/test/test_callbuilder.py .. =========================== 2 passed in 0.80 seconds =========================== ++ 14:14:10 starting jit/backend/x86/test/test_calling_convention.py [5 started in total] __ jit/backend/x86/test/test_assembler.py [2 done in total, somefailed=False] _ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.py rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 3 items jit/backend/x86/test/test_assembler.py ... =========================== 3 passed in 2.63 seconds =========================== ++ 14:14:12 starting jit/backend/x86/test/test_del.py [6 started in total] __ jit/backend/x86/test/test_del.py [3 done in total, somefailed=False] _______ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 3 items jit/backend/x86/test/test_del.py ... =========================== 3 passed in 3.29 seconds =========================== ++ 14:14:17 starting jit/backend/x86/test/test_dict.py [7 started in total] __ jit/backend/x86/test/test_call.py [4 done in total, somefailed=False] ______ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 16 items jit/backend/x86/test/test_call.py ................ ========================== 16 passed in 11.13 seconds ========================== ++ 14:14:21 starting jit/backend/x86/test/test_exception.py [8 started in total] __ jit/backend/x86/test/test_exception.py [5 done in total, somefailed=False] _ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 32 items jit/backend/x86/test/test_exception.py s............................... ==================== 31 passed, 1 skipped in 17.43 seconds ===================== ++ 14:14:42 starting jit/backend/x86/test/test_fficall.py [9 started in total] __ jit/backend/x86/test/test_calling_convention.py [6 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 7 items jit/backend/x86/test/test_calling_convention.py ......s ===================== 6 passed, 1 skipped in 30.98 seconds ===================== ++ 14:14:48 starting jit/backend/x86/test/test_float.py [10 started in total] __ jit/backend/x86/test/test_float.py [7 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 10 items jit/backend/x86/test/test_float.py .......... ========================== 10 passed in 5.50 seconds =========================== ++ 14:14:56 starting jit/backend/x86/test/test_jitlog.py [11 started in total] __ jit/backend/x86/test/test_jitlog.py [8 done in total, somefailed=False] ____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 3 items jit/backend/x86/test/test_jitlog.py ... ========================== 3 passed in 14.75 seconds =========================== ++ 14:15:13 starting jit/backend/x86/test/test_jump.py [12 started in total] __ jit/backend/x86/test/test_fficall.py [9 done in total, somefailed=False] ___ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 12 items jit/backend/x86/test/test_fficall.py ............ ========================== 12 passed in 31.32 seconds ========================== ++ 14:15:19 starting jit/backend/x86/test/test_list.py [13 started in total] __ jit/backend/x86/test/test_jump.py [10 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 12 items jit/backend/x86/test/test_jump.py ............ ========================== 12 passed in 11.56 seconds ========================== ++ 14:15:28 starting jit/backend/x86/test/test_llop.py [14 started in total] __ jit/backend/x86/test/test_llop.py [11 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 5 items jit/backend/x86/test/test_llop.py ..... =========================== 5 passed in 6.57 seconds =========================== ++ 14:15:36 starting jit/backend/x86/test/test_longlong.py [15 started in total] __ jit/backend/x86/test/test_dict.py [12 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 20 items jit/backend/x86/test/test_dict.py .................... ========================== 20 passed in 77.36 seconds ========================== ++ 14:15:38 starting jit/backend/x86/test/test_loop_unroll.py [16 started in total] __ jit/backend/x86/test/test_list.py [13 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 24 items jit/backend/x86/test/test_list.py ...s.................... ==================== 23 passed, 1 skipped in 21.15 seconds ===================== ++ 14:15:43 starting jit/backend/x86/test/test_quasiimmut.py [17 started in total] __ jit/backend/x86/test/test_longlong.py [14 done in total, somefailed=False] _ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 14 items jit/backend/x86/test/test_longlong.py .............. ========================== 14 passed in 9.71 seconds =========================== ++ 14:15:48 starting jit/backend/x86/test/test_rawmem.py [18 started in total] __ jit/backend/x86/test/test_rawmem.py [15 done in total, somefailed=False] ___ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 7 items jit/backend/x86/test/test_rawmem.py ....... =========================== 7 passed in 4.31 seconds =========================== ++ 14:15:55 starting jit/backend/x86/test/test_recursive.py [19 started in total] __ jit/backend/x86/test/test_quasiimmut.py [16 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 20 items jit/backend/x86/test/test_quasiimmut.py ..............s..... ==================== 19 passed, 1 skipped in 13.20 seconds ===================== ++ 14:16:00 starting jit/backend/x86/test/test_regalloc.py [20 started in total] __ jit/backend/x86/test/test_regalloc.py [17 done in total, somefailed=False] _ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 19 items jit/backend/x86/test/test_regalloc.py ....s........s.ssss ===================== 13 passed, 6 skipped in 1.85 seconds ===================== ++ 14:16:05 starting jit/backend/x86/test/test_regloc.py [21 started in total] __ jit/backend/x86/test/test_regloc.py [18 done in total, somefailed=False] ___ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 25 items jit/backend/x86/test/test_regloc.py .....ssssssssssssssssssss ===================== 5 passed, 20 skipped in 0.42 seconds ===================== ++ 14:16:07 starting jit/backend/x86/test/test_runner.py [22 started in total] __ jit/backend/x86/test/test_basic.py [19 done in total, somefailed=False] ____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 199 items jit/backend/x86/test/test_basic.py .s.....................................................................................sssss..................................................s...................s..............s...........s......... =================== 189 passed, 10 skipped in 129.19 seconds =================== ++ 14:16:22 starting jit/backend/x86/test/test_rvmprof.py [23 started in total] __ jit/backend/x86/test/test_loop_unroll.py [20 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 37 items jit/backend/x86/test/test_loop_unroll.py ..............................ss.s... ==================== 34 passed, 3 skipped in 46.50 seconds ===================== ++ 14:16:29 starting jit/backend/x86/test/test_rx86.py [24 started in total] __ jit/backend/x86/test/test_rx86.py [21 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 34 items jit/backend/x86/test/test_rx86.py .................................. ========================== 34 passed in 0.10 seconds =========================== ++ 14:16:31 starting jit/backend/x86/test/test_rx86_32_auto_encoding.py [25 started in total] __ jit/backend/x86/test/test_rvmprof.py [22 done in total, somefailed=False] __ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 3 items jit/backend/x86/test/test_rvmprof.py ... =========================== 3 passed in 8.71 seconds =========================== ++ 14:16:35 starting jit/backend/x86/test/test_rx86_64_auto_encoding.py [26 started in total] __ jit/backend/x86/test/test_rx86_64_auto_encoding.py [23 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 0 items / 1 skipped ========================== 1 skipped in 0.04 seconds =========================== ++ 14:16:37 starting jit/backend/x86/test/test_send.py [27 started in total] __ jit/backend/x86/test/test_send.py [24 done in total, somefailed=False] _____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 23 items jit/backend/x86/test/test_send.py ....................... ========================== 23 passed in 21.20 seconds ========================== ++ 14:17:01 starting jit/backend/x86/test/test_slist.py [28 started in total] __ jit/backend/x86/test/test_recursive.py [25 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 42 items jit/backend/x86/test/test_recursive.py ................s........s..............ss ==================== 38 passed, 4 skipped in 68.78 seconds ===================== ++ 14:17:08 starting jit/backend/x86/test/test_string.py [29 started in total] __ jit/backend/x86/test/test_slist.py [26 done in total, somefailed=False] ____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 6 items jit/backend/x86/test/test_slist.py s..... ===================== 5 passed, 1 skipped in 6.24 seconds ====================== ++ 14:17:09 starting jit/backend/x86/test/test_symbolic_x86.py [30 started in total] __ jit/backend/x86/test/test_symbolic_x86.py [27 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 6 items jit/backend/x86/test/test_symbolic_x86.py ...... =========================== 6 passed in 0.02 seconds =========================== ++ 14:17:11 starting jit/backend/x86/test/test_tl.py [31 started in total] __ jit/backend/x86/test/test_rx86_32_auto_encoding.py [28 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 615 items jit/backend/x86/test/test_rx86_32_auto_encoding.py ..................................................s...................................................................................s..s....................................................................................................................s........................................................................................................................................................................................................................................................................................................................................................................ ==================== 611 passed, 4 skipped in 40.85 seconds ==================== ++ 14:17:16 starting jit/backend/x86/test/test_tlc.py [32 started in total] __ jit/backend/x86/test/test_tlc.py [29 done in total, somefailed=False] ______ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 3 items jit/backend/x86/test/test_tlc.py ss. ===================== 1 passed, 2 skipped in 9.27 seconds ====================== ++ 14:17:28 starting jit/backend/x86/test/test_tracelimit.py [33 started in total] __ jit/backend/x86/test/test_tl.py [30 done in total, somefailed=False] _______ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 5 items jit/backend/x86/test/test_tl.py ..... ========================== 5 passed in 15.18 seconds =========================== ++ 14:17:28 starting jit/backend/x86/test/test_virtual.py [34 started in total] __ jit/backend/x86/test/test_virtual.py [31 done in total, somefailed=False] __ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 52 items jit/backend/x86/test/test_virtual.py .................................................... ========================== 52 passed in 33.19 seconds ========================== ++ 14:18:06 starting jit/backend/x86/test/test_virtualizable.py [35 started in total] __ jit/backend/x86/test/test_runner.py [32 done in total, somefailed=False] ___ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 172 items jit/backend/x86/test/test_runner.py ............................................................................................s....ss..................................................sssss....s....ss...s... =================== 160 passed, 12 skipped in 118.54 seconds =================== read saved errno: 24 read saved errno: 0 read saved errno: 25 read saved errno: 0 ++ 14:18:11 starting jit/backend/x86/test/test_virtualref.py [36 started in total] __ jit/backend/x86/test/test_tracelimit.py [33 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 5 items jit/backend/x86/test/test_tracelimit.py ..... ========================== 5 passed in 47.23 seconds =========================== ++ 14:18:19 starting jit/backend/x86/test/test_x86vector.py [37 started in total] __ jit/backend/x86/test/test_x86vector.py [34 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 0 items / 1 skipped ========================== 1 skipped in 0.55 seconds =========================== ++ 14:18:21 starting jit/backend/x86/test/test_zmath.py [38 started in total] __ jit/backend/x86/test/test_virtualref.py [35 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 21 items jit/backend/x86/test/test_virtualref.py ..s.................. ==================== 20 passed, 1 skipped in 18.94 seconds ===================== ++ 14:18:35 starting jit/backend/x86/test/test_zrpy_gc.py [39 started in total] __ jit/backend/x86/test/test_virtualizable.py [36 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 37 items jit/backend/x86/test/test_virtualizable.py s...x................................ =============== 35 passed, 1 skipped, 1 xfailed in 29.58 seconds =============== ++ 14:18:39 starting jit/backend/x86/test/test_zrpy_gc_boehm.py [40 started in total] __ jit/backend/x86/test/test_string.py [37 done in total, somefailed=False] ___ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 97 items jit/backend/x86/test/test_string.py .............................s............................................s...................... ==================== 95 passed, 2 skipped in 86.46 seconds ===================== ++ 14:18:43 starting jit/backend/x86/test/test_zrpy_releasegil.py [41 started in total] __ jit/backend/x86/test/test_zmath.py [38 done in total, somefailed=False] ____ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_zmath.py . ========================== 1 passed in 21.47 seconds =========================== ++ 14:18:45 starting jit/backend/x86/test/test_zrpy_vecopt.py [42 started in total] __ jit/backend/x86/test/test_zrpy_gc_boehm.py [39 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_zrpy_gc_boehm.py F =================================== FAILURES =================================== ______________________________ test_compile_boehm ______________________________ def compile_boehm_test(): myjitdriver = JitDriver(greens = [], reds = ['n', 'x']) @dont_look_inside def see(lst, n): assert len(lst) == 3 assert lst[0] == n+10 assert lst[1] == n+20 assert lst[2] == n+30 def main(n, x): while n > 0: myjitdriver.can_enter_jit(n=n, x=x) myjitdriver.jit_merge_point(n=n, x=x) y = X() y.foo = x.foo n -= y.foo see([n+10, n+20, n+30], n) > res = compile_and_run(get_entry(get_g(main)), "boehm", jit=True) jit/backend/llsupport/test/zrpy_gc_boehm_test.py:50: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_boehm_test.py:20: in compile_and_run cbuilder = compile(f, gc, **kwds) jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] specializing: 100 / 447 blocks (22%) [rtyper] specializing: 200 / 506 blocks (39%) [rtyper] specializing: 300 / 510 blocks (58%) [rtyper] specializing: 400 / 510 blocks (78%) [rtyper] specializing: 500 / 510 blocks (98%) [rtyper] -=- specialized 510 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 66 more blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] specializing: 600 / 616 blocks (97%) [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 5 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 1 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 3 more blocks -=- [jitcodewriter:info] making JitCodes... [jitcodewriter:info] There are 1 JitCode instances. [jitcodewriter:info] There are 3 -live- ops. Size of liveness is 5 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 2 effectinfos: [jitcodewriter] 1 descrs for arrays [jitcodewriter] 0 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 2 bitstrings, mean length 0.5, max length 1 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_zrpy_gc_boehm.py::test_compile_boehm ========================== 1 failed in 68.71 seconds =========================== ++ 14:19:52 starting jit/backend/x86/test/test_zrpy_vmprof.py [43 started in total] __ jit/backend/x86/test/test_zrpy_vecopt.py [40 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_zrpy_vecopt.py F =================================== FAILURES =================================== _________________________ TestVecOptX86.test_translate _________________________ self = def test_translate(self): jd = JitDriver(greens = [], reds = 'auto', vectorize=True) def f(x): pass i = 0 while i < 100: jd.jit_merge_point() i += 1 > compile(f, 'boehm', jit=True) jit/backend/x86/test/test_zrpy_vecopt.py:31: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/x86/test/test_zrpy_vecopt.py:20: in compile apply_jit(t, vec=True) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] -=- specialized 5 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 100 / 365 blocks (27%) [rtyper] specializing: 200 / 418 blocks (47%) [rtyper] specializing: 300 / 418 blocks (71%) [rtyper] specializing: 400 / 418 blocks (95%) [rtyper] -=- specialized 409 more blocks -=- [rtyper] -=- specialized 26 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 1 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 0 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 3 more blocks -=- [jitcodewriter:info] making JitCodes... [jitcodewriter:info] There are 1 JitCode instances. [jitcodewriter:info] There are 3 -live- ops. Size of liveness is 4 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 1 effectinfos: [jitcodewriter] 0 descrs for arrays [jitcodewriter] 0 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 1 bitstrings, mean length 0.0, max length 0 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_zrpy_vecopt.py::TestVecOptX86::()::test_translate ========================== 1 failed in 66.48 seconds =========================== ++ 14:19:58 starting jit/backend/x86/test/test_ztranslation_basic.py [44 started in total] __ jit/backend/x86/test/test_zrpy_gc.py [41 done in total, somefailed=True] ___ [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 19 items jit/backend/x86/test/test_zrpy_gc.py EEEEEEEEEEEEEEEEEEE ==================================== ERRORS ==================================== __________ ERROR at setup of TestShadowStack.test_compile_framework_1 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ---------------------------- Captured stdout setup ----------------------------- {'compile_framework_1': 0, 'compile_framework_2': 1, 'compile_framework_3': 2, 'compile_framework_3_extra': 3, 'compile_framework_4': 4, 'compile_framework_5': 5, 'compile_framework_7': 6, 'compile_framework_7_interior': 7, 'compile_framework_8': 8, 'compile_framework_9': 9, 'compile_framework_bug1': 10, 'compile_framework_call_assembler': 11, 'compile_framework_external_exception_handling': 12, 'compile_framework_float': 13, 'compile_framework_minimal_size_in_nursery': 14, 'compile_framework_vref': 15, 'multiple_pinned': 16, 'pinned_simple': 17, 'pinned_unpin': 18} ---------------------------- Captured stderr setup ----------------------------- [rtyper] specializing: 100 / 1124 blocks (8%) [rtyper] specializing: 200 / 1275 blocks (15%) [rtyper] specializing: 300 / 1275 blocks (23%) [rtyper] specializing: 400 / 1328 blocks (30%) [rtyper] specializing: 500 / 1332 blocks (37%) [rtyper] specializing: 600 / 1332 blocks (45%) [rtyper] specializing: 700 / 1332 blocks (52%) [rtyper] specializing: 800 / 1332 blocks (60%) [rtyper] specializing: 900 / 1332 blocks (67%) [rtyper] specializing: 1000 / 1332 blocks (75%) [rtyper] specializing: 1100 / 1332 blocks (82%) [rtyper] specializing: 1200 / 1332 blocks (90%) [rtyper] specializing: 1300 / 1332 blocks (97%) [rtyper] -=- specialized 1332 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 59 more blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 1400 / 1401 blocks (99%) [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:removeassert] Removed 1 asserts [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 356 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 20 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 6 more blocks -=- [jitcodewriter:info] making JitCodes... [rtyper] -=- specialized 2 more blocks -=- [jitcodewriter:info] There are 43 JitCode instances. [jitcodewriter:info] There are 202 -live- ops. Size of liveness is 220 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 18 effectinfos: [jitcodewriter] 1 descrs for arrays [jitcodewriter] 27 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 12 bitstrings, mean length 1.2, max length 2 __________ ERROR at setup of TestShadowStack.test_compile_framework_2 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError __________ ERROR at setup of TestShadowStack.test_compile_framework_3 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError _______ ERROR at setup of TestShadowStack.test_compile_framework_3_extra _______ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError __________ ERROR at setup of TestShadowStack.test_compile_framework_4 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError __________ ERROR at setup of TestShadowStack.test_compile_framework_5 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError __________ ERROR at setup of TestShadowStack.test_compile_framework_7 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError _____ ERROR at setup of TestShadowStack.test_compile_framework_7_interior ______ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError __________ ERROR at setup of TestShadowStack.test_compile_framework_8 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError __________ ERROR at setup of TestShadowStack.test_compile_framework_9 __________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ERROR at setup of TestShadowStack.test_compile_framework_external_exception_handling cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ________ ERROR at setup of TestShadowStack.test_compile_framework_bug1 _________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ________ ERROR at setup of TestShadowStack.test_compile_framework_vref _________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ________ ERROR at setup of TestShadowStack.test_compile_framework_float ________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ERROR at setup of TestShadowStack.test_compile_framework_minimal_size_in_nursery cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ___ ERROR at setup of TestShadowStack.test_compile_framework_call_assembler ____ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError _____________ ERROR at setup of TestShadowStack.test_pinned_simple _____________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError _____________ ERROR at setup of TestShadowStack.test_pinned_unpin ______________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ____________ ERROR at setup of TestShadowStack.test_multiple_pinned ____________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ========================== 19 error in 82.52 seconds =========================== ++ 14:20:02 starting jit/backend/x86/test/test_ztranslation_call_assembler.py [45 started in total] __ jit/backend/x86/test/test_zrpy_releasegil.py [42 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 3 items jit/backend/x86/test/test_zrpy_releasegil.py EEE ==================================== ERRORS ==================================== ________________ ERROR at setup of TestShadowStack.test_simple _________________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ---------------------------- Captured stdout setup ----------------------------- {'close_stack': 0, 'get_set_errno': 1, 'simple': 2} ---------------------------- Captured stderr setup ----------------------------- [rtyper] specializing: 100 / 1100 blocks (9%) [rtyper] specializing: 200 / 1217 blocks (16%) [rtyper] specializing: 300 / 1217 blocks (24%) [rtyper] specializing: 400 / 1221 blocks (32%) [rtyper] specializing: 500 / 1221 blocks (40%) [rtyper] specializing: 600 / 1221 blocks (49%) [rtyper] specializing: 700 / 1221 blocks (57%) [rtyper] specializing: 800 / 1221 blocks (65%) [rtyper] specializing: 900 / 1221 blocks (73%) [rtyper] specializing: 1000 / 1221 blocks (81%) [rtyper] specializing: 1100 / 1221 blocks (90%) [rtyper] specializing: 1200 / 1221 blocks (98%) [rtyper] -=- specialized 1221 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 27 more blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:removeassert] Removed 2 asserts [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 19 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 31 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 3 more blocks -=- [jitcodewriter:info] making JitCodes... [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [jitcodewriter:info] There are 12 JitCode instances. [jitcodewriter:info] There are 38 -live- ops. Size of liveness is 49 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 11 effectinfos: [jitcodewriter] 1 descrs for arrays [jitcodewriter] 2 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 2 bitstrings, mean length 0.5, max length 1 ______________ ERROR at setup of TestShadowStack.test_close_stack ______________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError _____________ ERROR at setup of TestShadowStack.test_get_set_errno _____________ cls = def setup_class(cls): funcs = [] name_to_func = {} for fullname in dir(cls): if not fullname.startswith('define'): continue definefunc = getattr(cls, fullname) _, name = fullname.split('_', 1) beforefunc, loopfunc, afterfunc = definefunc.im_func(cls) if beforefunc is None: def beforefunc(n, x): return n, x, None, None, None, None, None, None, None, None, None, '' if afterfunc is None: def afterfunc(n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s): pass beforefunc.__name__ = 'before_'+name loopfunc.__name__ = 'loop_'+name afterfunc.__name__ = 'after_'+name funcs.append((beforefunc, loopfunc, afterfunc)) assert name not in name_to_func name_to_func[name] = len(name_to_func) print(name_to_func) def allfuncs(name, n): x = X() x.foo = 2 main_allfuncs(name, n, x) x.foo = 5 return weakref.ref(x) def main_allfuncs(name, n, x): num = name_to_func[name] n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][0](n, x) while n > 0: myjitdriver.can_enter_jit(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) myjitdriver.jit_merge_point(num=num, n=n, x=x, x0=x0, x1=x1, x2=x2, x3=x3, x4=x4, x5=x5, x6=x6, x7=x7, l=l, s=s) n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s = funcs[num][1]( n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) funcs[num][2](n, x, x0, x1, x2, x3, x4, x5, x6, x7, l, s) myjitdriver = JitDriver(greens = ['num'], reds = ['n', 'x', 'x0', 'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7', 'l', 's'], is_recursive=True) cls.main_allfuncs = staticmethod(main_allfuncs) cls.name_to_func = name_to_func OLD_DEBUG = GcLLDescr_framework.DEBUG try: GcLLDescr_framework.DEBUG = True cls.cbuilder = compile(get_entry(allfuncs), cls.gc, gcrootfinder=cls.gcrootfinder, jit=True, > thread=True) jit/backend/llsupport/test/zrpy_gc_test.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/llsupport/test/zrpy_gc_test.py:105: in compile apply_jit(t) jit/metainterp/warmspot.py:74: in apply_jit warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError =========================== 3 error in 75.14 seconds =========================== ++ 14:20:03 starting jit/backend/x86/test/test_ztranslation_external_exception.py [46 started in total] __ jit/backend/x86/test/test_zrpy_vmprof.py [43 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_zrpy_vmprof.py F =================================== FAILURES =================================== ___________________________ TestZVMprof.test_vmprof ____________________________ self = def test_vmprof(self): from rpython.rlib import rvmprof class MyCode: _vmprof_unique_id = 0 _vmprof_weak_list = RWeakListMixin() ; _vmprof_weak_list.initialize() def __init__(self, name): self.name = name def get_name(code): return code.name code2 = MyCode("py:y:foo:4") rvmprof.register_code(code2, get_name) try: rvmprof.register_code_object_class(MyCode, get_name) except rvmprof.VMProfPlatformUnsupported as e: py.test.skip(str(e)) def get_unique_id(code): return rvmprof.get_unique_id(code) driver = JitDriver(greens = ['code'], reds = ['i', 's', 'num'], is_recursive=True, get_unique_id=get_unique_id) @rvmprof.vmprof_execute_code("xcode13", lambda code, num: code) def main(code, num): return main_jitted(code, num) def main_jitted(code, num): s = 0 i = 0 while i < num: driver.jit_merge_point(code=code, i=i, s=s, num=num) s += (i << 1) if i % 3 == 0 and code is not code2: main(code2, 100) i += 1 return s tmpfilename = str(udir.join('test_rvmprof')) def f(num): rthread.get_ident() # register TLOFS_thread_ident code = MyCode("py:x:foo:3") rvmprof.register_code(code, get_name) fd = os.open(tmpfilename, os.O_WRONLY | os.O_CREAT, 0666) period = 0.0001 rvmprof.enable(fd, period) res = main(code, num) #assert res == 499999500000 rvmprof.disable() os.close(fd) return 0 def check_vmprof_output(): from vmprof import read_profile tmpfile = str(udir.join('test_rvmprof')) stats = read_profile(tmpfile) t = stats.get_tree() assert t.name == 'py:x:foo:3' assert len(t.children) == 1 # jit > self.meta_interp(f, [1000000], inline=True) jit/backend/llsupport/test/zrpy_vmprof_test.py:84: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/test/support.py:73: in meta_interp warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] specializing: 100 / 641 blocks (15%) [rtyper] specializing: 200 / 730 blocks (27%) [rtyper] specializing: 300 / 732 blocks (40%) [rtyper] specializing: 400 / 732 blocks (54%) [rtyper] specializing: 500 / 732 blocks (68%) [rtyper] specializing: 600 / 737 blocks (81%) [rtyper] specializing: 700 / 737 blocks (94%) [rtyper] -=- specialized 741 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 800 / 1027 blocks (77%) [rtyper] specializing: 900 / 1027 blocks (87%) [rtyper] specializing: 1000 / 1027 blocks (97%) [rtyper] -=- specialized 282 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 15 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 2 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 1 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 8 more blocks -=- [jitcodewriter:info] making JitCodes... [jitcodewriter:info] There are 4 JitCode instances. [jitcodewriter:info] There are 12 -live- ops. Size of liveness is 22 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 4 effectinfos: [jitcodewriter] 0 descrs for arrays [jitcodewriter] 0 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 1 bitstrings, mean length 0.0, max length 0 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_zrpy_vmprof.py::TestZVMprof::()::test_vmprof ========================== 1 failed in 70.89 seconds =========================== ++ 14:21:05 starting jit/backend/x86/test/test_ztranslation_jit_stats.py [47 started in total] __ jit/backend/x86/test/test_ztranslation_external_exception.py [44 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_ztranslation_external_exception.py F =================================== FAILURES =================================== _ TestTranslationRemoveTypePtrX86.test_external_exception_handling_translates __ self = def test_external_exception_handling_translates(self): jitdriver = JitDriver(greens = [], reds = ['n', 'total']) class ImDone(Exception): def __init__(self, resvalue): self.resvalue = resvalue @dont_look_inside def f(x, total): if x <= 30: raise ImDone(total * 10) if x > 200: return 2 raise ValueError @dont_look_inside def g(x): if x > 150: raise ValueError return 2 class Base: def meth(self): return 2 class Sub(Base): def meth(self): return 1 @dont_look_inside def h(x): if x < 20000: return Sub() else: return Base() def myportal(i): set_param(jitdriver, "threshold", 3) set_param(jitdriver, "trace_eagerness", 2) total = 0 n = i while True: jitdriver.can_enter_jit(n=n, total=total) jitdriver.jit_merge_point(n=n, total=total) try: total += f(n, total) except ValueError: total += 1 try: total += g(n) except ValueError: total -= 1 n -= h(n).meth() # this is to force a GUARD_CLASS def main(i): try: myportal(i) except ImDone as e: return e.resvalue # XXX custom fishing, depends on the exact env var and format logfile = udir.join('test_ztranslation.log') os.environ['PYPYLOG'] = 'jit-log-opt:%s' % (logfile,) try: > res = self.meta_interp(main, [400]) jit/backend/llsupport/test/ztranslation_test.py:334: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/test/support.py:73: in meta_interp warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] -=- specialized 41 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 100 / 401 blocks (24%) [rtyper] specializing: 200 / 454 blocks (44%) [rtyper] specializing: 300 / 454 blocks (66%) [rtyper] specializing: 400 / 454 blocks (88%) [rtyper] -=- specialized 409 more blocks -=- [rtyper] -=- specialized 26 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] specializing: 500 / 512 blocks (97%) [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 1 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 0 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 3 more blocks -=- [jitcodewriter:info] making JitCodes... [jitcodewriter:info] There are 3 JitCode instances. [jitcodewriter:info] There are 7 -live- ops. Size of liveness is 18 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 5 effectinfos: [jitcodewriter] 0 descrs for arrays [jitcodewriter] 1 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 2 bitstrings, mean length 0.5, max length 1 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_ztranslation_external_exception.py::TestTranslationRemoveTypePtrX86::()::test_external_exception_handling_translates ========================== 1 failed in 69.56 seconds =========================== ++ 14:21:16 starting jit/backend/x86/tool/test/test_viewcode.py [48 started in total] __ jit/backend/x86/tool/test/test_viewcode.py [45 done in total, somefailed=False] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 2 items jit/backend/x86/tool/test/test_viewcode.py .. =========================== 2 passed in 0.01 seconds =========================== __ jit/backend/x86/test/test_ztranslation_basic.py [46 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_ztranslation_basic.py F =================================== FAILURES =================================== ___________________ TestTranslationX86.test_stuff_translates ___________________ self = def test_stuff_translates(self): # this is a basic test that tries to hit a number of features and their # translation: # - jitting of loops and bridges # - two virtualizable types # - set_param interface # - profiler # - full optimizer # - floats neg and abs # - cast_int_to_float # - llexternal with macro=True # - extra place for the zero after STR instances class BasicFrame(object): _virtualizable_ = ['i'] def __init__(self, i): self.i = i class Frame(BasicFrame): pass eci = ExternalCompilationInfo(post_include_bits=[''' #define pypy_my_fabs(x) fabs(x) '''], includes=['math.h']) myabs1 = rffi.llexternal('pypy_my_fabs', [lltype.Float], lltype.Float, macro=True, releasegil=False, compilation_info=eci) myabs2 = rffi.llexternal('pypy_my_fabs', [lltype.Float], lltype.Float, macro=True, releasegil=True, compilation_info=eci) @jl.returns(jl.MP_FILENAME, jl.MP_LINENO, jl.MP_INDEX) def get_location(): return ("/home.py",0,0) jitdriver = JitDriver(greens = [], reds = ['total', 'frame', 'prev_s', 'j'], virtualizables = ['frame'], get_location = get_location) def f(i, j): for param, _ in unroll_parameters: defl = PARAMETERS[param] set_param(jitdriver, param, defl) set_param(jitdriver, "threshold", 3) set_param(jitdriver, "trace_eagerness", 2) total = 0 frame = Frame(i) j = float(j) prev_s = rstr.mallocstr(16) while frame.i > 3: jitdriver.can_enter_jit(frame=frame, total=total, j=j, prev_s=prev_s) jitdriver.jit_merge_point(frame=frame, total=total, j=j, prev_s=prev_s) _get_virtualizable_token(frame) total += frame.i if frame.i >= 20: frame.i -= 2 frame.i -= 1 j *= -0.712 if j + (-j): raise ValueError j += frame.i k = myabs1(myabs2(j)) if k - abs(j): raise ValueError if k - abs(-j): raise ValueError s = rstr.mallocstr(16) rgc.ll_write_final_null_char(s) rgc.ll_write_final_null_char(prev_s) if (frame.i & 3) == 0: prev_s = s return chr(total % 253) # class Virt2(object): _virtualizable_ = ['i'] def __init__(self, i): self.i = i from rpython.rlib.libffi import types, CDLL, ArgChain from rpython.rlib.test.test_clibffi import get_libm_name libm_name = get_libm_name(sys.platform) jitdriver2 = JitDriver(greens=[], reds = ['v2', 'func', 'res', 'x'], virtualizables = ['v2']) def libffi_stuff(i, j): lib = CDLL(libm_name) func = lib.getpointer('fabs', [types.double], types.double) res = 0.0 x = float(j) v2 = Virt2(i) while v2.i > 0: jitdriver2.jit_merge_point(v2=v2, res=res, func=func, x=x) promote(func) argchain = ArgChain() argchain.arg(x) res = func.call(argchain, rffi.DOUBLE) v2.i -= 1 return res # def main(i, j): a_char = f(i, j) a_float = libffi_stuff(i, j) return ord(a_char) * 10 + int(a_float) expected = main(40, -49) > res = self.meta_interp(main, [40, -49]) jit/backend/llsupport/test/ztranslation_test.py:127: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/test/support.py:73: in meta_interp warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] specializing: 100 / 623 blocks (16%) [rtyper] specializing: 200 / 643 blocks (31%) [rtyper] specializing: 400 / 984 blocks (40%) [rtyper] specializing: 500 / 989 blocks (50%) [rtyper] specializing: 600 / 1013 blocks (59%) [rtyper] specializing: 700 / 1025 blocks (68%) [rtyper] specializing: 800 / 1032 blocks (77%) [rtyper] specializing: 900 / 1062 blocks (84%) [rtyper] specializing: 1000 / 1066 blocks (93%) [rtyper] -=- specialized 1066 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 1100 / 1343 blocks (81%) [rtyper] specializing: 1200 / 1343 blocks (89%) [rtyper] specializing: 1300 / 1343 blocks (96%) [rtyper] -=- specialized 273 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 15 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 20 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 13 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 6 more blocks -=- [jitcodewriter:info] making JitCodes... [jitcodewriter:info] There are 5 JitCode instances. [jitcodewriter:info] There are 34 -live- ops. Size of liveness is 110 bytes [rtyper] replaced 0 'jit_force_virtualizable' with <* delayed!force_virtualizable_if_necessary> [rtyper] replaced 5 'jit_force_virtualizable' with <* delayed!force_virtualizable_if_necessary> [jitcodewriter] compute_bitstrings: [jitcodewriter] 9 effectinfos: [jitcodewriter] 2 descrs for arrays [jitcodewriter] 1 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 3 bitstrings, mean length 0.7, max length 1 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_ztranslation_basic.py::TestTranslationX86::()::test_stuff_translates ========================== 1 failed in 77.62 seconds =========================== __ jit/backend/x86/test/test_ztranslation_call_assembler.py [47 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 1 items jit/backend/x86/test/test_ztranslation_call_assembler.py F =================================== FAILURES =================================== ____ TestTranslationCallAssemblerX86.test_direct_assembler_call_translates _____ self = def test_direct_assembler_call_translates(self): """Test CALL_ASSEMBLER and the recursion limit""" # - also tests threadlocalref_get from rpython.rlib.rstackovf import StackOverflow class Thing(object): def __init__(self, val): self.val = val class Frame(object): _virtualizable_ = ['thing'] driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'], virtualizables = ['frame'], get_printable_location = lambda codeno: str(codeno)) class SomewhereElse(object): pass somewhere_else = SomewhereElse() class Foo(object): pass t = ThreadLocalReference(Foo, loop_invariant=True) tf = ThreadLocalField(lltype.Char, "test_call_assembler_") def change(newthing): somewhere_else.frame.thing = newthing def main(codeno): frame = Frame() somewhere_else.frame = frame frame.thing = Thing(0) portal(codeno, frame) return frame.thing.val def portal(codeno, frame): i = 0 while i < 10: driver.can_enter_jit(frame=frame, codeno=codeno, i=i) driver.jit_merge_point(frame=frame, codeno=codeno, i=i) nextval = frame.thing.val if codeno == 0: subframe = Frame() subframe.thing = Thing(nextval) nextval = portal(1, subframe) elif frame.thing.val > 40: change(Thing(13)) nextval = 13 frame.thing = Thing(nextval + 1) i += 1 if t.get().nine != 9: raise ValueError if ord(tf.getraw()) != 0x92: raise ValueError return frame.thing.val driver2 = JitDriver(greens = [], reds = ['n']) def main2(bound): try: while portal2(bound) == -bound+1: bound *= 2 except StackOverflow: pass return bound def portal2(n): while True: driver2.jit_merge_point(n=n) n -= 1 if n <= 0: return n n = portal2(n) assert portal2(10) == -9 def setup(value): foo = Foo() foo.nine = value t.set(foo) tf.setraw("\x92") return foo def mainall(codeno, bound): foo = setup(bound + 8) result = main(codeno) + main2(bound) keepalive_until_here(foo) return result tmp_obj = setup(9) expected_1 = main(0) res = self.meta_interp(mainall, [0, 1], inline=True, > policy=StopAtXPolicy(change)) jit/backend/llsupport/test/ztranslation_test.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/test/support.py:73: in meta_interp warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] -=- specialized 78 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 100 / 367 blocks (27%) [rtyper] specializing: 200 / 433 blocks (46%) [rtyper] specializing: 300 / 486 blocks (61%) [rtyper] specializing: 400 / 486 blocks (82%) [rtyper] -=- specialized 404 more blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] specializing: 500 / 501 blocks (99%) [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 11 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 0 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 6 more blocks -=- [jitcodewriter:info] making JitCodes... [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [jitcodewriter:info] There are 4 JitCode instances. [jitcodewriter:info] There are 19 -live- ops. Size of liveness is 29 bytes [rtyper] replaced 8 'jit_force_virtualizable' with <* delayed!force_virtualizable_if_necessary> [jitcodewriter] compute_bitstrings: [jitcodewriter] 5 effectinfos: [jitcodewriter] 0 descrs for arrays [jitcodewriter] 2 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 3 bitstrings, mean length 0.7, max length 1 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_ztranslation_call_assembler.py::TestTranslationCallAssemblerX86::()::test_direct_assembler_call_translates ========================== 1 failed in 72.44 seconds =========================== __ jit/backend/x86/test/test_ztranslation_jit_stats.py [48 done in total, somefailed=True] [platform:msg] Set platform with 'host' cc=None, using cc='gcc', version='Unknown' ============================= 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 hypothesis profile 'default' -> deadline=None, database=DirectoryBasedExampleDatabase('/workspace/rpython/.hypothesis/examples') pytest-2.9.2 from /workspace/pytest.pyc rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 2 items jit/backend/x86/test/test_ztranslation_jit_stats.py sF =================================== FAILURES =================================== ______________ TestTranslationJITStatsX86.test_flush_trace_counts ______________ self = def test_flush_trace_counts(self): driver = JitDriver(greens = [], reds = ['i']) def f(): i = 0 while i < 100000: driver.jit_merge_point(i=i) i += 1 def main(): jit_hooks.stats_set_debug(None, True) f() jl.stats_flush_trace_counts(None) return 0 > res = self.meta_interp(main, []) jit/backend/llsupport/test/ztranslation_test.py:270: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ jit/backend/test/support.py:73: in meta_interp warmrunnerdesc.finish() jit/metainterp/warmspot.py:298: in finish self.annhelper.finish() rtyper/annlowlevel.py:219: in finish self.finish_rtype() rtyper/annlowlevel.py:254: in finish_rtype perform_normalizations(rtyper.annotator) rtyper/normalizecalls.py:408: in perform_normalizations normalize_call_familes(annotator) rtyper/normalizecalls.py:19: in normalize_call_familes normalize_calltable(annotator, callfamily) rtyper/normalizecalls.py:33: in normalize_calltable raise_call_table_too_complex_error(callfamily, annotator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ callfamily = annotator = def raise_call_table_too_complex_error(callfamily, annotator): msg = [] items = callfamily.calltables.items() for i, (shape1, table1) in enumerate(items): for shape2, table2 in items[i + 1:]: if shape1 == shape2: continue row1 = table1[0] row2 = table2[0] problematic_function_graphs = set(row1.values()).union(set(row2.values())) pfg = [str(graph) for graph in problematic_function_graphs] pfg.sort() msg.append("the following functions:") msg.append(" %s" % ("\n ".join(pfg), )) msg.append("are called with inconsistent numbers of arguments") msg.append("(and/or the argument names are different, which is" " not supported in this case)") if shape1[0] != shape2[0]: msg.append("sometimes with %s arguments, sometimes with %s" % (shape1[0], shape2[0])) else: pass # XXX better message in this case callers = [] msg.append("the callers of these functions are:") for tag, (caller, callee) in annotator.translator.callgraph.iteritems(): if callee not in problematic_function_graphs: continue if str(caller) in callers: continue callers.append(str(caller)) callers.sort() for caller in callers: msg.append(" %s" % (caller, )) > raise TyperError("\n".join(msg)) E TyperError: the following functions: E (rpython.jit.metainterp.optimizeopt.info:120)NonNullPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:360)StructPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:379)AbstractRawPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:716)ConstPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:83)PtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:862)FloatConstInfo.make_guards E (rpython.jit.metainterp.optimizeopt.intutils:1264)IntBound.make_guards E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards E are called with inconsistent numbers of arguments E (and/or the argument names are different, which is not supported in this case) E the callers of these functions are: E (rpython.jit.metainterp.optimizeopt.info:336)InstancePtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.info:632)ArrayPtrInfo.make_guards E (rpython.jit.metainterp.optimizeopt.shortpreamble:382)AbstractShortPreambleBuilder.use_box E (rpython.jit.metainterp.optimizeopt.virtualstate:483)NotVirtualStateInfoInt._generate_guards_unkown E (rpython.jit.metainterp.optimizeopt.vstring:121)StrPtrInfo.make_guards rtyper/normalizecalls.py:76: TyperError ----------------------------- Captured stderr call ----------------------------- [rtyper] -=- specialized 7 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 100 / 367 blocks (27%) [rtyper] specializing: 200 / 420 blocks (47%) [rtyper] specializing: 300 / 420 blocks (71%) [rtyper] specializing: 400 / 420 blocks (95%) [rtyper] -=- specialized 409 more blocks -=- [rtyper] -=- specialized 26 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] -=- specialized 7 more blocks -=- [rtyper] -=- specialized 6 more blocks -=- [rtyper] -=- specialized 17 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [backendopt:inlining] phase with threshold factor: 32.4 [backendopt:inlining] heuristic: rpython.translator.backendopt.inline.inlining_heuristic [backendopt:inlining] inlined 1 callsites. [backendopt:malloc] starting malloc removal [backendopt:malloc] removed 0 simple mallocs in total [backendopt:mergeifblocks] starting to merge if blocks [rtyper] -=- specialized 3 more blocks -=- [jitcodewriter:info] making JitCodes... [jitcodewriter:info] There are 1 JitCode instances. [jitcodewriter:info] There are 3 -live- ops. Size of liveness is 4 bytes [jitcodewriter] compute_bitstrings: [jitcodewriter] 1 effectinfos: [jitcodewriter] 0 descrs for arrays [jitcodewriter] 0 descrs for fields [jitcodewriter] 0 descrs for interiorfields [jitcodewriter] -> 1 bitstrings, mean length 0.0, max length 0 =========================== short test summary info ============================ FAIL jit/backend/x86/test/test_ztranslation_jit_stats.py::TestTranslationJITStatsX86::()::test_flush_trace_counts ===================== 1 failed, 1 skipped in 48.89 seconds =====================