[pypy-svn] r69731 - in pypy/branch/virtual-forcing/pypy/jit: backend backend/llgraph metainterp

arigo at codespeak.net arigo at codespeak.net
Sun Nov 29 13:16:16 CET 2009


Author: arigo
Date: Sun Nov 29 13:16:14 2009
New Revision: 69731

Modified:
   pypy/branch/virtual-forcing/pypy/jit/backend/llgraph/runner.py
   pypy/branch/virtual-forcing/pypy/jit/backend/model.py
   pypy/branch/virtual-forcing/pypy/jit/metainterp/compile.py
   pypy/branch/virtual-forcing/pypy/jit/metainterp/resoperation.py
Log:
Translation fixes.


Modified: pypy/branch/virtual-forcing/pypy/jit/backend/llgraph/runner.py
==============================================================================
--- pypy/branch/virtual-forcing/pypy/jit/backend/llgraph/runner.py	(original)
+++ pypy/branch/virtual-forcing/pypy/jit/backend/llgraph/runner.py	Sun Nov 29 13:16:14 2009
@@ -100,6 +100,7 @@
         llimpl._stats = self.stats
         llimpl._llinterp = LLInterpreter(self.rtyper)
         self._future_values = []
+        self.latest_force_token = llmemory.NULL
 
     def _freeze_(self):
         assert self.translate_support_code

Modified: pypy/branch/virtual-forcing/pypy/jit/backend/model.py
==============================================================================
--- pypy/branch/virtual-forcing/pypy/jit/backend/model.py	(original)
+++ pypy/branch/virtual-forcing/pypy/jit/backend/model.py	Sun Nov 29 13:16:14 2009
@@ -211,6 +211,7 @@
         raise NotImplementedError
 
     def do_force_token(self):
+        # this should not be implemented at all by the backends
         raise NotImplementedError
 
     def do_call_may_force(self, args, calldescr):

Modified: pypy/branch/virtual-forcing/pypy/jit/metainterp/compile.py
==============================================================================
--- pypy/branch/virtual-forcing/pypy/jit/metainterp/compile.py	(original)
+++ pypy/branch/virtual-forcing/pypy/jit/metainterp/compile.py	Sun Nov 29 13:16:14 2009
@@ -266,7 +266,10 @@
 
     def fetch_data(self, key):
         globaldata = self.metainterp_sd.globaldata
-        return globaldata.resume_virtuals.pop(key)
+        assert key in globaldata.resume_virtuals
+        data = globaldata.resume_virtuals[key]
+        del globaldata.resume_virtuals[key]
+        return data
 
 
 class ResumeFromInterpDescr(ResumeDescr):

Modified: pypy/branch/virtual-forcing/pypy/jit/metainterp/resoperation.py
==============================================================================
--- pypy/branch/virtual-forcing/pypy/jit/metainterp/resoperation.py	(original)
+++ pypy/branch/virtual-forcing/pypy/jit/metainterp/resoperation.py	Sun Nov 29 13:16:14 2009
@@ -221,7 +221,7 @@
     'COND_CALL_GC_MALLOC',  # [a, b, if_(a<=b)_result, if_(a>b)_call, args...]
                             #        => result          (for mallocs)
     'DEBUG_MERGE_POINT/1',      # debugging only
-    'FORCE_TOKEN',
+    'FORCE_TOKEN/0',
 
     '_CANRAISE_FIRST', # ----- start of can_raise operations -----
     'CALL',



More information about the Pypy-commit mailing list