Author: David Schneider <[email protected]>
Branch: arm-backend-2
Changeset: r56754:7b42a32154a4
Date: 2012-08-18 10:48 +0200
http://bitbucket.org/pypy/pypy/changeset/7b42a32154a4/

Log:    fix for get/set arrayitem

diff --git a/pypy/jit/backend/arm/opassembler.py 
b/pypy/jit/backend/arm/opassembler.py
--- a/pypy/jit/backend/arm/opassembler.py
+++ b/pypy/jit/backend/arm/opassembler.py
@@ -849,8 +849,8 @@
         value_loc, base_loc, ofs_loc, scale, ofs = arglocs
         assert ofs_loc.is_reg()
         if scale.value > 0:
+            self.mc.LSL_ri(r.ip.value, ofs_loc.value, scale.value)
             ofs_loc = r.ip
-            self.mc.LSL_ri(r.ip.value, ofs_loc.value, scale.value)
 
         # add the base offset
         if ofs.value > 0:
@@ -892,8 +892,8 @@
 
         # scale the offset as required
         if scale.value > 0:
+            self.mc.LSL_ri(r.ip.value, ofs_loc.value, scale.value)
             ofs_loc = r.ip
-            self.mc.LSL_ri(r.ip.value, ofs_loc.value, scale.value)
         # add the base offset
         if ofs.value > 0:
             self.mc.ADD_ri(r.ip.value, ofs_loc.value, imm=ofs.value)
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to