[pypy-svn] pypy jit-short_from_state: dont cache setfield

hakanardo commits-noreply at bitbucket.org
Fri Apr 22 09:43:40 CEST 2011


Author: Hakan Ardo <hakan at debian.org>
Branch: jit-short_from_state
Changeset: r43525:1a44f963b797
Date: 2011-04-22 09:18 +0200
http://bitbucket.org/pypy/pypy/changeset/1a44f963b797/

Log:	dont cache setfield

diff --git a/pypy/jit/metainterp/test/test_optimizeopt.py b/pypy/jit/metainterp/test/test_optimizeopt.py
--- a/pypy/jit/metainterp/test/test_optimizeopt.py
+++ b/pypy/jit/metainterp/test/test_optimizeopt.py
@@ -950,17 +950,18 @@
         p2sub = new_with_vtable(ConstClass(node_vtable2))
         setfield_gc(p2sub, i1, descr=valuedescr)
         setfield_gc(p2, p2sub, descr=nextdescr)
-        jump(i1, p2, p2sub)
-        """
-        expected = """
-        [i1, p2, p2sub]
+        jump(i1, p2)
+        """
+        expected = """
+        [i1, p2]
+        p2sub = getfield_gc(p2, descr=nextdescr)
         i3 = getfield_gc(p2sub, descr=valuedescr)
         escape(i3)
         p1 = new_with_vtable(ConstClass(node_vtable))
         p3sub = new_with_vtable(ConstClass(node_vtable2))
         setfield_gc(p3sub, i1, descr=valuedescr)
         setfield_gc(p1, p3sub, descr=nextdescr)
-        jump(i1, p1, p3sub)
+        jump(i1, p1)
         """
         self.optimize_loop(ops, expected, preamble)
 
@@ -1869,6 +1870,7 @@
         """
         expected = """
         [p1, i1, i2]
+        setfield_gc(p1, i2, descr=valuedescr)
         jump(p1, i1, i2)
         """
         # in this case, all setfields are removed, because we can prove


More information about the Pypy-commit mailing list