[pypy-svn] pypy jit-fromstart: some interned support
hakanardo
commits-noreply at bitbucket.org
Wed Feb 2 08:20:51 CET 2011
Author: Hakan Ardo <hakan at debian.org>
Branch: jit-fromstart
Changeset: r41535:2a2796f9b086
Date: 2011-02-02 06:59 +0100
http://bitbucket.org/pypy/pypy/changeset/2a2796f9b086/
Log: some interned support
diff --git a/pypy/jit/metainterp/optimizeopt/optimizer.py b/pypy/jit/metainterp/optimizeopt/optimizer.py
--- a/pypy/jit/metainterp/optimizeopt/optimizer.py
+++ b/pypy/jit/metainterp/optimizeopt/optimizer.py
@@ -353,8 +353,17 @@
assert self.posponedop is None
+ for value in valuemap.values():
+ box = value.get_key_box()
+ assert box is new.getinterned(box)
+ try:
+ assert new.values[box] == value
+ except KeyError:
+ new.values[box] = value
+
for box in surviving_boxes:
v = self.getvalue(box)
+ box = new.getinterned(box)
new.values[box] = v.get_reconstructed(new, valuemap)
return new
More information about the Pypy-commit
mailing list