Author: David Schneider <[email protected]>
Branch: jitframe-on-heap
Changeset: r60691:95b4d5a70499
Date: 2013-01-29 16:55 +0100
http://bitbucket.org/pypy/pypy/changeset/95b4d5a70499/

Log:    change addressing of values now stored in the jitframe

diff --git a/rpython/jit/backend/arm/assembler.py 
b/rpython/jit/backend/arm/assembler.py
--- a/rpython/jit/backend/arm/assembler.py
+++ b/rpython/jit/backend/arm/assembler.py
@@ -975,13 +975,13 @@
             offset = loc.value
             if not check_imm_arg(offset, size=0xFFF):
                 self.mc.PUSH([temp.value], cond=cond)
-                self.mc.gen_load_int(temp.value, -offset, cond=cond)
+                self.mc.gen_load_int(temp.value, offset, cond=cond)
                 self.mc.STR_rr(prev_loc.value, r.fp.value,
                                             temp.value, cond=cond)
                 self.mc.POP([temp.value], cond=cond)
             else:
                 self.mc.STR_ri(prev_loc.value, r.fp.value,
-                                            imm=-offset, cond=cond)
+                                            imm=offset, cond=cond)
         else:
             assert 0, 'unsupported case'
 
@@ -1089,15 +1089,15 @@
             offset = vfp_loc.value
             if not check_imm_arg(offset, size=0xFFF):
                 self.mc.PUSH([r.ip.value], cond=cond)
-                self.mc.gen_load_int(r.ip.value, -offset, cond=cond)
+                self.mc.gen_load_int(r.ip.value, offset, cond=cond)
                 self.mc.LDR_rr(reg1.value, r.fp.value, r.ip.value, cond=cond)
                 self.mc.ADD_ri(r.ip.value, r.ip.value, imm=WORD, cond=cond)
                 self.mc.LDR_rr(reg2.value, r.fp.value, r.ip.value, cond=cond)
                 self.mc.POP([r.ip.value], cond=cond)
             else:
-                self.mc.LDR_ri(reg1.value, r.fp.value, imm=-offset, cond=cond)
+                self.mc.LDR_ri(reg1.value, r.fp.value, imm=offset, cond=cond)
                 self.mc.LDR_ri(reg2.value, r.fp.value,
-                                                imm=-offset + WORD, cond=cond)
+                                                imm=offset + WORD, cond=cond)
         else:
             assert 0, 'unsupported case'
 
@@ -1112,15 +1112,15 @@
             offset = vfp_loc.value
             if not check_imm_arg(offset, size=0xFFF):
                 self.mc.PUSH([r.ip.value], cond=cond)
-                self.mc.gen_load_int(r.ip.value, -offset, cond=cond)
+                self.mc.gen_load_int(r.ip.value, offset, cond=cond)
                 self.mc.STR_rr(reg1.value, r.fp.value, r.ip.value, cond=cond)
                 self.mc.ADD_ri(r.ip.value, r.ip.value, imm=WORD, cond=cond)
                 self.mc.STR_rr(reg2.value, r.fp.value, r.ip.value, cond=cond)
                 self.mc.POP([r.ip.value], cond=cond)
             else:
-                self.mc.STR_ri(reg1.value, r.fp.value, imm=-offset, cond=cond)
+                self.mc.STR_ri(reg1.value, r.fp.value, imm=offset, cond=cond)
                 self.mc.STR_ri(reg2.value, r.fp.value,
-                                                imm=-offset + WORD, cond=cond)
+                                                imm=offset + WORD, cond=cond)
         else:
             assert 0, 'unsupported case'
 
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to