[pypy-svn] r65813 - pypy/branch/pyjitpl5/pypy/jit/metainterp/test

antocuni at codespeak.net antocuni at codespeak.net
Thu Jun 18 12:23:37 CEST 2009


Author: antocuni
Date: Thu Jun 18 12:23:36 2009
New Revision: 65813

Modified:
   pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_optimize3.py
Log:
one more test passing out of the box


Modified: pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_optimize3.py
==============================================================================
--- pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_optimize3.py	(original)
+++ pypy/branch/pyjitpl5/pypy/jit/metainterp/test/test_optimize3.py	Thu Jun 18 12:23:36 2009
@@ -307,6 +307,23 @@
         assert type(spec_n) is FixedClassSpecNode
         assert spec_n.known_class.value == self.node_vtable_adr
 
+    def test_virtual_escape_optimize_loop(self):
+        loop = self._get_virtual_escape_loop()
+        opt = LoopOptimizer([OptimizeVirtuals()])
+        opt.optimize_loop(loop)
+        expected = """
+        [sum, n1]
+        escape(n1)
+        v = getfield_gc(n1, descr=valuedescr)
+        v2 = int_sub(v, 1)
+        sum2 = int_add(sum, v)
+        n2 = new_with_vtable(ConstClass(node_vtable), descr=nodesize)
+        setfield_gc(n2, v2, descr=valuedescr)
+        escape(n2)
+        jump(sum2, n2)
+        """
+        self.assert_equal(loop, expected)
+
 
 class TestLLtype(LLtypeMixin, BaseTestOptimize3):
     pass



More information about the Pypy-commit mailing list