[pypy-commit] pypy default: (arigo, bivab): simple fix for a hard to track issue. When compiling a label we
bivab
noreply at buildbot.pypy.org
Wed Jun 12 13:10:55 CEST 2013
Author: David Schneider <david.schneider at picle.org>
Branch:
Changeset: r64865:4283f7772bc0
Date: 2013-06-12 06:05 -0500
http://bitbucket.org/pypy/pypy/changeset/4283f7772bc0/
Log: (arigo, bivab): simple fix for a hard to track issue. When compiling
a label we were keeping the stacklocation of prevously spilled
floats that were loaded in a reg when we hit the label. When jumping
from somewehere else to the label the float value in the register is
forgotten, because it is assumed to be on the stack too.
diff --git a/rpython/jit/backend/arm/regalloc.py b/rpython/jit/backend/arm/regalloc.py
--- a/rpython/jit/backend/arm/regalloc.py
+++ b/rpython/jit/backend/arm/regalloc.py
@@ -1154,7 +1154,7 @@
assert isinstance(arg, Box)
loc = self.loc(arg)
arglocs[i] = loc
- if loc.is_core_reg():
+ if loc.is_core_reg() or loc.is_vfp_reg():
self.frame_manager.mark_as_free(arg)
#
descr._arm_arglocs = arglocs
More information about the pypy-commit
mailing list