[pypy-commit] pypy default: merge heads
arigo
noreply at buildbot.pypy.org
Mon Oct 31 17:49:30 CET 2011
Author: Armin Rigo <arigo at tunes.org>
Branch:
Changeset: r48627:55e0646208ca
Date: 2011-10-31 17:49 +0100
http://bitbucket.org/pypy/pypy/changeset/55e0646208ca/
Log: merge heads
diff --git a/pypy/jit/metainterp/test/test_ajit.py b/pypy/jit/metainterp/test/test_ajit.py
--- a/pypy/jit/metainterp/test/test_ajit.py
+++ b/pypy/jit/metainterp/test/test_ajit.py
@@ -3513,7 +3513,9 @@
def f(n):
while n > 0:
myjitdriver.jit_merge_point(n=n)
- n = g({"key": n})
+ x = {"key": n}
+ n = g(x)
+ del x["key"]
return n
res = self.meta_interp(f, [10])
diff --git a/pypy/rpython/lltypesystem/rdict.py b/pypy/rpython/lltypesystem/rdict.py
--- a/pypy/rpython/lltypesystem/rdict.py
+++ b/pypy/rpython/lltypesystem/rdict.py
@@ -492,8 +492,8 @@
_ll_dict_del(d, i)
# XXX: Move the size checking and resize into a single call which is opauqe to
-# the JIT to avoid extra branches.
- at jit.dont_look_inside
+# the JIT when the dict isn't virtual, to avoid extra branches.
+ at jit.look_inside_iff(lambda d, i: jit.isvirtual(d) and jit.isconstant(i))
def _ll_dict_del(d, i):
d.entries.mark_deleted(i)
d.num_items -= 1
More information about the pypy-commit
mailing list