Author: David Schneider <david.schnei...@picle.org> Branch: jitframe-on-heap Changeset: r62087:e84f26cdbe51 Date: 2013-03-05 15:46 +0100 http://bitbucket.org/pypy/pypy/changeset/e84f26cdbe51/
Log: fix for _call_assembler_check_descr, the value we are comparing against might not fit into an ARM imm diff --git a/rpython/jit/backend/arm/opassembler.py b/rpython/jit/backend/arm/opassembler.py --- a/rpython/jit/backend/arm/opassembler.py +++ b/rpython/jit/backend/arm/opassembler.py @@ -1124,7 +1124,11 @@ def _call_assembler_check_descr(self, value, tmploc): ofs = self.cpu.get_ofs_of_frame_field('jf_descr') self.mc.LDR_ri(r.ip.value, tmploc.value, imm=ofs) - self.mc.CMP_ri(r.ip.value, imm=value) + if check_imm_arg(value): + self.mc.CMP_ri(r.ip.value, imm=value) + else: + self.mc.gen_load_int(r.lr.value, value) + self.mc.CMP_rr(r.ip.value, r.lr.value) pos = self.mc.currpos() self.mc.BKPT() return pos _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit