[pypy-svn] r67475 - pypy/branch/no-recompilation/pypy/jit/backend/x86
pedronis at codespeak.net
pedronis at codespeak.net
Fri Sep 4 15:45:46 CEST 2009
Author: pedronis
Date: Fri Sep 4 15:45:45 2009
New Revision: 67475
Modified:
pypy/branch/no-recompilation/pypy/jit/backend/x86/assembler.py
Log:
(pedronis, arigo) force the LEA to be fixed sized so that it can be patched safely
Modified: pypy/branch/no-recompilation/pypy/jit/backend/x86/assembler.py
==============================================================================
--- pypy/branch/no-recompilation/pypy/jit/backend/x86/assembler.py (original)
+++ pypy/branch/no-recompilation/pypy/jit/backend/x86/assembler.py Fri Sep 4 15:45:45 2009
@@ -175,7 +175,7 @@
self.logger.log_operations
mc = self.mc._mc
adr_lea = mc.tell()
- mc.LEA(esp, addr_add(imm32(0), ebp, 0))
+ mc.LEA(esp, fixedsize_ebp_ofs(0))
regalloc._walk_operations(operations)
stack_depth = regalloc.max_stack_depth
self.mc.done()
@@ -186,8 +186,8 @@
else:
guard_op._x86_stack_depth = stack_depth
mc = codebuf.InMemoryCodeBuilder(adr_lea, adr_lea + 128)
- mc.LEA(esp, addr_add(imm32(0), ebp,
- -(stack_depth + RET_BP - 2) * WORD))
+
+ mc.LEA(esp, fixedsize_ebp_ofs(-(stack_depth + RET_BP - 2) * WORD))
mc.done()
if we_are_translated():
self._regalloc = None # else keep it around for debugging
More information about the Pypy-commit
mailing list