jit/metainterp/test/test_jitprof.py::TestProfile::()::test_simple_loop
self = <rpython.jit.metainterp.test.test_jitprof.TestProfile instance at 0x0000000022696420>
def test_simple_loop(self):
myjitdriver = JitDriver(greens = [], reds = ['x', 'y', 'res'])
def f(x, y):
res = 0
while y > 0:
myjitdriver.can_enter_jit(x=x, y=y, res=res)
myjitdriver.jit_merge_point(x=x, y=y, res=res)
res += x
y -= 1
return res * 2
> res = self.meta_interp(f, [6, 7])
jit/metainterp/test/test_jitprof.py:46:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
jit/metainterp/test/test_jitprof.py:32: in meta_interp
return LLJitMixin.meta_interp(self, *args, **kwds)
jit/metainterp/test/support.py:265: in meta_interp
return ll_meta_interp(*args, **kwds)
jit/metainterp/warmspot.py:89: in ll_meta_interp
return jittify_and_run(interp, graph, args, backendopt=backendopt, **kwds)
jit/metainterp/warmspot.py:127: in jittify_and_run
res = interp.eval_graph(graph, args)
rtyper/llinterp.py:102: in eval_graph
retval = llframe.eval()
rtyper/llinterp.py:300: in eval
nextblock, args = self.eval_block(nextblock)
rtyper/llinterp.py:324: in eval_block
self.eval_operation(op)
rtyper/llinterp.py:427: in eval_operation
retval = ophandler(*vals)
rtyper/llinterp.py:702: in op_direct_call
return self.perform_call(f, FTYPE.ARGS, args)
rtyper/llinterp.py:689: in perform_call
return self.invoke_callable_with_pyexceptions(f, *args)
rtyper/llinterp.py:512: in invoke_callable_with_pyexceptions
self.make_llexception()
rtyper/llinterp.py:489: in make_llexception
evalue = exdata.get_standard_ll_exc_instance_by_class(exc.__class__)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <rpython.rtyper.exceptiondata.ExceptionData object at 0x00000000228e67c8>
exceptionclass = <class 'rpython.rtyper.exceptiondata.UnknownException'>
def get_standard_ll_exc_instance_by_class(self, exceptionclass):
if exceptionclass not in self.standardexceptions:
> raise UnknownException(exceptionclass)
E UnknownException: <class 'rpython.rtyper.exceptiondata.UnknownException'>
rtyper/exceptiondata.py:42: UnknownException
---------- Captured stdout call ----------
~~~ Crash in JIT!
~~~ <class 'rpython.translator.platform.CompilationError'>: CompilationError(err="""
collect2: fatal error: posix_spawnp: Operation not permitted
compilation terminated.
""")
---------- Captured stderr call ----------
[rtyper] -=- specialized 7 blocks -=-
[rtyper] -=- specialized 4 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 -=-
[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] 0 effectinfos:
[jitcodewriter] 0 descrs for arrays
[jitcodewriter] 0 descrs for fields
[jitcodewriter] 0 descrs for interiorfields
[platform:Error] collect2: fatal error: posix_spawnp: Operation not permitted
[platform:Error] compilation terminated.
builder: rpython-linux-x86-64 build #948+
test: jit/metainterp/test/test_jitprof.py::TestProfile::()::test_simple_loop