[pypy-svn] r68078 - pypy/branch/floats-via-sse2/pypy/jit/backend/x86
fijal at codespeak.net
fijal at codespeak.net
Thu Oct 1 00:41:21 CEST 2009
Author: fijal
Date: Thu Oct 1 00:41:20 2009
New Revision: 68078
Modified:
pypy/branch/floats-via-sse2/pypy/jit/backend/x86/assembler.py
Log:
We use WORD for smaller stuff than WORD
Modified: pypy/branch/floats-via-sse2/pypy/jit/backend/x86/assembler.py
==============================================================================
--- pypy/branch/floats-via-sse2/pypy/jit/backend/x86/assembler.py (original)
+++ pypy/branch/floats-via-sse2/pypy/jit/backend/x86/assembler.py Thu Oct 1 00:41:20 2009
@@ -791,7 +791,7 @@
self.mc.MOVSD(mem64(esp, p), loc)
else:
self.mc.MOV(mem(esp, p), loc)
- p += loc.width
+ p += round_up_to_4(loc.width)
p = 0
for i in range(2, nargs + 2):
loc = arglocs[i]
@@ -802,7 +802,7 @@
else:
self.mc.MOV(tmp, loc)
self.mc.MOV(mem(esp, p), tmp)
- p += loc.width
+ p += round_up_to_4(loc.width)
self.mc.CALL(x)
self.mark_gc_roots()
self.mc.ADD(esp, imm(WORD * extra_on_stack))
@@ -920,3 +920,8 @@
return heap(reg_or_imm1.value + offset)
else:
return mem(reg_or_imm1, offset)
+
+def round_up_to_4(size):
+ if size < 4:
+ return 4
+ return size
More information about the Pypy-commit
mailing list