Author: Maciej Fijalkowski <[email protected]>
Branch: share-guard-info
Changeset: r79677:e05368eee9dd
Date: 2015-09-17 19:46 +0200
http://bitbucket.org/pypy/pypy/changeset/e05368eee9dd/

Log:    fix rpython again

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
@@ -696,6 +696,9 @@
 
     status = r_uint(0)
 
+    def get_origin_data(self):
+        return self.rd_origin_jitcode, self.rd_origin_pc
+
     def copy_all_attributes_from(self, other):
         assert isinstance(other, ResumeGuardDescr)
         self.rd_count = other.rd_count
@@ -1000,12 +1003,12 @@
     return resumedescr
 
 class ResumeFromInterpDescr(ResumeDescr):
-    rd_origin_jitcode = None
-    rd_origin_pc = 0
-    
     def __init__(self, original_greenkey):
         self.original_greenkey = original_greenkey
 
+    def get_origin_data(self):
+        return None, 0
+
     def compile_and_attach(self, metainterp, new_loop, orig_inputargs):
         # We managed to create a bridge going from the interpreter
         # to previously-compiled code.  We keep 'new_loop', which is not
@@ -1051,19 +1054,20 @@
 
     call_pure_results = metainterp.call_pure_results
 
+    origin_jitcode, origin_pc = resumekey.get_origin_data()
     if operations[-1].getopnum() == rop.JUMP:
         data = BridgeCompileData(label, operations[:],
                                  call_pure_results=call_pure_results,
                                  enable_opts=enable_opts,
                                  inline_short_preamble=inline_short_preamble,
-                                 origin_jitcode=resumekey.rd_origin_jitcode,
-                                 origin_pc=resumekey.rd_origin_pc)
+                                 origin_jitcode=origin_jitcode,
+                                 origin_pc=origin_pc)
     else:
         data = SimpleCompileData(label, operations[:],
                                  call_pure_results=call_pure_results,
                                  enable_opts=enable_opts,
-                                 origin_jitcode=resumekey.rd_origin_jitcode,
-                                 origin_pc=resumekey.rd_origin_pc)
+                                 origin_jitcode=origin_jitcode,
+                                 origin_pc=origin_pc)
     try:
         info, newops = optimize_trace(metainterp_sd, jitdriver_sd,
                                       data, metainterp.box_names_memo)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to