Home - Summaries: (main) : (py3.11) : Everything - Nightly builds - Benchmarks - RPython - Builders - About

jit/backend/aarch64/test/test_runner.py::TestARM64::()::test_call_release_gil_variable_function_and_arguments

self = <rpython.jit.backend.aarch64.test.test_runner.TestARM64 object at 0x000000011adf2288>

    def test_call_release_gil_variable_function_and_arguments(self):
        from rpython.translator.tool.cbuild import ExternalCompilationInfo
        from rpython.rlib.libffi import types
        from rpython.rlib.rarithmetic import r_uint, r_longlong, r_ulonglong
        from rpython.rlib.rarithmetic import r_singlefloat
        from rpython.translator.c import primitive
    
    
        def same_as_for_box(b):
            if b.type == 'i':
                return rop.SAME_AS_I
            elif b.type == 'f':
                return rop.SAME_AS_F
            else:
                assert False
    
        cpu = self.cpu
        rnd = random.Random(525)
        seed = py.test.config.option.randomseed
        print("random seed %d" % seed)
    
        ALL_TYPES = [
            (types.unsigned, lltype.Unsigned),
            (types.signed,   lltype.Signed),
            (types.uint8,  rffi.UCHAR),
            (types.sint8,  rffi.SIGNEDCHAR),
            (types.uint16, rffi.USHORT),
            (types.sint16, rffi.SHORT),
            (types.uint32, rffi.UINT),
            (types.sint32, rffi.INT),
            ]
        if IS_32_BIT and cpu.supports_longlong:
            ALL_TYPES += [
                (types.uint64, lltype.UnsignedLongLong),
                (types.sint64, lltype.SignedLongLong),
                ] * 2
        if cpu.supports_floats:
            ALL_TYPES += [
                (types.double, rffi.DOUBLE),
                ] * 4
        if cpu.supports_singlefloats:
            ALL_TYPES += [
                (types.float,  rffi.FLOAT),
                ] * 4
    
        NB_TESTS = 100
        c_source = []
        all_tests = []
    
        def prepare_c_source():
            """Pick a random choice of argument types and length,
                and build a C function with these arguments.  The C
                function will simply copy them all into static global
                variables.  There are then additional functions to fetch
                them, one per argument, with a signature 'void(ARG *)'.
                """
            POSSIBLE_TYPES = [rnd.choice(ALL_TYPES)
                              for i in range(random.randrange(2, 5))]
            load_factor = rnd.random()
            keepalive_factor = rnd.random()
            #
            ffitypes = []
            ARGTYPES = []
            for i in range(rnd.randrange(4, 20)):
                ffitype, TP = rnd.choice(POSSIBLE_TYPES)
                ffitypes.append(ffitype)
                ARGTYPES.append(TP)
            fn_name = 'vartest%d' % k
            all_tests.append((ARGTYPES, ffitypes, fn_name))
            #
            fn_args = []
            for i, ARG in enumerate(ARGTYPES):
                arg_decl = primitive.cdecl(primitive.PrimitiveType[ARG],
                                           'x%d' % i)
                fn_args.append(arg_decl)
                var_name = 'argcopy_%s_x%d' % (fn_name, i)
                var_decl = primitive.cdecl(primitive.PrimitiveType[ARG],
                                           var_name)
                c_source.append('static %s;' % var_decl)
                getter_name = '%s_get%d' % (fn_name, i)
                c_source.append('RPY_EXPORTED void %s(%s) { *p = %s; }' % (
                    getter_name,
                    primitive.cdecl(primitive.PrimitiveType[ARG], '*p'),
                    var_name))
            c_source.append('#include <stdio.h>')
            c_source.append('')
            c_source.append('static void real%s(%s)' % (
                fn_name, ', '.join(fn_args)))
            c_source.append('{')
            for i in range(len(ARGTYPES)):
                if ARGTYPES[i] is lltype.Float:
                    c_source.append('    fprintf(stderr, "x%d = %%f\\n", x%d);' % (i, i))
                elif ARGTYPES[i] is lltype.Signed:
                    c_source.append('    fprintf(stderr, "x%d = %%ld\\n", x%d);' % (i, i))
                elif ARGTYPES[i] is rffi.UINT:
                    c_source.append('    fprintf(stderr, "x%d = %%u\\n", x%d);' % (i, i))
            for i in range(len(ARGTYPES)):
                c_source.append('    argcopy_%s_x%d = x%d;' % (fn_name, i, i))
            c_source.append('}')
            c_source.append('RPY_EXPORTED void *%s(void)' % fn_name)
            c_source.append('{')
            c_source.append('    return (void *)&real%s;' % fn_name)
            c_source.append('}')
            c_source.append('')
    
        for k in range(NB_TESTS):
            prepare_c_source()
    
        eci = ExternalCompilationInfo(
            separate_module_sources=['\n'.join(c_source)])
    
        for k in range(NB_TESTS):
            ARGTYPES, ffitypes, fn_name = all_tests[k]
            func_getter_ptr = rffi.llexternal(fn_name, [], lltype.Signed,
                                         compilation_info=eci, _nowrapper=True)
            load_factor = rnd.random()
            keepalive_factor = rnd.random()
            #
            func_raw = func_getter_ptr()
            calldescr = cpu._calldescr_dynamic_for_tests(ffitypes, types.void)
            faildescr = BasicFailDescr(1)
            #
            argboxes = [InputArgInt()]   # for the function to call
            codes = ['X']
            for ffitype in ffitypes:
                kind = types.getkind(ffitype)
                codes.append(kind)
                if kind in 'uis':
                    b1 = InputArgInt()
                elif kind in 'fUI':
                    b1 = InputArgFloat()
                else:
                    assert 0, kind
                argboxes.append(b1)
            codes = ''.join(codes)     # useful for pdb
            print()
            print(codes)
            #
            argvalues = [func_raw]
            for TP in ARGTYPES:
                r = (rnd.random() - 0.5) * 999999999999.9
                r = rffi.cast(TP, r)
                argvalues.append(r)
            #
            argvalues_normal = argvalues[:1]
            for ffitype, r in zip(ffitypes, argvalues[1:]):
                kind = types.getkind(ffitype)
                if kind in 'ui':
                    r = rffi.cast(lltype.Signed, r)
                elif kind in 's':
                    r, = struct.unpack("i", struct.pack("f", float(r)))
                elif kind in 'f':
                    r = longlong.getfloatstorage(r)
                elif kind in 'UI':   # 32-bit only
                    r = rffi.cast(lltype.SignedLongLong, r)
                else:
                    assert 0
                argvalues_normal.append(r)
            #
            ops = []
            loadcodes = []
            insideboxes = []
            for b1 in argboxes:
                load = rnd.random() < load_factor
                loadcodes.append(' ^'[load])
                if load:
                    b2 = ResOperation(same_as_for_box(b1), [b1])
                    ops.insert(rnd.randrange(0, len(ops)+1), b2)
                    b1 = b2
                insideboxes.append(b1)
            loadcodes = ''.join(loadcodes)
            print(loadcodes)
            ops += [
                ResOperation(rop.CALL_RELEASE_GIL_N,
                             [ConstInt(0)] + insideboxes,
                             descr=calldescr),
                ResOperation(rop.GUARD_NOT_FORCED, [], descr=faildescr),
                ResOperation(rop.FINISH, [], descr=BasicFinalDescr(0))
                ]
            ops[-2].setfailargs([])
            # keep alive a random subset of the insideboxes
            for b1 in insideboxes:
                if rnd.random() < keepalive_factor:
                    ops.insert(-1, ResOperation(same_as_for_box(b1), [b1]))
            looptoken = JitCellToken()
            self.cpu.compile_loop(argboxes, ops, looptoken)
            #
            deadframe = self.cpu.execute_token(looptoken, *argvalues_normal)
            fail = self.cpu.get_latest_descr(deadframe)
            assert fail.identifier == 0
            expected = argvalues[1:]
            got = []
            for i, ARG in enumerate(ARGTYPES):
                PARG = rffi.CArrayPtr(ARG)
                getter_name = '%s_get%d' % (fn_name, i)
                getter_ptr = rffi.llexternal(getter_name, [PARG], lltype.Void,
                                             compilation_info=eci,
                                             _nowrapper=True)
                my_arg = lltype.malloc(PARG.TO, 1, zero=True, flavor='raw')
                getter_ptr(my_arg)
                got.append(my_arg[0])
                lltype.free(my_arg, flavor='raw')
            different_values = ['x%d: got %r, expected %r' % (i, a, b)
                                for i, (a, b) in enumerate(zip(got, expected))
                                if a != b]
            assert got == expected, '\n'.join(
>               ['bad args, signature %r' % codes[1:]] + different_values)
E           AssertionError: bad args, signature 'uuuuuuuuuuuuuuuuuu'
E           x9: got 0L, expected 2645695642L
E           x10: got 7322L, expected 49455L
E           x11: got 40370L, expected 1630L
E           x12: got 0L, expected 23696L
E           x13: got 0L, expected 4592L
E           x14: got 49455L, expected 479449850L
E           x15: got 0L, expected 2517243039L
E           x16: got 1630L, expected 2555961548L
E           x17: got 0L, expected 3809272329L

