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

memory/test/test_minimark_gc_cardmarking.py::TestMiniMarkGCCardMarking::()::test_llinterp_tuples

self = <rpython.memory.test.test_minimark_gc_cardmarking.TestMiniMarkGCCardMarking object at 0x7f554458aa90>

    def test_llinterp_tuples(self):
        #curr = simulator.current_size
        def malloc_a_lot():
            i = 0
            while i < 10:
                i += 1
                a = (1, 2, i)
                b = [a] * 10
                j = 0
                while j < 20:
                    j += 1
                    b.append((1, j, i))
>       self.interpret(malloc_a_lot, [])

memory/test/gc_test_base.py:76: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
memory/test/gc_test_base.py:47: in interpret
    return interp.eval_graph(graph, values)
rtyper/llinterp.py:97: in eval_graph
    retval = llframe.eval()
rtyper/llinterp.py:295: in eval
    nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:319: in eval_block
    self.eval_operation(op)
rtyper/llinterp.py:422: in eval_operation
    retval = ophandler(*vals)
rtyper/llinterp.py:697: in op_direct_call
    return self.perform_call(f, FTYPE.ARGS, args)
rtyper/llinterp.py:693: in perform_call
    return frame.eval()
rtyper/llinterp.py:295: in eval
    nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:319: in eval_block
    self.eval_operation(op)
rtyper/llinterp.py:422: in eval_operation
    retval = ophandler(*vals)
rtyper/llinterp.py:697: in op_direct_call
    return self.perform_call(f, FTYPE.ARGS, args)
rtyper/llinterp.py:693: in perform_call
    return frame.eval()
rtyper/llinterp.py:295: in eval
    nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:319: in eval_block
    self.eval_operation(op)
rtyper/llinterp.py:422: in eval_operation
    retval = ophandler(*vals)
rtyper/llinterp.py:697: in op_direct_call
    return self.perform_call(f, FTYPE.ARGS, args)
rtyper/llinterp.py:693: in perform_call
    return frame.eval()
rtyper/llinterp.py:295: in eval
    nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:319: in eval_block
    self.eval_operation(op)
rtyper/llinterp.py:422: in eval_operation
    retval = ophandler(*vals)
rtyper/llinterp.py:697: in op_direct_call
    return self.perform_call(f, FTYPE.ARGS, args)
rtyper/llinterp.py:693: in perform_call
    return frame.eval()
rtyper/llinterp.py:295: in eval
    nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:319: in eval_block
    self.eval_operation(op)
rtyper/llinterp.py:422: in eval_operation
    retval = ophandler(*vals)
rtyper/llinterp.py:697: in op_direct_call
    return self.perform_call(f, FTYPE.ARGS, args)
rtyper/llinterp.py:693: in perform_call
    return frame.eval()
rtyper/llinterp.py:295: in eval
    nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:319: in eval_block
    self.eval_operation(op)
rtyper/llinterp.py:422: in eval_operation
    retval = ophandler(*vals)
rtyper/llinterp.py:730: in op_malloc_varsize
    track_allocation=track_allocation)
memory/gcwrapper.py:74: in malloc
    addr = self.gc.malloc(typeid, n, zero=zero)
memory/gc/base.py:191: in malloc
    offset_to_length)
memory/gc/minimark.py:598: in malloc_varsize_clear
    obj = self.external_malloc(typeid, length, alloc_young=True)
memory/gc/minimark.py:732: in external_malloc
    self.major_collection(raw_malloc_usage(totalsize))
memory/gc/minimark.py:1650: in major_collection
    self.debug_check_consistency()
memory/gc/minimark.py:991: in debug_check_consistency
    MovingGCBase.debug_check_consistency(self)
memory/gc/base.py:459: in debug_check_consistency
    self.trace(obj, self.make_callback('_debug_callback2'), self, None)
memory/gc/base.py:279: in trace
    callback(item, arg1, arg2)
memory/gc/base.py:254: in callback
    meth(pointer, arg2)
memory/gc/base.py:477: in _debug_callback2
    self._debug_record(obj)
memory/gc/base.py:465: in _debug_record
    if not seen.contains(obj):
memory/support.py:337: in contains
    return self._key(keyaddr) in self.data
memory/support.py:325: in _key
    return addr._fixup().ptr._obj
rtyper/lltypesystem/llmemory.py:559: in _fixup
    if self.ptr is not None and self.ptr._was_freed():
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <arenaaddr <Arena #43 [320 bytes]> + 8>

    def _getptr(self):
        try:
            return self.arena.objectptrs[self.offset]
        except KeyError:
            self.arena.check()
            raise ArenaError("don't know yet what type of object "
>                            "is at offset %d" % (self.offset,))
E           ArenaError: don't know yet what type of object is at offset 8

rtyper/lltypesystem/llarena.py:160: ArenaError
---------- Captured stderr call ----------
[rtyper] specializing: 100 / 151 blocks   (66%)
[rtyper] -=- specialized 151 blocks -=-
[rtyper] -=- specialized 4 more blocks -=-
[c58b2e1a320cf00] {gc-set-nursery-size
nursery size: 256 
[c58b2e1a3218480] gc-set-nursery-size}
[c58b2e1a3bd5980] {gc-minor
[c58b2e1a3be3980] {gc-minor-walkroots
[c58b2e1a3c7cd00] gc-minor-walkroots}
minor collect, total memory used: 320 
[c58b2e1a3ed5a00] gc-minor}
[c58b2e1a44c7400] {gc-minor
[c58b2e1a44cdd80] {gc-minor-walkroots
[c58b2e1a44e4c80] gc-minor-walkroots}
minor collect, total memory used: 448 
[c58b2e1a46c2700] gc-minor}
[c58b2e1a49d0e80] {gc-minor
[c58b2e1a49d7080] {gc-minor-walkroots
[c58b2e1a4afe700] gc-minor-walkroots}
minor collect, total memory used: 544 
[c58b2e1a4bb5480] gc-minor}
[c58b2e1a4bbc600] {gc-collect

.----------- Full collection ------------------ 
| used before collection: 
|          in ArenaCollection:      376 bytes 
|          raw_malloced:            168 bytes 
[llinterp:error] AN ERROR OCCURED: don't know yet what type of object is at offset 8
[llinterp:traceback] malloc_a_lot() rpython.memory.test.gc_test_base
[llinterp:traceback]    j_1 = int_add(v172, (1))
[llinterp:traceback]    v173 = same_as(b_1)
[llinterp:traceback]    v174 = malloc((GcStruct tuple3), ({'flavor': 'gc'}))
[llinterp:traceback]    v175 = setfield(v174, ('item0'), (1))
[llinterp:traceback]    v176 = setfield(v174, ('item1'), j_1)
[llinterp:traceback]    v177 = setfield(v174, ('item2'), i_9)
[llinterp:traceback] E  v178 = direct_call((<* fn ll_append__listP...le3Ptr>), v173, v174)
[llinterp:traceback]    v255 = int_lt(j_1, (20))
[llinterp:traceback]    v256 = same_as(v255)
[llinterp:traceback] ll_append__listPtr_tuple3Ptr() rpython.rtyper.rlist
[llinterp:traceback]    v179 = same_as(l_25)
[llinterp:traceback]    length_10 = direct_call((<* fn ll_length__listPtr>), v179)
[llinterp:traceback]    v181 = same_as(l_25)
[llinterp:traceback]    v182 = int_add(length_10, (1))
[llinterp:traceback] E  v183 = direct_call((<* fn _ll_list_resize_...Signed>), v181, v182)
[llinterp:traceback]    v247 = same_as(l_25)
[llinterp:traceback]    v248 = direct_call((<* fn ll_setitem_fast_...le3Ptr>), v247, length_10, newitem_1)
[llinterp:traceback] _ll_list_resize_ge__listPtr_Signed() rpython.rtyper.lltypesystem.rlist
[llinterp:traceback] E  v128 = direct_call((<* fn conditional_call...star_3>), cond_2, (None), l_16, newsize_15, (True))
[llinterp:traceback] conditional_call__v128___simple_call__function_c_star_3() rpython.rlib.jit
[llinterp:traceback]    v195 = getfield(args_3, ('item0'))
[llinterp:traceback]    v196 = getfield(args_3, ('item1'))
[llinterp:traceback]    v197 = getfield(args_3, ('item2'))
[llinterp:traceback] E  v198 = direct_call((<* fn _ll_list_resize_...d_Bool>), v195, v196, (True))
[llinterp:traceback] _ll_list_resize_hint_really_look_inside_iff__listPtr_Signed_Bool() <unknown module>
[llinterp:traceback] E  v131 = direct_call((<* fn _ll_list_resize_...tion__>), l_18, newsize_18, overallocate_6)
[llinterp:traceback] _ll_list_resize_hint_really__v131___simple_call__function__() rpython.rtyper.lltypesystem.rlist
[llinterp:traceback]    items_2 = getfield(l_28, ('items'))
[llinterp:traceback]    v208 = same_as((Ptr listPtr))
[llinterp:traceback]    v209 = same_as((None))
[llinterp:traceback]    v210 = same_as((None))
[llinterp:traceback]    v211 = same_as((None))
[llinterp:traceback] E  newitems_3 = malloc_varsize((GcArray array), ({'flavor': 'gc'}), newsize_26)
[llinterp:traceback]    before_len_2 = getfield(l_28, ('length'))
[llinterp:traceback]    v212 = int_is_true(before_len_2)
builder: rpython-linux-x86-64 build #894
test: memory/test/test_minimark_gc_cardmarking/py/TestMiniMarkGCCardMarking/()/test_llinterp_tuples