Author: Maciej Fijalkowski <[email protected]>
Branch: fast-slowpath
Changeset: r65710:6f0c3308111a
Date: 2013-07-27 14:53 +0200
http://bitbucket.org/pypy/pypy/changeset/6f0c3308111a/

Log:    argh. Fix an obvious bug in asmgcc handling

diff --git a/rpython/jit/backend/x86/assembler.py 
b/rpython/jit/backend/x86/assembler.py
--- a/rpython/jit/backend/x86/assembler.py
+++ b/rpython/jit/backend/x86/assembler.py
@@ -157,12 +157,13 @@
         self._push_all_regs_to_frame(mc, [], supports_floats, callee_only)
         if IS_X86_64:
             mc.SUB(esp, imm(WORD))
+            self.set_extra_stack_depth(mc, 2 * WORD)
         else:
             # we want space for 3 arguments + call + alignment
             # the caller is responsible for putting arguments in the right spot
             mc.SUB(esp, imm(WORD * 7))
-        self.set_extra_stack_depth(mc, 2 * WORD)
-        # args are in their respective positions
+            self.set_extra_stack_depth(mc, 8 * WORD)
+            # args are in their respective positions
         mc.CALL(eax)
         if IS_X86_64:
             mc.ADD(esp, imm(WORD))
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to