Author: David Schneider <[email protected]>
Branch: emit-call-arm
Changeset: r64535:03316d2756f3
Date: 2013-05-24 11:50 +0200
http://bitbucket.org/pypy/pypy/changeset/03316d2756f3/
Log: make this check stricter for soft-float and move the function
address to another register whenever it is stored in a register used
for arguments, as it might get overwritten later by a float copied
to such a register.
diff --git a/rpython/jit/backend/arm/callbuilder.py
b/rpython/jit/backend/arm/callbuilder.py
--- a/rpython/jit/backend/arm/callbuilder.py
+++ b/rpython/jit/backend/arm/callbuilder.py
@@ -213,7 +213,7 @@
# or on the stack, which we can not access later
# If this happens to be the case we remap the register to r4 and use r4
# to call the function
- if self.fnloc in non_float_regs or self.fnloc.is_stack():
+ if self.fnloc in r.argument_regs or self.fnloc.is_stack():
non_float_locs.append(self.fnloc)
non_float_regs.append(r.r4)
self.fnloc = r.r4
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit