jit/backend/x86/test/test_rvmprof.py::TestRVMProfCall::()::test_simple
self = <rpython.conftest.LeakFinder instance at 0x00007fcc46326720>
item = <Function 'test_simple'>
@pytest.hookimpl(trylast=True)
def pytest_runtest_teardown(self, item):
if not isinstance(item, py.test.collect.Function):
return
if (not getattr(item.obj, 'dont_track_allocations', False)
and leakfinder.TRACK_ALLOCATIONS):
kwds = {}
try:
kwds['do_collection'] = item.track_allocations_collect
except AttributeError:
pass
item._pypytest_leaks = leakfinder.stop_tracking_allocations(False,
**kwds)
else: # stop_tracking_allocations() already called
item._pypytest_leaks = None
# check for leaks, but only if the test passed so far
if getattr(item, '_success', False) and item._pypytest_leaks:
> raise leakfinder.MallocMismatch(item._pypytest_leaks)
E MallocMismatch: {
E
E struct vmprof_stack_s { c_next=..., c_value=8, c_kind=1 }:
E struct vmprof_stack_s { c_next=..., c_value=12, c_kind=1 }:
E ...
E File "/workspace/rpython/rtyper/llinterp.py", line 496, in invoke_callable_with_pyexceptions
E return obj._callable(*args)
E File "/workspace/rpython/rlib/rvmprof/cintf.py", line 203, in enter_code
E s = _pop_freelist_or_malloc()
E File "/workspace/rpython/rlib/rvmprof/cintf.py", line 198, in _pop_freelist_or_malloc
E return lltype.malloc(VMPROFSTACK, flavor='raw')
E }
conftest.py:103: MallocMismatch
---------- Captured stdout call ----------
bh: live [31] -> 33
bh: int_return [<BHInterp <JitCode 'f'>>, -22] -> LeaveFrame!
bh: live [96] -> 98
bh: rvmprof_code [1, 12]
bh: int_return [<BHInterp <JitCode 'f_rvmprof__star_4'>>, -22] -> LeaveFrame!
bh: live [66] -> 68
bh: int_add [29, 1] -> 30
bh: live [73] -> 75
bh: goto_if_not_int_lt [30, 30, 83, 80] -> 83
bh: int_return [<BHInterp <JitCode 'f'>>, -22] -> LeaveFrame!
~~~ return value: -22
---------- Captured stderr call ----------
[rtyper] -=- specialized 72 blocks -=-
[rtyper] -=- specialized 4 more blocks -=-
[rtyper] -=- specialized 2 more blocks -=-
[rtyper] -=- specialized 7 more blocks -=-
[rtyper] -=- specialized 6 more blocks -=-
[rtyper] specializing: 100 / 108 blocks (92%)
[rtyper] -=- specialized 17 more blocks -=-
[rtyper] -=- specialized 2 more blocks -=-
[rtyper] -=- specialized 3 more blocks -=-
[jitcodewriter:info] making JitCodes...
[rtyper] -=- specialized 7 more blocks -=-
[rtyper] -=- specialized 6 more blocks -=-
[rtyper] -=- specialized 3 more blocks -=-
[rtyper] -=- specialized 6 more blocks -=-
[rtyper] -=- specialized 3 more blocks -=-
[rtyper] -=- specialized 4 more blocks -=-
[rtyper] -=- specialized 5 more blocks -=-
[jitcodewriter:WARNING] found debug_assert in <FunctionGraph of (rpython.rtyper.rlist:690)ll_getitem_nonneg__dum_nocheckConst_ll_getitem_foldable_nonnegCons_arrayPtr_Signed at 0x24bfc100>; should have be removed
[jitcodewriter:info] There are 5 JitCode instances.
[jitcodewriter:info] There are 13 -live- ops. Size of liveness is 27 bytes
[jitcodewriter] compute_bitstrings:
[jitcodewriter] 9 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
builder: rpython-linux-x86-64 build #781*
test: jit/backend/x86/test/test_rvmprof.py::TestRVMProfCall::()::test_simple