Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r61282:9ef3899846ea Date: 2013-02-15 18:22 +0000 http://bitbucket.org/pypy/pypy/changeset/9ef3899846ea/
Log: merge heads diff --git a/rpython/rlib/jit.py b/rpython/rlib/jit.py --- a/rpython/rlib/jit.py +++ b/rpython/rlib/jit.py @@ -476,7 +476,7 @@ get_jitcell_at=None, set_jitcell_at=None, get_printable_location=None, confirm_enter_jit=None, can_never_inline=None, should_unroll_one_iteration=None, - name='jitdriver'): + name='jitdriver', check_untranslated=True): if greens is not None: self.greens = greens self.name = name @@ -511,6 +511,7 @@ self.confirm_enter_jit = confirm_enter_jit self.can_never_inline = can_never_inline self.should_unroll_one_iteration = should_unroll_one_iteration + self.check_untranslated = check_untranslated def _freeze_(self): return True @@ -565,13 +566,15 @@ def jit_merge_point(_self, **livevars): # special-cased by ExtRegistryEntry - _self._check_arguments(livevars) + if _self.check_untranslated: + _self._check_arguments(livevars) def can_enter_jit(_self, **livevars): if _self.autoreds: raise TypeError, "Cannot call can_enter_jit on a driver with reds='auto'" # special-cased by ExtRegistryEntry - _self._check_arguments(livevars) + if _self.check_untranslated: + _self._check_arguments(livevars) def loop_header(self): # special-cased by ExtRegistryEntry diff --git a/rpython/rtyper/lltypesystem/rlist.py b/rpython/rtyper/lltypesystem/rlist.py --- a/rpython/rtyper/lltypesystem/rlist.py +++ b/rpython/rtyper/lltypesystem/rlist.py @@ -246,6 +246,7 @@ of the list to be 'newsize'.""" _ll_list_resize_really(l, newsize, False) + @jit.look_inside_iff(lambda l, newsize: jit.isconstant(len(l.items)) and jit.isconstant(newsize)) @jit.oopspec("list._resize_ge(l, newsize)") def _ll_list_resize_ge(l, newsize): _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit