Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r73200:8192749d7069 Date: 2014-08-30 09:29 +0200 http://bitbucket.org/pypy/pypy/changeset/8192749d7069/
Log: Bug fix for arm 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 @@ -7,7 +7,7 @@ from rpython.jit.backend.arm.arch import (WORD, DOUBLE_WORD, FUNC_ALIGN, JITFRAME_FIXED_SIZE) from rpython.jit.backend.arm.codebuilder import InstrBuilder, OverwritingBuilder -from rpython.jit.backend.arm.locations import imm, StackLocation +from rpython.jit.backend.arm.locations import imm, StackLocation, get_fp_offset from rpython.jit.backend.arm.helper.regalloc import VMEM_imm_size from rpython.jit.backend.arm.opassembler import ResOpAssembler from rpython.jit.backend.arm.regalloc import (Regalloc, @@ -708,9 +708,9 @@ return AsmInfo(ops_offset, startpos + rawstart, codeendpos - startpos) - def new_stack_loc(self, i, pos, tp): + def new_stack_loc(self, i, tp): base_ofs = self.cpu.get_baseofs_of_frame_field() - return StackLocation(i, pos + base_ofs, tp) + return StackLocation(i, get_fp_offset(base_ofs, i), tp) def check_frame_before_jump(self, target_token): if target_token in self.target_tokens_currently_compiling: diff --git a/rpython/jit/backend/llsupport/assembler.py b/rpython/jit/backend/llsupport/assembler.py --- a/rpython/jit/backend/llsupport/assembler.py +++ b/rpython/jit/backend/llsupport/assembler.py @@ -153,7 +153,7 @@ i = pos - self.cpu.JITFRAME_FIXED_SIZE assert i >= 0 tp = inputargs[input_i].type - locs.append(self.new_stack_loc(i, pos, tp)) + locs.append(self.new_stack_loc(i, tp)) input_i += 1 return locs diff --git a/rpython/jit/backend/x86/assembler.py b/rpython/jit/backend/x86/assembler.py --- a/rpython/jit/backend/x86/assembler.py +++ b/rpython/jit/backend/x86/assembler.py @@ -1764,7 +1764,7 @@ ofs = self.cpu.get_ofs_of_frame_field('jf_gcmap') mc.MOV_bi(ofs, 0) - def new_stack_loc(self, i, pos, tp): + def new_stack_loc(self, i, tp): base_ofs = self.cpu.get_baseofs_of_frame_field() return FrameLoc(i, get_ebp_ofs(base_ofs, i), tp) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit