Author: Armin Rigo <ar...@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. -@jit.dont_look_inside +# the JIT when the dict isn't virtual, to avoid extra branches. +@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 _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit