[pypy-svn] r35234 - pypy/branch/jit-real-world/pypy/jit/timeshifter/test

arigo at codespeak.net arigo at codespeak.net
Sun Dec 3 23:20:40 CET 2006


Author: arigo
Date: Sun Dec  3 23:20:39 2006
New Revision: 35234

Modified:
   pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_timeshift.py
   pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_vdict.py
Log:
Fix an AnnotatorPolicy left behind.  Add a test.


Modified: pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_timeshift.py
==============================================================================
--- pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_timeshift.py	(original)
+++ pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_timeshift.py	Sun Dec  3 23:20:39 2006
@@ -14,7 +14,6 @@
 from pypy.annotation import model as annmodel
 from pypy.rpython.llinterp import LLInterpreter, LLException
 from pypy.objspace.flow.model import checkgraph
-from pypy.annotation.policy import AnnotatorPolicy
 from pypy.translator.backendopt.inline import auto_inlining
 from pypy import conftest
 from pypy.jit.conftest import Benchmark

Modified: pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_vdict.py
==============================================================================
--- pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_vdict.py	(original)
+++ pypy/branch/jit-real-world/pypy/jit/timeshifter/test/test_vdict.py	Sun Dec  3 23:20:39 2006
@@ -1,9 +1,8 @@
-from pypy.annotation.policy import AnnotatorPolicy
+from pypy.jit.hintannotator.annotator import HintAnnotatorPolicy
 from pypy.jit.timeshifter.test.test_timeshift import TimeshiftingTests
 
-P_OOPSPEC = AnnotatorPolicy()
-P_OOPSPEC.novirtualcontainer = True
-P_OOPSPEC.oopspec = True
+P_OOPSPEC = HintAnnotatorPolicy(novirtualcontainer = True,
+                                oopspec = True)
 
 
 class TestVDict(TimeshiftingTests):
@@ -28,3 +27,16 @@
         res = self.timeshift(ll_function, [], [], policy=P_OOPSPEC)
         assert res == 34
         self.check_insns({})
+
+    def test_multiple_vdicts(self):
+        def ll_function():
+            d1 = {}
+            d1[12] = 34
+            l1 = [12]
+            l2 = ['foo']
+            d2 = {}
+            d2['foo'] = 'hello'
+            return d1[l1.pop()] + len(d2[l2.pop()])
+        res = self.timeshift(ll_function, [], [], policy=P_OOPSPEC)
+        assert res == 39
+        self.check_insns({})


More information about the pypy-svn mailing list