Author: Maciej Fijalkowski <fij...@gmail.com> Branch: share-guard-info Changeset: r79753:19ab0b0ba9bb Date: 2015-09-22 11:14 +0200 http://bitbucket.org/pypy/pypy/changeset/19ab0b0ba9bb/
Log: more overflow implementations in blackhole diff --git a/rpython/jit/metainterp/blackhole.py b/rpython/jit/metainterp/blackhole.py --- a/rpython/jit/metainterp/blackhole.py +++ b/rpython/jit/metainterp/blackhole.py @@ -408,13 +408,19 @@ def bhimpl_int_mul(a, b): return intmask(a * b) - @arguments("i", "i", returns="i") - def bhimpl_int_add_ovf(a, b): - return ovfcheck(a + b) + @arguments("L", "i", "i", returns="iL") + def bhimpl_int_add_jump_if_ovf(label, a, b): + try: + return ovfcheck(a + b), -1 + except OverflowError: + return 0, label - @arguments("i", "i", returns="i") - def bhimpl_int_sub_ovf(a, b): - return ovfcheck(a - b) + @arguments("L", "i", "i", returns="iL") + def bhimpl_int_sub_jump_if_ovf(label, a, b): + try: + return ovfcheck(a - b), -1 + except OverflowError: + return 0, label @arguments("L", "i", "i", returns="iL") def bhimpl_int_mul_jump_if_ovf(label, a, b): _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit