[pypy-svn] r63558 - in pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp: . test
arigo at codespeak.net
arigo at codespeak.net
Fri Apr 3 11:27:10 CEST 2009
Author: arigo
Date: Fri Apr 3 11:27:10 2009
New Revision: 63558
Modified:
pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_basic.py
pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_loop.py
pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/warmspot.py
Log:
Skipped test about compiling entry and exit paths if they are seen often enough.
Modified: pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_basic.py
==============================================================================
--- pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_basic.py (original)
+++ pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_basic.py Fri Apr 3 11:27:10 2009
@@ -336,6 +336,19 @@
res = self.meta_interp(f, [7])
assert res == 0
+ def test_bridge_from_interpreter(self):
+ py.test.skip("in-progress")
+ mydriver = JitDriver(reds = ['n'], greens = [])
+
+ def f(n):
+ while n > 0:
+ mydriver.can_enter_jit(n=n)
+ mydriver.jit_merge_point(n=n)
+ n -= 1
+
+ self.meta_interp(f, [20], repeat=7)
+ self.check_loop_count(3) # the loop, the entry path, the exit path
+
class TestOOtype(BasicTests, OOJitMixin):
pass
Modified: pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_loop.py
==============================================================================
--- pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_loop.py (original)
+++ pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/test/test_loop.py Fri Apr 3 11:27:10 2009
@@ -433,7 +433,6 @@
assert res == 5 * 10 * 3
def test_outer_and_inner_loop(self):
- #py.test.skip("fix me")
jitdriver = JitDriver(greens = ['p', 'code'], reds = ['i', 'j',
'total'])
Modified: pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/warmspot.py
==============================================================================
--- pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/warmspot.py (original)
+++ pypy/branch/pyjitpl5-simplify/pypy/jit/metainterp/warmspot.py Fri Apr 3 11:27:10 2009
@@ -36,13 +36,18 @@
clear_tcache()
return jittify_and_run(interp, graph, args, **kwds)
-def jittify_and_run(interp, graph, args, **kwds):
+def jittify_and_run(interp, graph, args, repeat=1, **kwds):
translator = interp.typer.annotator.translator
warmrunnerdesc = WarmRunnerDesc(translator, **kwds)
warmrunnerdesc.state.set_param_threshold(3) # for tests
warmrunnerdesc.state.set_param_trace_eagerness(2) # for tests
warmrunnerdesc.finish()
- return interp.eval_graph(graph, args)
+ res = interp.eval_graph(graph, args)
+ while repeat > 1:
+ res1 = interp.eval_graph(graph, args)
+ assert res1 == res
+ repeat -= 1
+ return res
def rpython_ll_meta_interp(function, args, backendopt=True,
loops='not used right now', **kwds):
More information about the Pypy-commit
mailing list