jit/backend/test/runner_test.py:3125: AssertionError
---------- Captured stderr setup ----------
[c588dc7f9429280] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600000 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c588dc7f951c980] jit-backend-dump}
[c588dc7f97fa780] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600060 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9055D91D2A567A0F20500CCF2A40040F9060080D2A60000F9055C91D2A567A0F20500CCF2A60000F9A41700F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c588dc7f9961780] jit-backend-dump}
[c588dc7fa10ae00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036000f0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDE00740A9FE0300F9A00F00F9E0031DAA105D91D2B067A0F21000CCF2100240F9B01700F9105C91D2B067A0F21000CCF2130240F9105D91D2B067A0F21000CCF2110080D2110200F9105C91D2B067A0F21000CCF2110200F9106281D21012A0F23000C0F21000E0F200023FD6FD0300AA105D91D2B067A0F21000CCF2B11740F9110200F9110080D2B11700F9105C91D2B067A0F21000CCF2130200F9100080D2B00F00F9A02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9B35B40F9B45F40F9A06340FDA16740FDA26B40FDA36F40FDA47340FDA57740FDA67B40FDA77F40FDFE0340F9FF430091C0035FD6 
[c588dc7fa523400] jit-backend-dump}
[c588dc7fa78ea00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600270 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDE0031DAAF35344A9FE77C5A8C0035FD6 
[c588dc7fa8d4100] jit-backend-dump}
[c588dc7fac10100] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036002f0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FD055D91D2A567A0F20500CCF2A40040F9060080D2A60000F9055C91D2A567A0F20500CCF2A60000F9A41700F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c588dc7faddf900] jit-backend-dump}
[c588dc7faf71300] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036003a0 +0  105D91D2B067A0F21000CCF2000240F9110080D2110200F9105C91D2B067A0F21000CCF2110200F9A01700F9000080D2A00700F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c588dc7fb04de00] jit-backend-dump}
[c588dc7fb4fd980] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036003f0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9B35B40F9B45F40F9F00340F9FF43009100025FD6 
[c588dc7fb73b300] jit-backend-dump}
[c588dc7fbad1280] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036004c0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9F00340F9FF43009100025FD6 
[c588dc7fbcced00] jit-backend-dump}
[c588dc7fc19c900] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600580 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9B35B40F9B45F40F9A06340FDA16740FDA26B40FDA36F40FDA47340FDA57740FDA67B40FDA77F40FDF00340F9FF43009100025FD6 
[c588dc7fc41f400] jit-backend-dump}
[c588dc7fc8fb800] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600670 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9A06340FDA16740FDA26B40FDA36F40FDA47340FDA57740FDA67B40FDA77F40FDF00340F9FF43009100025FD6 
[c588dc7fcb77d80] jit-backend-dump}
---------- Captured stdout call ----------
random seed 6418

