[pypy-svn] r72875 - in pypy/trunk/pypy: interpreter module/pypyjit

benjamin at codespeak.net benjamin at codespeak.net
Fri Mar 26 04:18:32 CET 2010


Author: benjamin
Date: Fri Mar 26 04:18:30 2010
New Revision: 72875

Modified:
   pypy/trunk/pypy/interpreter/pyopcode.py
   pypy/trunk/pypy/module/pypyjit/interp_jit.py
Log:
re add JUMP_ABSOLUTE special ec argument

Modified: pypy/trunk/pypy/interpreter/pyopcode.py
==============================================================================
--- pypy/trunk/pypy/interpreter/pyopcode.py	(original)
+++ pypy/trunk/pypy/interpreter/pyopcode.py	Fri Mar 26 04:18:30 2010
@@ -206,6 +206,10 @@
                 next_instr += 3
                 oparg = (oparg << 16) | (hi << 8) | lo
 
+            if opcode == opcodedesc.JUMP_ABSOLUTE.index:
+                # Special case for the JIT
+                return self.jump_absolute(oparg, next_instr, ec)
+
             if we_are_translated():
                 from pypy.rlib import rstack # for resume points
 
@@ -790,7 +794,7 @@
                                   self.space.str_w(w_name))
         self.pushvalue(w_obj)
 
-    def JUMP_ABSOLUTE(self, jumpto, next_instr):
+    def jump_absolute(self, jumpto, next_instr, ec):
         return jumpto
 
     def JUMP_FORWARD(self, jumpby, next_instr):

Modified: pypy/trunk/pypy/module/pypyjit/interp_jit.py
==============================================================================
--- pypy/trunk/pypy/module/pypyjit/interp_jit.py	(original)
+++ pypy/trunk/pypy/module/pypyjit/interp_jit.py	Fri Mar 26 04:18:30 2010
@@ -78,7 +78,7 @@
         except ExitFrame:
             return self.popvalue()
 
-    def JUMP_ABSOLUTE(f, jumpto, _, ec=None):
+    def jump_absolute(self, jumpto, _, ec=None):
         if we_are_jitted():
             f.last_instr = intmask(jumpto)
             ec.bytecode_trace(f)



More information about the Pypy-commit mailing list