Author: Maciej Fijalkowski <[email protected]>
Branch: slim-down-resumedescr
Changeset: r75109:193143ca545c
Date: 2014-12-25 12:48 +0200
http://bitbucket.org/pypy/pypy/changeset/193143ca545c/

Log:    another try

diff --git a/rpython/jit/backend/llsupport/assembler.py 
b/rpython/jit/backend/llsupport/assembler.py
--- a/rpython/jit/backend/llsupport/assembler.py
+++ b/rpython/jit/backend/llsupport/assembler.py
@@ -192,8 +192,6 @@
             positions[i] = rffi.cast(rffi.USHORT, position)
         # write down the positions of locs
         guardtok.faildescr.rd_locs = positions
-        # we want the descr to keep alive
-        guardtok.faildescr.rd_loop_token = self.current_clt
         return fail_descr, target
 
     def call_assembler(self, op, guard_op, argloc, vloc, result_loc, tmploc):
diff --git a/rpython/jit/metainterp/compile.py 
b/rpython/jit/metainterp/compile.py
--- a/rpython/jit/metainterp/compile.py
+++ b/rpython/jit/metainterp/compile.py
@@ -66,8 +66,8 @@
     for op in loop.operations:
         descr = op.getdescr()
         # not sure what descr.index is about
-        #if isinstance(descr, ResumeDescr):
-            #descr.wref_original_loop_token = wref   # stick it there
+        if isinstance(descr, ResumeDescr):
+            descr.rd_loop_token = original_jitcell_token   # stick it there
             #n = descr.index
             #if n >= 0:       # we also record the resumedescr number
             #    
original_jitcell_token.compiled_loop_token.record_faildescr_index(n)
diff --git a/rpython/jit/metainterp/pyjitpl.py 
b/rpython/jit/metainterp/pyjitpl.py
--- a/rpython/jit/metainterp/pyjitpl.py
+++ b/rpython/jit/metainterp/pyjitpl.py
@@ -2171,7 +2171,7 @@
         # store the resumekey.wref_original_loop_token() on 'self' to make
         # sure that it stays alive as long as this MetaInterp
         # XXXX this is stored these days via rd_loop_token on resumedescr
-        self.resumekey_original_loop_token = key.rd_loop
+        self.resumekey_original_loop_token = key.rd_loop_token
         self.staticdata.try_to_free_some_loops()
         self.initialize_state_from_guard_failure(key, deadframe)
         try:
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to