Xffffffffffffff
^ ^ ^^ ^ ^^ ^^^

Xufffuuuu
      ^  

Xiiiii
      

Xuffufuufuuf
^^^^^^^^^^^^

Xfufuffffuffuufff
^^^^^ ^^^^^^^ ^^^

Xfifiiffifff
^ ^^     ^^ 

Xiiiiiiuii
    ^     

Xiffiffff
 ^^^  ^  

Xffiffffffffiiiiffi
      ^     ^      

Xfffufffffuffffff
^^^ ^  ^   ^^^^  

Xuuuuuuuuuuuuuuuuuu
^^^^^^^^^^^^^^^^^^^
---------- Captured stderr call ----------
[c588dc80b275c80] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc80b280480] jit-mem-looptoken-alloc}
[c588dc80bd43c80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600780 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00E899D22062A0F20000CCF2010040F921040091010000F9A09F40FDA1AB40FDA29340FDA3BB40FDA48B40FDA5B340FDA69740FDA7B740FDA18340F9A08300FDA0A740FDF0FCFF58B00B00F9FFC300D1E00300FDE10700FDB0AF40F9F00B00F9E50F00FDE71300FDE31700FDF10301AAA08740FD8140601E4340601EC440601EA59B40FDA68340FDA7A340FDA28F40FDE80311AA10EB80D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD6FFC300910F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D4B0F6FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D470F5FF58B00700F910ED80D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc80c188300] jit-backend-dump}
[c588dc80c22a280] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036008b0 +0  21010054 
[c588dc80c24ac00] jit-backend-dump}
[c588dc80c691f80] {jit-backend-addr
Loop -1 () has address 0x70036007a0 to 0x70036008d4 (bootstrap 0x7003600790) 
       gc table: 0x7003600780 
       function: 0x7003600790 
         resops: 0x70036007a0 
       failures: 0x70036008d4 
            end: 0x7003600900 
[c588dc80c6a1f80] jit-backend-addr}
x0 = -79579966626.829788
x1 = 373384088790.742126
x2 = -32739126287.857967
x3 = -112565272553.179352
x4 = 92616475442.619034
x5 = 189457694485.587860
x6 = -266584694992.934357
x7 = 353183885309.260498
x8 = -252778271001.461487
x9 = 244737624722.131073
x10 = -227467815684.808685
x11 = 266316681856.103699
x12 = 387104787225.437134
x13 = -183726852001.898163
[c588dc825a78c00] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc825a81700] jit-mem-looptoken-alloc}
[c588dc82662f900] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600940 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA001C80D22062A0F20000CCF2010040F921040091010000F9A19B40F930FEFF58B00B00F9B18340F9A08740F9E20301AAA39F40F9A4A340F9A19740F9A08B40FDA18F40FDA29340FDE80311AA102381D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D410F9FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D4D0F7FF58B00700F9102581D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc826a41a80] jit-backend-dump}
[c588dc826ade080] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600a24 +0  21010054 
[c588dc826afde80] jit-backend-dump}
[c588dc826fe3d00] {jit-backend-addr
Loop -1 () has address 0x7003600960 to 0x7003600a48 (bootstrap 0x7003600950) 
       gc table: 0x7003600940 
       function: 0x7003600950 
         resops: 0x7003600960 
       failures: 0x7003600a48 
            end: 0x7003600a74 
[c588dc826ff4c80] jit-backend-addr}
x0 = 1974190787
x1 = 114265873992.175156
x2 = -275729770289.629150
x3 = -245569751487.133667
x4 = 3114790864
x5 = 436185034
x6 = 2654107978
[c588dc835f47f80] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc835f60800] jit-mem-looptoken-alloc}
[c588dc836779080] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600ab0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA006498D2E062A0F20000CCF2010040F921040091010000F950FEFF58B00B00F9B18340F9A08740F9A18B40F9A28F40F9A39340F9A49740F9E80311AA105281D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D490F9FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D450F8FF58B00700F9105481D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc836aad380] jit-backend-dump}
[c588dc836b43180] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600b84 +0  21010054 
[c588dc836b63f80] jit-backend-dump}
[c588dc836eb0100] {jit-backend-addr
Loop -1 () has address 0x7003600ad0 to 0x7003600ba8 (bootstrap 0x7003600ac0) 
       gc table: 0x7003600ab0 
       function: 0x7003600ac0 
         resops: 0x7003600ad0 
       failures: 0x7003600ba8 
            end: 0x7003600bd4 
[c588dc836ec0b00] jit-backend-addr}
[c588dc8419f2d80] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc8419fb600] jit-mem-looptoken-alloc}
[c588dc84251ff00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600c20 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA003491D20062A0F20000CCF2010040F921040091010000F9A09740FDA1A740F9A1AF40FDA08740F9A2AB40F9A39F40F9A28B40FDA48340F9A59B40F9A69340F9A3A340FDA48F40FDD0FCFF58B00B00F9F10304AAE40301AAE10306AAFF4300D1E20300F9E20305AAE50340F9FF430091FF4300D1E00300FD4040601EE20340FDFF430091FF4300D1E10300FD8140601EE40340FDFF430091E80311AA107F81D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D490F6FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D450F5FF58B00700F9108181D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc84295a500] jit-backend-dump}
[c588dc8429f4d80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600d54 +0  21010054 
[c588dc842a17c80] jit-backend-dump}
[c588dc842e85d00] {jit-backend-addr
Loop -1 () has address 0x7003600c40 to 0x7003600d78 (bootstrap 0x7003600c30) 
       gc table: 0x7003600c20 
       function: 0x7003600c30 
         resops: 0x7003600c40 
       failures: 0x7003600d78 
            end: 0x7003600da4 
[c588dc842ebc280] jit-backend-addr}
x0 = 1294473882
x1 = 310162262483.630493
x2 = -22988185520.200798
x3 = 221889531
x4 = 352178453371.731018
x5 = 1695659842
x6 = 3695330327
x7 = -460367571933.266663
x8 = 4105240874
x9 = 1054178152
x10 = -59992731566.764656
[c588dc85740a780] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc857412a00] jit-mem-looptoken-alloc}
[c588dc857f96e00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600de0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00F889D22062A0F20000CCF2010040F921040091010000F9A09B40FDA1AB40FDA28740FDA18340F9A3BF40FDA08B40F9A4BB40FDA29340F9A58F40FDA6C340FDA3B340F9A79F40FDA08300FDA0A340FDA4A740F9A08700FDA0AF40FD30FCFF58B00B00F9FF8300D1E40300FDE30700FDE60B00FDF10301AAE10302AAE20304AAA4B740F9A38340FDE440601E2640601E0740601E4040601EA140601EA29740FDA58740FDE80311AA10B881D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD6FF8300910F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D410F6FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D4D0F4FF58B00700F910BA81D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc85841b800] jit-backend-dump}
[c588dc8584b6a80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600f24 +0  21010054 
[c588dc8584d6280] jit-backend-dump}
[c588dc858949100] {jit-backend-addr
Loop -1 () has address 0x7003600e00 to 0x7003600f48 (bootstrap 0x7003600df0) 
       gc table: 0x7003600de0 
       function: 0x7003600df0 
         resops: 0x7003600e00 
       failures: 0x7003600f48 
            end: 0x7003600f74 
[c588dc858959e80] jit-backend-addr}
x0 = -194079818410.718903
x2 = -66611599692.226410
x4 = -429689269240.338562
x5 = 2579480848.651414
x6 = -241673286437.460144
x7 = -401452911248.924316
x9 = 159887859550.048798
x10 = -425277325053.844666
x13 = 10652937774.393402
x14 = -248722085195.584381
x15 = 272859670481.044342
[c588dc874de2680] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc874deb180] jit-mem-looptoken-alloc}
[c588dc87568dc80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600fc0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA002488D22062A0F20000CCF2010040F921040091010000F9A0A740FDA1AB40FDA28F40FDA18340F9A08B40F9B0FDFF58B00B00F9F10301AAA19340F9A29740F9A3A340F9A39F40FD0440601E2540601EA6AF40FDA08740FD4140601EA29B40FDE80311AA10F381D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D450F8FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D410F7FF58B00700F910F581D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc875a34f00] jit-backend-dump}
[c588dc875acd080] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036010bc +0  21010054 
[c588dc875aed680] jit-backend-dump}
[c588dc875ea1880] {jit-backend-addr
Loop -1 () has address 0x7003600fe0 to 0x70036010e0 (bootstrap 0x7003600fd0) 
       gc table: 0x7003600fc0 
       function: 0x7003600fd0 
         resops: 0x7003600fe0 
       failures: 0x70036010e0 
            end: 0x700360110c 
[c588dc875ebf480] jit-backend-addr}
x0 = -172081675866.144104
x1 = 86754300891
x2 = 446364295816.728882
x3 = -286702980112
x5 = -180320558944.387115
x6 = 447319958601.528076
x7 = 416887289264
x8 = 231205098613.908905
x9 = -15199037317.272715
x10 = 166435309111.032440
[c588dc889f87e80] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc889f9e000] jit-mem-looptoken-alloc}
[c588dc88ac6f600] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601150 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00A898D2E062A0F20000CCF2010040F921040091010000F9A19340F930FEFF58B00B00F9FF4300D1B0A740F9F00300F9B18340F9A08740F9A28F40F9E30301AAA49740F9A59B40F9A69F40F9A7A340F9A18B40F9E80311AA102582D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD6FF4300910F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D490F8FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D450F7FF58B00700F9102782D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc88b003e00] jit-backend-dump}
[c588dc88b099a80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601244 +0  21010054 
[c588dc88b0b9c80] jit-backend-dump}
[c588dc88b457a80] {jit-backend-addr
Loop -1 () has address 0x7003601170 to 0x7003601268 (bootstrap 0x7003601160) 
       gc table: 0x7003601150 
       function: 0x7003601160 
         resops: 0x7003601170 
       failures: 0x7003601268 
            end: 0x7003601294 
[c588dc88b467c80] jit-backend-addr}
[c588dc89c722180] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc89c72a480] jit-mem-looptoken-alloc}
[c588dc89d049580] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036012d0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00D49AD22062A0F20000CCF2010040F921040091010000F9A09B40FDA18F40FDA18740F9A28B40FDD0FDFF58B00B00F9B18340F9E00301AAA19340F90340601EA49F40FDA5A340FD4040601EA29740FDE80311AA105682D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D4D0F8FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D490F7FF58B00700F9105882D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc89d593200] jit-backend-dump}
[c588dc89d630800] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036013bc +0  21010054 
[c588dc89d651100] jit-backend-dump}
[c588dc89dbdd000] {jit-backend-addr
Loop -1 () has address 0x70036012f0 to 0x70036013e0 (bootstrap 0x70036012e0) 
       gc table: 0x70036012d0 
       function: 0x70036012e0 
         resops: 0x70036012f0 
       failures: 0x70036013e0 
            end: 0x700360140c 
[c588dc89dbef500] jit-backend-addr}
x1 = 189043971879.297974
x2 = -113057586904.878464
x4 = -383914955094.727844
x5 = -353619498792.776367
x6 = -288806819209.536560
x7 = -72021016799.689331
[c588dc8b09b0500] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc8b09b9000] jit-mem-looptoken-alloc}
[c588dc8b1702f80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601450 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA002C91D20062A0F20000CCF2010040F921040091010000F9A1B340F9A09B40FD10FEFF58B00B00F9FF8300D1B0AB40F9F00300F9B0AF40F9F00700F9B0C340F9F00B00F9B0C740F9F00F00F9B18340F9A08F40F9A2B740F9A3BB40F9A4BF40F9A5CB40F9A18B40FDA29340FDA39740FD0440601EA59F40FDA6A340FDA7A740FDA08740FDE80311AA108682D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD6FF8300910F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D410F7FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D4D0F5FF58B00700F9108882D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc8b1e6e280] jit-backend-dump}
[c588dc8b1f0f680] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601574 +0  21010054 
[c588dc8b1f30200] jit-backend-dump}
[c588dc8b2361980] {jit-backend-addr
Loop -1 () has address 0x7003601470 to 0x7003601598 (bootstrap 0x7003601460) 
       gc table: 0x7003601450 
       function: 0x7003601460 
         resops: 0x7003601470 
       failures: 0x7003601598 
            end: 0x70036015c4 
[c588dc8b2374e00] jit-backend-addr}
x0 = -221531426188.983643
x1 = 322553136405.882080
x3 = 88454288018.247772
x4 = -487791216530.235779
x5 = 481779980315.585266
x6 = 156923033893.661652
x7 = -100477311587.055359
x8 = -132127652911.718582
x9 = 314728186612.303589
x10 = 181971327792.006866
x15 = 322072746891.659302
x16 = -181012285904.721863
[c588dc8d7a63500] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc8d7a79880] jit-mem-looptoken-alloc}
[c588dc8d877e080] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601610 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00F090D20062A0F20000CCF2010040F921040091010000F9A0AF40FDA19F40FDA19340F9A28B40FDA08340F9A3B740FDA4B340FDA5BB40FDA68740FD30FDFF58B00B00F9FFC300D1E00300FDE40700FDE30B00FDE50F00FDB0BF40F9F01300F9B0C340F9F01700F9F10300AAE00301AAA1AB40F9C040601EA39740FDA49B40FD2540601EA6A340FDA7A740FD4140601EA28F40FDE80311AA10BD82D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD6FFC300910F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D490F6FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D450F5FF58B00700F910BF82D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc8d8bc4080] jit-backend-dump}
[c588dc8d8c5fe80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601744 +0  21010054 
[c588dc8d8c80080] jit-backend-dump}
[c588dc8d912c100] {jit-backend-addr
Loop -1 () has address 0x7003601630 to 0x7003601768 (bootstrap 0x7003601620) 
       gc table: 0x7003601610 
       function: 0x7003601620 
         resops: 0x7003601630 
       failures: 0x7003601768 
            end: 0x7003601794 
[c588dc8d913e980] jit-backend-addr}
x0 = -129876389554.989380
x1 = 424861466262.337952
x2 = 469310630613.145630
x3 = 3858305276
x4 = 429320188064.649841
x5 = 71201948166.035522
x6 = -104119858437.546143
x7 = 466459717645.366760
x8 = -188550736464.761200
x9 = 1671412790
x10 = -215717924654.053345
x11 = 313844609707.452820
x12 = 216120865686.748322
x13 = -268117642044.181946
x14 = 174103008129.255066
x15 = -162651632903.087891
[c588dc8fc172580] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c588dc8fc193500] jit-mem-looptoken-alloc}
[c588dc8fcd79980] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036017d0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00189AD22062A0F20000CCF2010040F921040091010000F9A1BF40F9A09340F9A2AF40F9A3B740F9A49F40F9A5CB40F9A69B40F9A7A340F9A88740F9A9B340F9AA8F40F9AB8340F9ACC340F9ADBB40F9B38B40F9B49740F9A08300F9A0A740F9A08700F9A0AB40F9A08B00F9A0C740F990FBFF58B00B00F9FF4301D1B08740F9F00300F9B08B40F9F00700F9E20B00F9E90F00F9E31300F9ED1700F9E11B00F9EC1F00F9E02300F9E52700F9F1030BAAE00308AAE10313AAE2030AAAA38340F9E50306AAE60304AAE40314AAE80311AA10F682D2106CA0F2100EC0F2B00F00F9113998D2B113A0F23100C0F2330240F93FFE9FC8BD07009100013FD6FF4301910F3998D2AF13A0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101280D21012A0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D4D0F4FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D490F3FF58B00700F910F882D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c588dc8fd262b00] jit-backend-dump}
[c588dc8fd304e80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @700360193c +0  21010054 
[c588dc8fd327580] jit-backend-dump}
[c588dc8fd8a0700] {jit-backend-addr
Loop -1 () has address 0x70036017f0 to 0x7003601960 (bootstrap 0x70036017e0) 
       gc table: 0x70036017d0 
       function: 0x70036017e0 
         resops: 0x70036017f0 
       failures: 0x7003601960 
            end: 0x700360198c 
[c588dc8fd8b4380] jit-backend-addr}
x1 = 1383982105
x3 = 2627113832
x4 = 1389551696
x6 = 1494226881
x9 = 0
x14 = 49455
x15 = 0
x16 = 1630
x17 = 0
builder: rpython-macos-arm64 build #262
test: jit/backend/aarch64/test/test_runner/py/TestARM64/()/test_call_release_gil_variable_function_and_arguments