Unable to find image 'ghcr.io/pypy/buildworker_x86_64@sha256:61ba2d5fcd68bfe76d99a40ae52c30e88cde919ca40fe65ea24bd34b820e3165' locally ghcr.io/pypy/buildworker_x86_64@sha256:61ba2d5fcd68bfe76d99a40ae52c30e88cde919ca40fe65ea24bd34b820e3165: Pulling from pypy/buildworker_x86_64 a1a18ffda116: Pulling fs layer 3c05096aa728: Pulling fs layer 01bcb9e4dc1f: Pulling fs layer 4f4fb700ef54: Pulling fs layer fb2873d761f0: Pulling fs layer 627d9f527436: Pulling fs layer 1c752555c551: Pulling fs layer d3c9f87abb15: Pulling fs layer 4f4fb700ef54: Waiting 627d9f527436: Waiting 1c752555c551: Waiting bb4fd3ed2fc4: Pulling fs layer d9454c0db893: Pulling fs layer a90f8409c748: Pulling fs layer f668f356ba3e: Pulling fs layer efa4ef78f491: Pulling fs layer ad74bb4a54dc: Pulling fs layer eebaf15195be: Pulling fs layer 71274e4ad4e7: Pulling fs layer 8b305f88ae4d: Pulling fs layer 7bcfa39e9b00: Pulling fs layer c9488ac6c405: Pulling fs layer 88db2288b245: Pulling fs layer 3959fe89f233: Pulling fs layer a632f83ee6a0: Pulling fs layer cb6b921f1bf7: Pulling fs layer 80341a7f71d4: Pulling fs layer 5acd92edc633: Pulling fs layer ac1534f980d9: Pulling fs layer a06cc64c340f: Pulling fs layer 187450b03722: Pulling fs layer 8ed74f1e8024: Pulling fs layer 2a318cb28de0: Pulling fs layer 60a3ab4b2d4d: Pulling fs layer 0bc8508ca923: Pulling fs layer d7ee4af1a169: Pulling fs layer a2e50ff165a2: Pulling fs layer aecf3e479cc0: Pulling fs layer 79c26c932d8b: Pulling fs layer 726f5ef0ffe5: Pulling fs layer 692413a13ada: Pulling fs layer f69c128f6656: Pulling fs layer 7ab4f955f270: Pulling fs layer 3de070b5a7af: Pulling fs layer 9378fd2894ac: Pulling fs layer 4a4f571de68a: Pulling fs layer 8b3d087a8690: Pulling fs layer d3c9f87abb15: Waiting bb4fd3ed2fc4: Waiting d9454c0db893: Waiting a90f8409c748: Waiting f668f356ba3e: Waiting efa4ef78f491: Waiting ad74bb4a54dc: Waiting eebaf15195be: Waiting 71274e4ad4e7: Waiting 8b305f88ae4d: Waiting 7bcfa39e9b00: Waiting c9488ac6c405: Waiting 88db2288b245: Waiting 3959fe89f233: Waiting a632f83ee6a0: Waiting cb6b921f1bf7: Waiting 80341a7f71d4: Waiting 5acd92edc633: Waiting ac1534f980d9: Waiting a06cc64c340f: Waiting 187450b03722: Waiting 8ed74f1e8024: Waiting 2a318cb28de0: Waiting 60a3ab4b2d4d: Waiting 0bc8508ca923: Waiting d7ee4af1a169: Waiting a2e50ff165a2: Waiting aecf3e479cc0: Waiting 79c26c932d8b: Waiting 726f5ef0ffe5: Waiting 692413a13ada: Waiting f69c128f6656: Waiting 7ab4f955f270: Waiting 3de070b5a7af: Waiting 9378fd2894ac: Waiting 4a4f571de68a: Waiting 8b3d087a8690: Waiting 01bcb9e4dc1f: Download complete 3c05096aa728: Verifying Checksum 3c05096aa728: Download complete 4f4fb700ef54: Verifying Checksum 4f4fb700ef54: Download complete fb2873d761f0: Verifying Checksum fb2873d761f0: Download complete 627d9f527436: Verifying Checksum 627d9f527436: Download complete d3c9f87abb15: Verifying Checksum d3c9f87abb15: Download complete bb4fd3ed2fc4: Download complete d9454c0db893: Verifying Checksum d9454c0db893: Download complete a90f8409c748: Download complete a1a18ffda116: Verifying Checksum a1a18ffda116: Download complete f668f356ba3e: Download complete efa4ef78f491: Verifying Checksum efa4ef78f491: Download complete ad74bb4a54dc: Verifying Checksum ad74bb4a54dc: Download complete eebaf15195be: Verifying Checksum eebaf15195be: Download complete 71274e4ad4e7: Verifying Checksum 71274e4ad4e7: Download complete 8b305f88ae4d: Verifying Checksum 8b305f88ae4d: Download complete c9488ac6c405: Verifying Checksum c9488ac6c405: Download complete 7bcfa39e9b00: Verifying Checksum 7bcfa39e9b00: Download complete 3959fe89f233: Verifying Checksum 3959fe89f233: Download complete a1a18ffda116: Pull complete 1c752555c551: Verifying Checksum 1c752555c551: Download complete 88db2288b245: Verifying Checksum 88db2288b245: Download complete 80341a7f71d4: Verifying Checksum 80341a7f71d4: Download complete 5acd92edc633: Verifying Checksum 5acd92edc633: Download complete ac1534f980d9: Verifying Checksum ac1534f980d9: Download complete a06cc64c340f: Verifying Checksum a06cc64c340f: Download complete 187450b03722: Verifying Checksum 187450b03722: Download complete 8ed74f1e8024: Verifying Checksum 8ed74f1e8024: Download complete 2a318cb28de0: Verifying Checksum 2a318cb28de0: Download complete 60a3ab4b2d4d: Verifying Checksum 60a3ab4b2d4d: Download complete a632f83ee6a0: Verifying Checksum a632f83ee6a0: Download complete 0bc8508ca923: Verifying Checksum 0bc8508ca923: Download complete 3c05096aa728: Pull complete d7ee4af1a169: Verifying Checksum d7ee4af1a169: Download complete aecf3e479cc0: Verifying Checksum aecf3e479cc0: Download complete 79c26c932d8b: Verifying Checksum 79c26c932d8b: Download complete 01bcb9e4dc1f: Pull complete 4f4fb700ef54: Pull complete a2e50ff165a2: Verifying Checksum a2e50ff165a2: Download complete fb2873d761f0: Pull complete 627d9f527436: Pull complete 726f5ef0ffe5: Verifying Checksum 726f5ef0ffe5: Download complete cb6b921f1bf7: Verifying Checksum cb6b921f1bf7: Download complete 692413a13ada: Download complete f69c128f6656: Download complete 7ab4f955f270: Download complete 4a4f571de68a: Verifying Checksum 4a4f571de68a: Download complete 9378fd2894ac: Verifying Checksum 9378fd2894ac: Download complete 8b3d087a8690: Verifying Checksum 8b3d087a8690: Download complete 3de070b5a7af: Verifying Checksum 3de070b5a7af: Download complete 1c752555c551: Pull complete d3c9f87abb15: Pull complete bb4fd3ed2fc4: Pull complete d9454c0db893: Pull complete a90f8409c748: Pull complete f668f356ba3e: Pull complete efa4ef78f491: Pull complete ad74bb4a54dc: Pull complete eebaf15195be: Pull complete 71274e4ad4e7: Pull complete 8b305f88ae4d: Pull complete 7bcfa39e9b00: Pull complete c9488ac6c405: Pull complete 88db2288b245: Pull complete 3959fe89f233: Pull complete a632f83ee6a0: Pull complete cb6b921f1bf7: Pull complete 80341a7f71d4: Pull complete 5acd92edc633: Pull complete ac1534f980d9: Pull complete a06cc64c340f: Pull complete 187450b03722: Pull complete 8ed74f1e8024: Pull complete 2a318cb28de0: Pull complete 60a3ab4b2d4d: Pull complete 0bc8508ca923: Pull complete d7ee4af1a169: Pull complete a2e50ff165a2: Pull complete aecf3e479cc0: Pull complete 79c26c932d8b: Pull complete 726f5ef0ffe5: Pull complete 692413a13ada: Pull complete f69c128f6656: Pull complete 7ab4f955f270: Pull complete 3de070b5a7af: Pull complete 9378fd2894ac: Pull complete 4a4f571de68a: Pull complete 8b3d087a8690: Pull complete Digest: sha256:61ba2d5fcd68bfe76d99a40ae52c30e88cde919ca40fe65ea24bd34b820e3165 Status: Downloaded newer image for ghcr.io/pypy/buildworker_x86_64@sha256:61ba2d5fcd68bfe76d99a40ae52c30e88cde919ca40fe65ea24bd34b820e3165 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:22:52 starting jit/backend/x86/test/test_assembler.py [1 started in total] ++ 14:22:52 starting jit/backend/x86/test/test_basic.py [2 started in total] ++ 14:22:52 starting jit/backend/x86/test/test_call.py [3 started in total] ++ 14:22:52 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.py 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.77 seconds =========================== ++ 14:23:04 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.74 seconds =========================== ++ 14:23:06 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 4.11 seconds =========================== ++ 14:23:13 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.py 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.23 seconds ========================== ++ 14:23:16 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 18.60 seconds ===================== ++ 14:23:40 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 ....... ========================== 7 passed in 39.54 seconds =========================== ++ 14:23: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 6.33 seconds =========================== ++ 14:23:57 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 15.00 seconds =========================== ++ 14:24:14 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 ...s........ ==================== 11 passed, 1 skipped in 32.45 seconds ===================== ++ 14:24:18 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 12.99 seconds ========================== ++ 14:24:31 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 7.18 seconds =========================== ++ 14:24:41 starting jit/backend/x86/test/test_longlong.py [15 started in total] __ jit/backend/x86/test/test_longlong.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 14 items jit/backend/x86/test/test_longlong.py ssssssssssssss ========================== 14 skipped in 0.24 seconds ========================== ++ 14:24:43 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 22.18 seconds ===================== ++ 14:24:45 starting jit/backend/x86/test/test_quasiimmut.py [17 started in total] __ jit/backend/x86/test/test_dict.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 20 items jit/backend/x86/test/test_dict.py .................... ========================== 20 passed in 86.34 seconds ========================== ++ 14:24: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 5.18 seconds =========================== ++ 14:24:56 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 14.35 seconds ===================== ++ 14:25:03 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..... ===================== 17 passed, 2 skipped in 2.57 seconds ===================== ++ 14:25:07 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 .......................s. ===================== 24 passed, 1 skipped in 0.51 seconds ===================== ++ 14:25:10 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.py rootdir: /workspace/rpython, inifile: pytest.ini plugins: hypothesis-4.39.3 collected 199 items jit/backend/x86/test/test_basic.py .s............................................................................................................................................s...................s..............s...........s......... =================== 194 passed, 5 skipped in 143.08 seconds ==================== ++ 14:25:31 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 48.41 seconds ===================== ++ 14:25:34 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:25:37 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.82 seconds =========================== ++ 14:25:44 starting jit/backend/x86/test/test_rx86_64_auto_encoding.py [26 started in total] __ jit/backend/x86/test/test_recursive.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 42 items jit/backend/x86/test/test_recursive.py ................s........s...............s ==================== 39 passed, 3 skipped in 71.31 seconds ===================== ++ 14:26:16 starting jit/backend/x86/test/test_send.py [27 started in total] __ jit/backend/x86/test/test_rx86_32_auto_encoding.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 615 items jit/backend/x86/test/test_rx86_32_auto_encoding.py ..................................................s...................................................................................s..s....................................................................................................................s........................................................................................................................................................................................................................................................................................................................................................................ ==================== 611 passed, 4 skipped in 54.68 seconds ==================== ++ 14:26:35 starting jit/backend/x86/test/test_slist.py [28 started in total] __ jit/backend/x86/test/test_send.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 23 items jit/backend/x86/test/test_send.py ....................... ========================== 23 passed in 21.59 seconds ========================== ++ 14:26:40 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 7.86 seconds ====================== ++ 14:26:45 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:26:47 starting jit/backend/x86/test/test_tl.py [31 started in total] __ jit/backend/x86/test/test_tl.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 5 items jit/backend/x86/test/test_tl.py ..... ========================== 5 passed in 16.73 seconds =========================== ++ 14:27:07 starting jit/backend/x86/test/test_tlc.py [32 started in total] __ jit/backend/x86/test/test_rx86_64_auto_encoding.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 616 items jit/backend/x86/test/test_rx86_64_auto_encoding.py ..................................................s...................................................................................s..s....................................................................................................................s......................................................................................................................................................................................................................................................................................................................................................................... ==================== 612 passed, 4 skipped in 85.32 seconds ==================== ++ 14:27:11 starting jit/backend/x86/test/test_tracelimit.py [33 started in total] __ jit/backend/x86/test/test_tlc.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 3 items jit/backend/x86/test/test_tlc.py ss. ===================== 1 passed, 2 skipped in 9.76 seconds ====================== ++ 14:27:20 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 35.35 seconds ========================== ++ 14:27:58 starting jit/backend/x86/test/test_virtualizable.py [35 started in total] __ jit/backend/x86/test/test_tracelimit.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 5 items jit/backend/x86/test/test_tracelimit.py ..... ========================== 5 passed in 48.60 seconds =========================== ++ 14:28:02 starting jit/backend/x86/test/test_virtualref.py [36 started in total] __ jit/backend/x86/test/test_runner.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 172 items jit/backend/x86/test/test_runner.py ............................................................................................s....ss.....................ss...........................sssss....s.........s.s. =================== 159 passed, 13 skipped in 176.35 seconds =================== read saved errno: 24 read saved errno: 0 read saved errno: 25 read saved errno: 0 ++ 14:28:11 starting jit/backend/x86/test/test_x86vector.py [37 started in total] __ jit/backend/x86/test/test_string.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 97 items jit/backend/x86/test/test_string.py .............................s............................................s...................... ==================== 95 passed, 2 skipped in 91.80 seconds ===================== ++ 14:28:15 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 21.20 seconds ===================== ++ 14:28:26 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 28.90 seconds =============== ++ 14:28:30 starting jit/backend/x86/test/test_zrpy_gc_boehm.py [40 started in total] __ jit/backend/x86/test/test_zmath.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 1 items jit/backend/x86/test/test_zmath.py . ========================== 1 passed in 23.03 seconds =========================== ++ 14:28:43 starting jit/backend/x86/test/test_zrpy_releasegil.py [41 started in total] __ jit/backend/x86/test/test_zrpy_gc_boehm.py [38 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 / 449 blocks (22%) [rtyper] specializing: 200 / 508 blocks (39%) [rtyper] specializing: 300 / 512 blocks (58%) [rtyper] specializing: 400 / 512 blocks (78%) [rtyper] specializing: 500 / 512 blocks (97%) [rtyper] -=- specialized 512 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] specializing: 600 / 601 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 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 74.70 seconds =========================== ++ 14:29:50 starting jit/backend/x86/test/test_zrpy_vecopt.py [42 started in total] __ jit/backend/x86/test/test_zrpy_gc.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 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 / 1241 blocks (8%) [rtyper] specializing: 200 / 1392 blocks (14%) [rtyper] specializing: 300 / 1392 blocks (21%) [rtyper] specializing: 400 / 1445 blocks (27%) [rtyper] specializing: 500 / 1449 blocks (34%) [rtyper] specializing: 600 / 1449 blocks (41%) [rtyper] specializing: 700 / 1449 blocks (48%) [rtyper] specializing: 800 / 1449 blocks (55%) [rtyper] specializing: 900 / 1449 blocks (62%) [rtyper] specializing: 1000 / 1449 blocks (69%) [rtyper] specializing: 1100 / 1449 blocks (75%) [rtyper] specializing: 1200 / 1449 blocks (82%) [rtyper] specializing: 1300 / 1449 blocks (89%) [rtyper] specializing: 1400 / 1449 blocks (96%) [rtyper] -=- specialized 1449 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 1500 / 1512 blocks (99%) [rtyper] -=- specialized 59 more blocks -=- [rtyper] -=- specialized 4 more blocks -=- [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 92.74 seconds =========================== ++ 14:30:08 starting jit/backend/x86/test/test_zrpy_vmprof.py [43 started in total] __ jit/backend/x86/test/test_zrpy_releasegil.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 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 / 1219 blocks (8%) [rtyper] specializing: 200 / 1336 blocks (14%) [rtyper] specializing: 300 / 1336 blocks (22%) [rtyper] specializing: 400 / 1340 blocks (29%) [rtyper] specializing: 500 / 1340 blocks (37%) [rtyper] specializing: 600 / 1340 blocks (44%) [rtyper] specializing: 700 / 1340 blocks (52%) [rtyper] specializing: 800 / 1340 blocks (59%) [rtyper] specializing: 900 / 1340 blocks (67%) [rtyper] specializing: 1000 / 1340 blocks (74%) [rtyper] specializing: 1100 / 1340 blocks (82%) [rtyper] specializing: 1200 / 1340 blocks (89%) [rtyper] specializing: 1300 / 1340 blocks (97%) [rtyper] -=- specialized 1340 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] specializing: 1400 / 1407 blocks (99%) [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 79.54 seconds =========================== ++ 14:30:10 starting jit/backend/x86/test/test_ztranslation_basic.py [44 started in total] __ jit/backend/x86/test/test_zrpy_vecopt.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 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 / 367 blocks (27%) [rtyper] specializing: 200 / 420 blocks (47%) [rtyper] specializing: 300 / 420 blocks (71%) [rtyper] specializing: 400 / 420 blocks (95%) [rtyper] -=- specialized 411 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 67.39 seconds =========================== ++ 14:31:03 starting jit/backend/x86/test/test_ztranslation_call_assembler.py [45 started in total] __ jit/backend/x86/test/test_zrpy_vmprof.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 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 / 671 blocks (14%) [rtyper] specializing: 200 / 760 blocks (26%) [rtyper] specializing: 300 / 762 blocks (39%) [rtyper] specializing: 400 / 762 blocks (52%) [rtyper] specializing: 500 / 762 blocks (65%) [rtyper] specializing: 600 / 767 blocks (78%) [rtyper] specializing: 700 / 767 blocks (91%) [rtyper] -=- specialized 771 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 800 / 1059 blocks (75%) [rtyper] specializing: 900 / 1059 blocks (84%) [rtyper] specializing: 1000 / 1059 blocks (94%) [rtyper] -=- specialized 284 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] specializing: 1100 / 1100 blocks (100%) [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 77.81 seconds =========================== ++ 14:31:28 starting jit/backend/x86/test/test_ztranslation_external_exception.py [46 started in total] __ jit/backend/x86/test/test_ztranslation_basic.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_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 / 635 blocks (15%) [rtyper] specializing: 200 / 655 blocks (30%) [rtyper] specializing: 400 / 996 blocks (40%) [rtyper] specializing: 500 / 1001 blocks (49%) [rtyper] specializing: 600 / 1025 blocks (58%) [rtyper] specializing: 700 / 1033 blocks (67%) [rtyper] specializing: 800 / 1044 blocks (76%) [rtyper] specializing: 900 / 1074 blocks (83%) [rtyper] specializing: 1000 / 1078 blocks (92%) [rtyper] -=- specialized 1078 blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] specializing: 1100 / 1293 blocks (85%) [rtyper] specializing: 1200 / 1357 blocks (88%) [rtyper] specializing: 1300 / 1357 blocks (95%) [rtyper] -=- specialized 275 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 83.38 seconds =========================== ++ 14:31:37 starting jit/backend/x86/test/test_ztranslation_jit_stats.py [47 started in total] __ jit/backend/x86/test/test_ztranslation_call_assembler.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_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 / 369 blocks (27%) [rtyper] specializing: 200 / 435 blocks (45%) [rtyper] specializing: 300 / 488 blocks (61%) [rtyper] specializing: 400 / 488 blocks (81%) [rtyper] -=- specialized 406 more blocks -=- [rtyper] -=- specialized 4 more blocks -=- [rtyper] -=- specialized 2 more blocks -=- [rtyper] specializing: 500 / 501 blocks (99%) [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 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 74.40 seconds =========================== ++ 14:32:23 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_external_exception.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_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 / 403 blocks (24%) [rtyper] specializing: 200 / 456 blocks (43%) [rtyper] specializing: 300 / 456 blocks (65%) [rtyper] specializing: 400 / 456 blocks (87%) [rtyper] -=- specialized 411 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 / 514 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 65.00 seconds =========================== __ jit/backend/x86/test/test_ztranslation_jit_stats.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 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 / 369 blocks (27%) [rtyper] specializing: 200 / 422 blocks (47%) [rtyper] specializing: 300 / 422 blocks (71%) [rtyper] specializing: 400 / 422 blocks (94%) [rtyper] -=- specialized 411 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 64.19 seconds ===================== __ jit/backend/x86/test/test_x86vector.py [48 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 94 items jit/backend/x86/test/test_x86vector.py .............................................................................................. ========================= 94 passed in 311.86 seconds ==========================