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 0x000000010808a950>

    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 'ffiifiififffiiifii'
E           x17: got -1L, expected 30298L

jit/backend/test/runner_test.py:3125: AssertionError
---------- Captured stderr setup ----------
[c58667dce8a5180] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600000 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c58667dce9b3000] jit-backend-dump}
[c58667dcec9aa80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600060 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9052D9AD28549A0F20500CCF2A40040F9060080D2A60000F9052C9AD28549A0F20500CCF2A60000F9A41700F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c58667dcee4f700] jit-backend-dump}
[c58667dcf60e180] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036000f0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDE00740A9FE0300F9A00F00F9E0031DAA102D9AD29049A0F21000CCF2100240F9B01700F9102C9AD29049A0F21000CCF2130240F9102D9AD29049A0F21000CCF2110080D2110200F9102C9AD29049A0F21000CCF2110200F9106291D2B00DA0F23000C0F21000E0F200023FD6FD0300AA102D9AD29049A0F21000CCF2B11740F9110200F9110080D2B11700F9102C9AD29049A0F21000CCF2130200F9100080D2B00F00F9A02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9B35B40F9B45F40F9A06340FDA16740FDA26B40FDA36F40FDA47340FDA57740FDA67B40FDA77F40FDFE0340F9FF430091C0035FD6 
[c58667dcfa23000] jit-backend-dump}
[c58667dcfc83480] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600270 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDE0031DAAF35344A9FE77C5A8C0035FD6 
[c58667dcfde0680] jit-backend-dump}
[c58667dd01afc00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036002f0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FD052D9AD28549A0F20500CCF2A40040F9060080D2A60000F9052C9AD28549A0F20500CCF2A60000F9A41700F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c58667dd047de80] jit-backend-dump}
[c58667dd061bb00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036003a0 +0  102D9AD29049A0F21000CCF2000240F9110080D2110200F9102C9AD29049A0F21000CCF2110200F9A01700F9000080D2A00700F9E0031DAAF35344A9FE77C5A8C0035FD6 
[c58667dd06fbf00] jit-backend-dump}
[c58667dd0bb3980] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036003f0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9B35B40F9B45F40F9F00340F9FF43009100025FD6 
[c58667dd0de3700] jit-backend-dump}
[c58667dd118bd00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036004c0 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9F00340F9FF43009100025FD6 
[c58667dd1390280] jit-backend-dump}
[c58667dd1b97000] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600580 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9B35B00F9B45F00F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9B35B40F9B45F40F9A06340FDA16740FDA26B40FDA36F40FDA47340FDA57740FDA67B40FDA77F40FDF00340F9FF43009100025FD6 
[c58667dd1e16c00] jit-backend-dump}
[c58667dd224ab00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600670 +0  A02300F9A12700F9A22B00F9A32F00F9A43300F9A53700F9A63B00F9A73F00F9A84300F9A94700F9AA4B00F9AB4F00F9AC5300F9AD5700F9A06300FDA16700FDA26B00FDA36F00FDA47300FDA57700FDA67B00FDA77F00FDFF4300D1F00700F9FE0300F920023FD6F10300AAA02340F9A12740F9A22B40F9A32F40F9A43340F9A53740F9A63B40F9A73F40F9A84340F9A94740F9AA4B40F9AB4F40F9AC5340F9AD5740F9A06340FDA16740FDA26B40FDA36F40FDA47340FDA57740FDA67B40FDA77F40FDF00340F9FF43009100025FD6 
[c58667dd24ceb80] jit-backend-dump}
---------- Captured stdout call ----------
random seed 8254

Xffffffffffffff
               

Xufffuuuu
^^^ ^    

Xiiiii
   ^  

Xuffufuufuuf
^^^ ^ ^ ^ ^^

Xffuuuufufuufu
 ^    ^    ^^^

Xufufuuuu
 ^^^^    

