[pypy-commit] pypy ppc-jit-backend: Add PPC64 support for strlen

edelsohn noreply at buildbot.pypy.org
Tue Oct 25 22:36:53 CEST 2011


Author: edelsohn
Branch: ppc-jit-backend
Changeset: r48457:c58fa0a4d970
Date: 2011-10-25 16:36 -0400
http://bitbucket.org/pypy/pypy/changeset/c58fa0a4d970/

Log:	Add PPC64 support for strlen

diff --git a/pypy/jit/backend/ppc/ppcgen/opassembler.py b/pypy/jit/backend/ppc/ppcgen/opassembler.py
--- a/pypy/jit/backend/ppc/ppcgen/opassembler.py
+++ b/pypy/jit/backend/ppc/ppcgen/opassembler.py
@@ -384,9 +384,15 @@
     def emit_strlen(self, op, arglocs, regalloc):
         l0, l1, res = arglocs
         if l1.is_imm():
-            self.mc.lwz(res.value, l0.value, l1.getint())
+            if IS_PPC_32:
+                self.mc.lwz(res.value, l0.value, l1.getint())
+            else:
+                self.mc.ld(res.value, l0.value, l1.getint())
         else:
-            self.mc.lwzx(res.value, l0.value, l1.value)
+            if IS_PPC_32:
+                self.mc.lwzx(res.value, l0.value, l1.value)
+            else:
+                self.mc.ldx(res.value, l0.value, l1.value)
 
     def emit_strgetitem(self, op, arglocs, regalloc):
         res, base_loc, ofs_loc, basesize = arglocs


More information about the pypy-commit mailing list