1. Pypy
  2. Untitled project
  3. pypy

Commits

Maciej Fijalkowski  committed 6dd2630

more 32bit fixes

  • Participants
  • Parent commits 3cd3389
  • Branches jitframe-on-heap

Comments (0)

Files changed (3)

File rpython/jit/backend/llsupport/rewrite.py

View file
  • Ignore whitespace
         index = self.cpu.getarryoffset_for_frame()	
         for i, arg in enumerate(arglist):
             descr = self.cpu.getarraydescr_for_frame(arg.type)
-            self.newops.append(ResOperation(rop.SETARRAYITEM_GC,
-                                            [frame, ConstInt(index), arg],
-                                            None, descr))
             if WORD == 4 and type == history.FLOAT:
+                self.newops.append(ResOperation(rop.SETARRAYITEM_GC,
+                                                [frame, ConstInt(index // 2),
+                                                 arg],
+                                                None, descr))
                 index += 2
             else:
+                self.newops.append(ResOperation(rop.SETARRAYITEM_GC,
+                                                [frame, ConstInt(index),
+                                                 arg],
+                                                None, descr))
                 index += 1
         descr = op.getdescr()
         assert isinstance(descr, JitCellToken)

File rpython/jit/backend/x86/assembler.py

View file
  • Ignore whitespace
                     stack_depth += 2
                 else:
                     stack_depth += 1
-            stack_depth += loc.get_width()
+            stack_depth += loc.get_width() // WORD
         if stack_depth > PASS_ON_MY_FRAME:
             stack_depth = align_stack_words(stack_depth)
             align = (stack_depth - PASS_ON_MY_FRAME)

File rpython/jit/backend/x86/runner.py

View file
  • Ignore whitespace
             return 1000
 
     def getarryoffset_for_frame(self):
-	return JITFRAME_FIXED_SIZE
+        return JITFRAME_FIXED_SIZE
 
     def setup(self):
         self.assembler = Assembler386(self, self.translate_support_code)