[pypy-commit] pypy guard-compatible: ah bah, accidentally swapped rax and rdx

arigo pypy.commits at gmail.com
Mon May 23 06:32:48 EDT 2016


Author: Armin Rigo <arigo at tunes.org>
Branch: guard-compatible
Changeset: r84620:01fb4f0d6720
Date: 2016-05-23 12:33 +0200
http://bitbucket.org/pypy/pypy/changeset/01fb4f0d6720/

Log:	ah bah, accidentally swapped rax and rdx

diff --git a/rpython/jit/backend/x86/guard_compat.py b/rpython/jit/backend/x86/guard_compat.py
--- a/rpython/jit/backend/x86/guard_compat.py
+++ b/rpython/jit/backend/x86/guard_compat.py
@@ -419,10 +419,10 @@
 
     # read and pop the original RAX and RDX off the stack
     base_ofs = assembler.cpu.get_baseofs_of_frame_field()
+    v = gpr_reg_mgr_cls.all_reg_indexes[rax]
+    mc.POP_b(v * WORD + base_ofs)           # POP [RBP + saved_rax]
     v = gpr_reg_mgr_cls.all_reg_indexes[rdx]
     mc.POP_b(v * WORD + base_ofs)           # POP [RBP + saved_rdx]
-    v = gpr_reg_mgr_cls.all_reg_indexes[rax]
-    mc.POP_b(v * WORD + base_ofs)           # POP [RBP + saved_rax]
     # save all other registers to the jitframe RBP
     assembler._push_all_regs_to_frame(mc, [regloc.eax, regloc.edx],
                                       withfloats=True)


More information about the pypy-commit mailing list