Xffiifiififffiiifii
^  ^^ ^^  ^ ^^  ^^^
---------- Captured stderr call ----------
[c58667de152b300] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667de1536300] jit-mem-looptoken-alloc}
[c58667de1e0ed80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600780 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00DC81D2204FA0F20000CCF2010040F921040091010000F950FEFF58B00B00F9FFC300D1B0A740F9F00300F9B0AB40F9F00700F9B0AF40F9F00B00F9B0B340F9F00F00F9B0B740F9F01300F9B0BB40F9F01700F9B18340F9A08740FDA18B40FDA28F40FDA39340FDA49740FDA59B40FDA69F40FDA7A340FDE80311AA10EB80D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD6FFC300910F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D470F7FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D430F6FF58B00700F910ED80D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667de2238400] jit-backend-dump}
[c58667de22d9480] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600898 +0  21010054 
[c58667de22f9400] jit-backend-dump}
[c58667de2702d00] {jit-backend-addr
Loop -1 () has address 0x70036007a0 to 0x70036008bc (bootstrap 0x7003600790) 
       gc table: 0x7003600780 
       function: 0x7003600790 
         resops: 0x70036007a0 
       failures: 0x70036008bc 
            end: 0x70036008e8 
[c58667de2714e80] jit-backend-addr}
x0 = 231592977245.479614
x1 = 30929122653.162849
x2 = -395497867215.309998
x3 = -62524093260.779312
x4 = -101973126768.347702
x5 = -45341041728.490089
x6 = 473184424185.093994
x7 = 127449029787.966705
x8 = -491300118726.029907
x9 = -13577252726.929310
x10 = 412396223530.263367
x11 = -311667007254.672913
x12 = 179811299166.832031
x13 = 106919162979.735992
[c58667dfaeaaa00] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667dfaec0000] jit-mem-looptoken-alloc}
[c58667dfb7c6280] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600920 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00A483D2804FA0F20000CCF2010040F921040091010000F9A18340F9A09340FDA18B40FDA08740F9D0FDFF58B00B00F9F10301AAA19740F9A29B40F9A39F40F9A4A340F90240601E2040601EA18F40FDE80311AA102081D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D4D0F8FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D490F7FF58B00700F9102281D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667dfbb3f500] jit-backend-dump}
[c58667dfbbfc480] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600a0c +0  21010054 
[c58667dfbc1d200] jit-backend-dump}
[c58667dfbf9e180] {jit-backend-addr
Loop -1 () has address 0x7003600940 to 0x7003600a30 (bootstrap 0x7003600930) 
       gc table: 0x7003600920 
       function: 0x7003600930 
         resops: 0x7003600940 
       failures: 0x7003600a30 
            end: 0x7003600a5c 
[c58667dfbfadf80] jit-backend-addr}
x0 = 2680125463
x1 = -303460836671.050171
x2 = 451569489407.621155
x3 = -348253744847.038208
x4 = 1963027199
x5 = 2550575549
x6 = 1094781322
[c58667e0ba18480] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667e0ba21180] jit-mem-looptoken-alloc}
[c58667e0c1b3880] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600aa0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA003C87D2204FA0F20000CCF2010040F921040091010000F9A18F40F930FEFF58B00B00F9B18340F9A08740F9E20301AAA39340F9A49740F9A18B40F9E80311AA105081D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D470F9FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D430F8FF58B00700F9105281D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667e0c7caa00] jit-backend-dump}
[c58667e0c862b80] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600b78 +0  21010054 
[c58667e0c884100] jit-backend-dump}
[c58667e0cbd5300] {jit-backend-addr
Loop -1 () has address 0x7003600ac0 to 0x7003600b9c (bootstrap 0x7003600ab0) 
       gc table: 0x7003600aa0 
       function: 0x7003600ab0 
         resops: 0x7003600ac0 
       failures: 0x7003600b9c 
            end: 0x7003600bc8 
[c58667e0cbe5c80] jit-backend-addr}
[c58667e17198d80] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667e171a1400] jit-mem-looptoken-alloc}
[c58667e17b2e180] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600c10 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00D498D2204FA0F20000CCF2010040F921040091010000F9A19B40F9A08340F9A29340F9A0A340FDA1AF40FDA3AB40F9A48740F9A28B40FD50FDFF58B00B00F9F10300AAE00304AAA4A740F9E50303AAA39F40F9FF4300D1E10300F9E10302AAE20340F9FF4300910340601E2440601E4040601EA18F40FDA29740FDE80311AA107D81D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D470F7FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D430F6FF58B00700F9107F81D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667e17f27e80] jit-backend-dump}
[c58667e17fdb780] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600d28 +0  21010054 
[c58667e17ffb580] jit-backend-dump}
[c58667e18415800] {jit-backend-addr
Loop -1 () has address 0x7003600c30 to 0x7003600d4c (bootstrap 0x7003600c20) 
       gc table: 0x7003600c10 
       function: 0x7003600c20 
         resops: 0x7003600c30 
       failures: 0x7003600d4c 
            end: 0x7003600d78 
[c58667e18427f80] jit-backend-addr}
x0 = 1485829129
x1 = -425085632396.754272
x2 = 255095593636.746094
x3 = 2678115355
x4 = 26520759535.553120
x5 = 831236167
x6 = 1793899095
x7 = -410629553682.429626
x8 = 1823462897
x9 = 3967999088
x10 = 401828204905.356995
[c58667e2d3e0a80] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667e2d3fae80] jit-mem-looptoken-alloc}
[c58667e2de0bd00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600db0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA00E893D2204FA0F20000CCF2010040F921040091010000F9A1AF40F9A0B340FDA0B740F9A18740FDA29B40F9B0FDFF58B00B00F9B18340F9E30302AAA4A340F9A5AB40F9E60301AAE70300AAA08F40F9A19340F9A29740F9A29F40FDA3A740FD0440601E2040601EA18B40FDE80311AA10B281D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D4F0F7FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D4B0F6FF58B00700F910B481D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667e2e1e6000] jit-backend-dump}
[c58667e2e27ab00] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600eb8 +0  21010054 
[c58667e2e299d00] jit-backend-dump}
[c58667e2e669600] {jit-backend-addr
Loop -1 () has address 0x7003600dd0 to 0x7003600edc (bootstrap 0x7003600dc0) 
       gc table: 0x7003600db0 
       function: 0x7003600dc0 
         resops: 0x7003600dd0 
       failures: 0x7003600edc 
            end: 0x7003600f08 
[c58667e2e684800] jit-backend-addr}
x0 = 276360328216.868103
x1 = 162386990246.194153
x6 = -175369593888.391235
x8 = -99782167927.975021
x11 = -303064010694.880859
[c58667e46cda600] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667e46ce3300] jit-mem-looptoken-alloc}
[c58667e4755c400] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003600f50 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA001482D2204FA0F20000CCF2010040F921040091010000F9A18F40F9A08740F9A08B40FDA19340FDD0FDFF58B00B00F9B18340F9A29740F9A39B40F9A49F40F9A5A340F9E80311AA10E581D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD60F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D430F9FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D4F0F7FF58B00700F910E781D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667e479aae80] jit-backend-dump}
[c58667e47a46500] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @7003601030 +0  21010054 
[c58667e47a67800] jit-backend-dump}
[c58667e47de2a00] {jit-backend-addr
Loop -1 () has address 0x7003600f70 to 0x7003601054 (bootstrap 0x7003600f60) 
       gc table: 0x7003600f50 
       function: 0x7003600f60 
         resops: 0x7003600f70 
       failures: 0x7003601054 
            end: 0x7003601080 
[c58667e47df3b80] jit-backend-addr}
x1 = 371516583749.723022
x3 = 161170124478.755432
[c58667e5c266100] {jit-mem-looptoken-alloc
allocating Loop # -1 
[c58667e5c26de80] jit-mem-looptoken-alloc}
[c58667e5cd27200] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036010c0 +0  00000000000000000000000000000000FE77BBA9F35304A9E10F00F9FD0300AA003481D2204FA0F20000CCF2010040F921040091010000F9A0B340FDA1C740F9A09340F9A2CB40F9A1C340FDA3B740F9A49F40F9A58340F9A69B40F9A2AB40FDA78F40F9F0FCFF58B00B00F9FF4300D1E10300F9E20700F9F10305AAE10300AAE20306AAE50303AAA6BB40F9E00307AAE30304AAA4A740F9A7BF40F9A3A340FD4440601EA5AF40FD0640601E2740601EA08740FDA18B40FDA29740FDE80311AA101382D2106CA0F2100EC0F2B00F00F9113988D2F10FA0F23100C0F2330240F93FFE9FC8BD07009100013FD6FF4300910F3988D2EF0FA0F22F00C0F2E17D5FC8610000B5F3FD03C8A3FFFF35BF3B03D5C10000B4101290D2B00DA0F23000C0F21000E0F200023FD6BD0700D1100080D2B00F00F9B00740F91F0200F1000020D450F6FF58B00700F9BF0F00F9E0031DAAF35344A9FE77C5A8C0035FD6000020D410F5FF58B00700F9101582D2106CA0F2100EC0F2B00F00F9100C80D2106CA0F2100EC0F21000E0F200023FD6 
[c58667e5d17e900] jit-backend-dump}
[c58667e5d22b300] {jit-backend-dump
BACKEND arm 
SYS_EXECUTABLE ?? 
CODE_DUMP @70036011fc +0  21010054 
[c58667e5d251800] jit-backend-dump}
[c58667e5d6b7f80] {jit-backend-addr
Loop -1 () has address 0x70036010e0 to 0x7003601220 (bootstrap 0x70036010d0) 
       gc table: 0x70036010c0 
       function: 0x70036010d0 
         resops: 0x70036010e0 
       failures: 0x7003601220 
            end: 0x700360124c 
[c58667e5d6c8d00] jit-backend-addr}
x0 = 213369325630.198151
x1 = -68943298524.172241
x4 = -170894895208.475006
x7 = 364644964444.459900
x9 = 463738133518.852234
x10 = -351332644509.690430
x11 = 103911776434.375931
x15 = 446364295816.728882
builder: rpython-macos-arm64 build #261
test: jit/backend/aarch64/test/test_runner/py/TestARM64/()/test_call_release_gil_variable_function_and_arguments