Author: Carl Friedrich Bolz <cfb...@gmx.de> Branch: int-tag-untag-as-operations Changeset: r48368:766299f6042c Date: 2011-10-24 09:01 +0200 http://bitbucket.org/pypy/pypy/changeset/766299f6042c/
Log: rename the operation to int_tag_ovf diff --git a/pypy/jit/backend/llgraph/llimpl.py b/pypy/jit/backend/llgraph/llimpl.py --- a/pypy/jit/backend/llgraph/llimpl.py +++ b/pypy/jit/backend/llgraph/llimpl.py @@ -692,7 +692,7 @@ if not flag: raise GuardFailed - def op_int_tag(self, _, x): + def op_int_tag_ovf(self, _, x): try: z = ovfcheck(x << 1) + 1 except OverflowError: diff --git a/pypy/jit/codewriter/jtransform.py b/pypy/jit/codewriter/jtransform.py --- a/pypy/jit/codewriter/jtransform.py +++ b/pypy/jit/codewriter/jtransform.py @@ -269,7 +269,7 @@ op1 = SpaceOperation('-live-', [], None) return [op, op1] - def rewrite_op_int_tag(self, op): + def rewrite_op_int_tag_ovf(self, op): op1 = SpaceOperation('-live-', [], None) return [op, op1] diff --git a/pypy/jit/metainterp/blackhole.py b/pypy/jit/metainterp/blackhole.py --- a/pypy/jit/metainterp/blackhole.py +++ b/pypy/jit/metainterp/blackhole.py @@ -451,7 +451,7 @@ def bhimpl_int_untag(a): return a >> 1 @arguments("i", returns="i") - def bhimpl_int_tag(a): + def bhimpl_int_tag_ovf(a): return ovfcheck(a << 1) + 1 diff --git a/pypy/jit/metainterp/executor.py b/pypy/jit/metainterp/executor.py --- a/pypy/jit/metainterp/executor.py +++ b/pypy/jit/metainterp/executor.py @@ -204,7 +204,7 @@ z = 0 return BoxInt(z) -def do_int_tag(cpu, metainterp, box1): +def do_int_tag_ovf(cpu, metainterp, box1): # the overflow operations can be called without a metainterp, if an # overflow cannot occur a = box1.getint() diff --git a/pypy/jit/metainterp/optimizeopt/intbounds.py b/pypy/jit/metainterp/optimizeopt/intbounds.py --- a/pypy/jit/metainterp/optimizeopt/intbounds.py +++ b/pypy/jit/metainterp/optimizeopt/intbounds.py @@ -285,7 +285,7 @@ else: self.emit_operation(op) - def optimize_INT_TAG(self, op): + def optimize_INT_TAG_OVF(self, op): self.emit_operation(op) # XXX for now v1 = self.getvalue(op.getarg(0)) r = self.getvalue(op.result) diff --git a/pypy/jit/metainterp/optimizeopt/test/test_optimizeopt.py b/pypy/jit/metainterp/optimizeopt/test/test_optimizeopt.py --- a/pypy/jit/metainterp/optimizeopt/test/test_optimizeopt.py +++ b/pypy/jit/metainterp/optimizeopt/test/test_optimizeopt.py @@ -5077,7 +5077,7 @@ def test_int_tag_untag_reverses(self): ops = """ [i0] - i1 = int_tag(i0) + i1 = int_tag_ovf(i0) guard_no_overflow() [] i2 = int_untag(i1) i3 = int_add(i2, 1) @@ -5085,7 +5085,7 @@ """ expected = """ [i0] - i1 = int_tag(i0) + i1 = int_tag_ovf(i0) guard_no_overflow() [] i2 = int_add(i0, 1) jump(i2) @@ -5094,7 +5094,7 @@ ops = """ [i0] i1 = int_untag(i0) - i2 = int_tag(i1) + i2 = int_tag_ovf(i1) guard_no_overflow() [] i3 = int_untag(i2) i4 = int_add(i3, 1) @@ -5111,7 +5111,7 @@ def test_int_tag_remove_overflow_checking(self): ops = """ [i0] - i2 = int_tag(i0) + i2 = int_tag_ovf(i0) guard_no_overflow() [] i3 = int_untag(i2) i4 = int_add_ovf(i3, 1) @@ -5120,14 +5120,14 @@ """ expected = """ [i0] - i2 = int_tag(i0) + i2 = int_tag_ovf(i0) guard_no_overflow() [] i3 = int_add(i0, 1) jump(i3) """ preamble = """ [i0] - i2 = int_tag(i0) + i2 = int_tag_ovf(i0) guard_no_overflow() [] i3 = int_add(i0, 1) jump(i3) diff --git a/pypy/jit/metainterp/pyjitpl.py b/pypy/jit/metainterp/pyjitpl.py --- a/pypy/jit/metainterp/pyjitpl.py +++ b/pypy/jit/metainterp/pyjitpl.py @@ -231,9 +231,9 @@ ''' % (_opimpl, _opimpl.upper())).compile() @arguments("box") - def opimpl_int_tag(self, b1): + def opimpl_int_tag_ovf(self, b1): self.metainterp.clear_exception() - resbox = self.execute(rop.INT_TAG, b1) + resbox = self.execute(rop.INT_TAG_OVF, b1) self.make_result_of_lastop(resbox) if not isinstance(resbox, Const): self.metainterp.handle_possible_overflow_error() diff --git a/pypy/jit/metainterp/resoperation.py b/pypy/jit/metainterp/resoperation.py --- a/pypy/jit/metainterp/resoperation.py +++ b/pypy/jit/metainterp/resoperation.py @@ -505,7 +505,7 @@ 'INT_ADD_OVF/2', 'INT_SUB_OVF/2', 'INT_MUL_OVF/2', - 'INT_TAG/1', + 'INT_TAG_OVF/1', '_OVF_LAST', # ----- end of is_ovf operations ----- '_LAST', # for the backend to add more internal operations ] diff --git a/pypy/rlib/rerased.py b/pypy/rlib/rerased.py --- a/pypy/rlib/rerased.py +++ b/pypy/rlib/rerased.py @@ -220,7 +220,7 @@ [v_value] = hop.inputargs(lltype.Signed) c_one = hop.inputconst(lltype.Signed, 1) hop.exception_is_here() - v2 = hop.genop('int_tag', [v_value], + v2 = hop.genop('int_tag_ovf', [v_value], resulttype = lltype.Signed) v_instance = hop.genop('cast_int_to_ptr', [v2], resulttype=self.lowleveltype) diff --git a/pypy/rpython/llinterp.py b/pypy/rpython/llinterp.py --- a/pypy/rpython/llinterp.py +++ b/pypy/rpython/llinterp.py @@ -1095,7 +1095,7 @@ assert y >= 0 return self.op_int_add_ovf(x, y) - def op_int_tag(self, x): + def op_int_tag_ovf(self, x): try: return ovfcheck(x + x + 1) except OverflowError: diff --git a/pypy/rpython/lltypesystem/lloperation.py b/pypy/rpython/lltypesystem/lloperation.py --- a/pypy/rpython/lltypesystem/lloperation.py +++ b/pypy/rpython/lltypesystem/lloperation.py @@ -207,7 +207,7 @@ 'int_abs': LLOp(canfold=True), 'int_abs_ovf': LLOp(canraise=(OverflowError,), tryfold=True), 'int_invert': LLOp(canfold=True), - 'int_tag': LLOp(canraise=(OverflowError, ), tryfold=True), + 'int_tag_ovf': LLOp(canraise=(OverflowError, ), tryfold=True), 'int_untag': LLOp(canfold=True), 'int_add': LLOp(canfold=True), diff --git a/pypy/translator/c/src/int.h b/pypy/translator/c/src/int.h --- a/pypy/translator/c/src/int.h +++ b/pypy/translator/c/src/int.h @@ -19,11 +19,10 @@ if ((x) == LONG_MIN) FAIL_OVF("integer absolute"); \ OP_INT_ABS(x,r) -#define OP_INT_TAG(x, r) \ +#define OP_INT_TAG_OVF(x, r) \ r = (long)((unsigned long)x << 1); \ if ((r ^ x) < 0) FAIL_OVF("integer tagging"); \ r = r + 1 - #define OP_INT_UNTAG(x, r) \ r = x >> 1 _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit