[pypy-commit] pypy s390x-backend: finally, the indices for storing/restoring from a register where slightly off, which read garbage from the jitframe (floating point issues)
plan_rich
noreply at buildbot.pypy.org
Tue Nov 24 10:13:31 EST 2015
Author: Richard Plangger <planrichi at gmail.com>
Branch: s390x-backend
Changeset: r80885:c55975affb6c
Date: 2015-11-24 16:13 +0100
http://bitbucket.org/pypy/pypy/changeset/c55975affb6c/
Log: finally, the indices for storing/restoring from a register where
slightly off, which read garbage from the jitframe (floating point
issues)
diff --git a/rpython/jit/backend/zarch/assembler.py b/rpython/jit/backend/zarch/assembler.py
--- a/rpython/jit/backend/zarch/assembler.py
+++ b/rpython/jit/backend/zarch/assembler.py
@@ -595,6 +595,7 @@
self.mc.AGHI(r.SP, l.imm(-STD_FRAME_SIZE_IN_BYTES))
# save r4, the second argument, to THREADLOCAL_ADDR_OFFSET
+ # TODO
#self.mc.STG(r.r3, l.addr(THREADLOCAL_ADDR_OFFSET, r.SP))
# move the first argument to SPP: the jitframe object
diff --git a/rpython/jit/backend/zarch/regalloc.py b/rpython/jit/backend/zarch/regalloc.py
--- a/rpython/jit/backend/zarch/regalloc.py
+++ b/rpython/jit/backend/zarch/regalloc.py
@@ -309,7 +309,6 @@
self.base_ofs = base_ofs
def frame_pos(self, loc, box_type):
- #return l.StackLocation(loc, get_fp_offset(self.base_ofs, loc), box_type)
return l.StackLocation(loc, get_fp_offset(self.base_ofs, loc), box_type)
@staticmethod
diff --git a/rpython/jit/backend/zarch/runner.py b/rpython/jit/backend/zarch/runner.py
--- a/rpython/jit/backend/zarch/runner.py
+++ b/rpython/jit/backend/zarch/runner.py
@@ -27,7 +27,7 @@
all_reg_indexes = [-1] * 32
for _i, _r in enumerate(r.registers):
all_reg_indexes[_r.value] = _i
- gen_regs = r.MANAGED_REGS
+ gen_regs = r.registers
float_regs = r.MANAGED_FP_REGS
def setup(self):
More information about the pypy-commit
mailing list