[pypy-svn] pypy arm-backend-2: generate code to set the SP at a position where it is executed before the frame is used

bivab commits-noreply at bitbucket.org
Tue Feb 22 18:45:33 CET 2011


Author: David Schneider <david.schneider at picle.org>
Branch: arm-backend-2
Changeset: r42218:774fcb133e04
Date: 2011-02-22 18:29 +0100
http://bitbucket.org/pypy/pypy/changeset/774fcb133e04/

Log:	generate code to set the SP at a position where it is executed
	before the frame is used

diff --git a/pypy/jit/backend/arm/assembler.py b/pypy/jit/backend/arm/assembler.py
--- a/pypy/jit/backend/arm/assembler.py
+++ b/pypy/jit/backend/arm/assembler.py
@@ -371,8 +371,8 @@
 
         self.align()
         self.gen_func_prolog()
+        sp_patch_location = self._prepare_sp_patch_position()
         arglocs = self.gen_bootstrap_code(inputargs, regalloc, looptoken)
-        sp_patch_location = self._prepare_sp_patch_position()
 
         loop_head = self.mc.currpos()
 
@@ -411,8 +411,8 @@
 
         frame_depth = faildescr._arm_frame_depth
         locs = self.decode_inputargs(enc, inputargs, regalloc)
+        sp_patch_location = self._prepare_sp_patch_position()
         regalloc.update_bindings(locs, frame_depth, inputargs)
-        sp_patch_location = self._prepare_sp_patch_position()
 
         self._walk_operations(operations, regalloc)
 


More information about the Pypy-commit mailing list