[pypy-commit] pypy s390x-backend: reordered free registers and force result in register (wrong order double loaded values already in a register)
plan_rich
noreply at buildbot.pypy.org
Wed Nov 4 08:20:06 EST 2015
Author: Richard Plangger <planrichi at 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]
More information about the pypy-commit
mailing list