[pypy-commit] pypy partial-virtualizable: Add a test that passes in trunk but fails here.
arigo
noreply at buildbot.pypy.org
Fri May 20 13:37:49 CEST 2011
Author: Armin Rigo <arigo at tunes.org>
Branch: partial-virtualizable
Changeset: r44325:cb6a2eb637ed
Date: 2011-05-20 13:23 +0200
http://bitbucket.org/pypy/pypy/changeset/cb6a2eb637ed/
Log: Add a test that passes in trunk but fails here.
diff --git a/pypy/jit/metainterp/test/test_recursive.py b/pypy/jit/metainterp/test/test_recursive.py
--- a/pypy/jit/metainterp/test/test_recursive.py
+++ b/pypy/jit/metainterp/test/test_recursive.py
@@ -725,6 +725,30 @@
res = self.meta_interp(main, [2], inline=True)
assert res == 7
+ def test_compile_tmp_callback_and_using_it_with_virtualizable(self):
+ # same as the previous test, but with a virtualizable
+ class Frame(object):
+ _virtualizable2_ = ['j']
+ def __init__(self, j):
+ self.j = j
+
+ driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'],
+ virtualizables = ['frame'])
+
+ def main(codeno):
+ frame = Frame(codeno+100)
+ i = 1
+ while i < 7:
+ driver.jit_merge_point(codeno=codeno, i=i, frame=frame)
+ assert frame.j == codeno+100
+ if codeno == 1:
+ return
+ if i >= 3:
+ main(1)
+ i += 1
+
+ self.meta_interp(main, [2], inline=True)
+
def test_directly_call_assembler_return(self):
driver = JitDriver(greens = ['codeno'], reds = ['i', 'k'],
get_printable_location = lambda codeno : str(codeno))
More information about the pypy-commit
mailing list