Author: Richard Plangger <[email protected]>
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):
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit