Author: Richard Plangger <planri...@gmail.com> Branch: s390x-backend Changeset: r80537:094ee6d25c63 Date: 2015-11-04 14:20 +0100 http://bitbucket.org/pypy/pypy/changeset/094ee6d25c63/
Log: reordered free registers and force result in register (wrong order double loaded values already in a register) diff --git a/rpython/jit/backend/zarch/helper/regalloc.py b/rpython/jit/backend/zarch/helper/regalloc.py --- a/rpython/jit/backend/zarch/helper/regalloc.py +++ b/rpython/jit/backend/zarch/helper/regalloc.py @@ -17,8 +17,8 @@ l1 = imm(a1.getint()) else: l1 = self.ensure_reg(a1) + self.force_result_in_reg(op, a0) self.free_op_vars() - self.force_result_in_reg(op, a0) return [l0, l1] def prepare_int_sub(self, op): @@ -28,8 +28,8 @@ a0, a1 = a1, a0 l0 = self.ensure_reg(a0) l1 = self.ensure_reg(a1) + self.force_result_in_reg(op, a0) self.free_op_vars() - self.force_result_in_reg(op, a0) return [l0, l1] def prepare_cmp_op(self, op): @@ -42,8 +42,8 @@ l1 = imm(a1.getint()) else: l1 = self.ensure_reg(a1) + self.force_result_in_reg(op, a0) self.free_op_vars() - self.force_result_in_reg(op, a0) return [l0, l1] def prepare_binary_op(self, op): @@ -51,6 +51,6 @@ a1 = op.getarg(1) l0 = self.ensure_reg(a0) l1 = self.ensure_reg(a1) + self.force_result_in_reg(op, a0) self.free_op_vars() - self.force_result_in_reg(op, a0) return [l0, l1] _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit