[pypy-commit] pypy jitframe-on-heap: pfff

fijal noreply at buildbot.pypy.org
Mon Mar 4 11:09:41 CET 2013


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: jitframe-on-heap
Changeset: r61999:0bed69cf536e
Date: 2013-03-04 12:02 +0200
http://bitbucket.org/pypy/pypy/changeset/0bed69cf536e/

Log:	pfff

diff --git a/rpython/jit/backend/llsupport/jitframe.py b/rpython/jit/backend/llsupport/jitframe.py
--- a/rpython/jit/backend/llsupport/jitframe.py
+++ b/rpython/jit/backend/llsupport/jitframe.py
@@ -113,6 +113,9 @@
         elif fld == -3:
             (obj_addr + getofs('jf_gc_trace_state')).signed[0] = -4
             return obj_addr + getofs('jf_guard_exc')
+        elif fld == -4:
+            (obj_addr + getofs('jf_gc_trace_state')).signed[0] = -5
+            return obj_addr + getofs('jf_forward')
         else:
             if not (obj_addr + getofs('jf_gcmap')).address[0]:
                 return llmemory.NULL    # done
diff --git a/rpython/jit/backend/llsupport/test/test_gc.py b/rpython/jit/backend/llsupport/test/test_gc.py
--- a/rpython/jit/backend/llsupport/test/test_gc.py
+++ b/rpython/jit/backend/llsupport/test/test_gc.py
@@ -296,20 +296,20 @@
             assert all_addrs[counter] == frame_adr + jitframe.getofs(name)
             counter += 1
     # gcpattern
-    assert all_addrs[4] == indexof(0)
-    assert all_addrs[5] == indexof(1)
-    assert all_addrs[6] == indexof(3)
-    assert all_addrs[7] == indexof(5)
-    assert all_addrs[8] == indexof(7)
+    assert all_addrs[5] == indexof(0)
+    assert all_addrs[6] == indexof(1)
+    assert all_addrs[7] == indexof(3)
+    assert all_addrs[8] == indexof(5)
+    assert all_addrs[9] == indexof(7)
     if sys.maxint == 2**31 - 1:
-        assert all_addrs[9] == indexof(31)
-        assert all_addrs[10] == indexof(33 + 32)
+        assert all_addrs[10] == indexof(31)
+        assert all_addrs[11] == indexof(33 + 32)
     else:
-        assert all_addrs[9] == indexof(63)
-        assert all_addrs[10] == indexof(65 + 64)
+        assert all_addrs[10] == indexof(63)
+        assert all_addrs[11] == indexof(65 + 64)
 
-    assert len(all_addrs) == 4 + 6 + 4
-    # 4 static fields, 4 addresses from gcmap, 2 from gcpattern
+    assert len(all_addrs) == 5 + 6 + 4
+    # 5 static fields, 4 addresses from gcmap, 2 from gcpattern
     lltype.free(frame_info, flavor='raw')
     lltype.free(frame.jf_gcmap, flavor='raw')
 


More information about the pypy-commit mailing list