[pypy-svn] r52785 - pypy/branch/jit-hotpath/pypy/module/pypyjit

arigo at codespeak.net arigo at codespeak.net
Thu Mar 20 18:34:56 CET 2008


Author: arigo
Date: Thu Mar 20 18:34:56 2008
New Revision: 52785

Modified:
   pypy/branch/jit-hotpath/pypy/module/pypyjit/interp_jit.py
Log:
(cfbolz, arigo)
Hint fixes for pypy-c.


Modified: pypy/branch/jit-hotpath/pypy/module/pypyjit/interp_jit.py
==============================================================================
--- pypy/branch/jit-hotpath/pypy/module/pypyjit/interp_jit.py	(original)
+++ pypy/branch/jit-hotpath/pypy/module/pypyjit/interp_jit.py	Thu Mar 20 18:34:56 2008
@@ -30,6 +30,7 @@
         # *loads* of nonsense for now
         frame = self.frame
         pycode = self.pycode
+        pycode = hint(pycode, promote=True)    # xxx workaround
         pycode = hint(pycode, deepfreeze=True)
 
         fastlocals_w = [None] * pycode.co_nlocals
@@ -70,12 +71,12 @@
 class __extend__(PyFrame):
 
     def dispatch(self, pycode, next_instr, ec):
-        pycode = hint(pycode, deepfreeze=True)
         next_instr = r_uint(next_instr)
         try:
             while True:
                 PyPyJitDriver.jit_merge_point(
                     frame=self, ec=ec, next_instr=next_instr, pycode=pycode)
+                pycode = hint(pycode, deepfreeze=True)
                 co_code = pycode.co_code
                 next_instr = self.handle_bytecode(co_code, next_instr, ec)
         except Return:



More information about the Pypy-commit mailing list