Author: Maciej Fijalkowski <[email protected]>
Branch: jitframe-on-heap
Changeset: r60395:08749a4312fb
Date: 2013-01-23 22:16 +0200
http://bitbucket.org/pypy/pypy/changeset/08749a4312fb/

Log:    add some info

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
@@ -47,6 +47,7 @@
     # guard_not_forced descr
     ('jf_force_descr', llmemory.GCREF),
     # a map of GC pointers
+    ('jf_comingfrom', llmemory.GCREF),
     ('jf_gcmap', lltype.Ptr(GCMAP)),
     # For the front-end: a GCREF for the savedata
     ('jf_savedata', llmemory.GCREF),
diff --git a/rpython/jit/backend/llsupport/llmodel.py 
b/rpython/jit/backend/llsupport/llmodel.py
--- a/rpython/jit/backend/llsupport/llmodel.py
+++ b/rpython/jit/backend/llsupport/llmodel.py
@@ -58,7 +58,9 @@
 
         def realloc_frame(frame, size, asm):
             frame = lltype.cast_opaque_ptr(jitframe.JITFRAMEPTR, frame)
-            assert frame.jf_frame_info.jfi_frame_depth >= size
+            if not frame.jf_frame_info.jfi_frame_depth >= size:
+                import pdb
+                pdb.set_trace()
             print "realloc frame (%d) %d->%d" % (size, len(frame.jf_frame), 
frame.jf_frame_info.jfi_frame_depth)
             print "from %x" % asm
             new_frame = jitframe.JITFRAME.allocate(frame.jf_frame_info)
diff --git a/rpython/jit/backend/x86/runner.py 
b/rpython/jit/backend/x86/runner.py
--- a/rpython/jit/backend/x86/runner.py
+++ b/rpython/jit/backend/x86/runner.py
@@ -119,6 +119,10 @@
             #llop.debug_print(lltype.Void, ">>>> Entering", addr)
             frame_info = clt.frame_info
             frame = jitframe.JITFRAME.allocate(frame_info)
+
+            from rpython.rtyper.annlowlevel import cast_instance_to_gcref
+            
+            frame.jf_comingfrom = cast_instance_to_gcref(executable_token)
             ll_frame = lltype.cast_opaque_ptr(llmemory.GCREF, frame)
             prev_interpreter = None   # help flow space
             if not self.translate_support_code:
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to