[pypy-commit] pypy store-sink-array: Remove the virtualizable hints from there. With store-sink-array,

arigo noreply at buildbot.pypy.org
Tue Jun 21 18:24:34 CEST 2011


Author: Armin Rigo <arigo at tunes.org>
Branch: store-sink-array
Changeset: r45036:c935f106ada1
Date: 2011-06-21 16:51 +0200
http://bitbucket.org/pypy/pypy/changeset/c935f106ada1/

Log:	Remove the virtualizable hints from there. With store-sink-array,
	we get an almost as good effect for free (and I think that getting
	an effect that is exactly as good is a matter of fixing a few things
	in the metainterp).

diff --git a/pypy/jit/tl/tla/tla.py b/pypy/jit/tl/tla/tla.py
--- a/pypy/jit/tl/tla/tla.py
+++ b/pypy/jit/tl/tla/tla.py
@@ -1,5 +1,5 @@
 
-from pypy.rlib.jit import JitDriver
+from pypy.rlib.jit import JitDriver, hint
 
 
 class W_Object:
@@ -76,12 +76,9 @@
 
 jitdriver = JitDriver(greens=['pc', 'bytecode'],
                       reds=['self'],
-                      virtualizables=['self'],
                       get_printable_location=get_printable_location)
 
 class Frame(object):
-    _virtualizable2_ = ['stackpos', 'stack[*]']
-    
     def __init__(self, bytecode):
         self.bytecode = bytecode
         self.stack = [None] * 8
@@ -105,6 +102,8 @@
 
         while pc < len(bytecode):
             jitdriver.jit_merge_point(bytecode=bytecode, pc=pc, self=self)
+            self.stackpos = hint(self.stackpos, promote=True)
+
             opcode = ord(bytecode[pc])
             pc += 1
 


More information about the pypy-commit mailing list