[pypy-commit] pypy ppc-jit-backend: (edelsohn, hager): Some experiments in _gen_exit_path

hager noreply at buildbot.pypy.org
Tue Nov 8 20:26:06 CET 2011


Author: hager <sven.hager at uni-duesseldorf.de>
Branch: ppc-jit-backend
Changeset: r48970:83e046a36db5
Date: 2011-11-08 11:25 -0800
http://bitbucket.org/pypy/pypy/changeset/83e046a36db5/

Log:	(edelsohn, hager): Some experiments in _gen_exit_path

diff --git a/pypy/jit/backend/ppc/ppcgen/ppc_assembler.py b/pypy/jit/backend/ppc/ppcgen/ppc_assembler.py
--- a/pypy/jit/backend/ppc/ppcgen/ppc_assembler.py
+++ b/pypy/jit/backend/ppc/ppcgen/ppc_assembler.py
@@ -306,15 +306,20 @@
             intp = lltype.Ptr(lltype.Array(lltype.Signed, hints={'nolength': True}))
             descr = rffi.cast(intp, decode_func_addr)
             addr = descr[0]
+            r11_value = descr[2]
 
         #
         # load parameters into parameter registers
-        mc.lwz(r.r3.value, r.SPP.value, 0)     # address of state encoding 
+        if IS_PPC_32:
+            mc.lwz(r.r3.value, r.SPP.value, 0)     # address of state encoding 
+        else:
+            mc.lwz(r.r3.value, r.SPP.value, 0)     # address of state encoding 
         mc.mr(r.r4.value, r.SP.value)          # load stack pointer
         mc.mr(r.r5.value, r.SPP.value)         # load spilling pointer
         #
         # load address of decoding function into r0
         mc.load_imm(r.r0, addr)
+        mc.load_imm(r.r11, r11_value)
         # ... and branch there
         mc.mtctr(r.r0.value)
         mc.bctrl()


More information about the pypy-commit mailing list