Author: Richard Plangger <planri...@gmail.com> Branch: s390x-backend Changeset: r82257:c587ef1d34a4 Date: 2016-02-15 12:07 +0100 http://bitbucket.org/pypy/pypy/changeset/c587ef1d34a4/
Log: added te temp_boxes too early, added comments diff --git a/rpython/jit/backend/zarch/regalloc.py b/rpython/jit/backend/zarch/regalloc.py --- a/rpython/jit/backend/zarch/regalloc.py +++ b/rpython/jit/backend/zarch/regalloc.py @@ -991,10 +991,10 @@ itemsize, ofs, _ = unpack_arraydescr(op.getdescr()) startindex_loc = self.ensure_reg_or_16bit_imm(op.getarg(1)) tempvar = TempInt() - self.rm.temp_boxes.append(tempvar) ofs_loc = self.ensure_reg_or_16bit_imm(ConstInt(ofs)) base_loc, length_loc = self.rm.ensure_even_odd_pair(op.getarg(0), tempvar, bind_first=True, must_exist=False, load_loc_odd=False) + self.rm.temp_boxes.append(tempvar) length_box = op.getarg(2) ll = self.rm.loc(length_box) @@ -1028,17 +1028,20 @@ def _prepare_math_sqrt(self, op): loc = self.ensure_reg(op.getarg(1)) self.free_op_vars() + # can be the same register as loc res = self.fprm.force_allocate_reg(op) return [loc, res] def prepare_cast_int_to_float(self, op): loc1 = self.ensure_reg(op.getarg(0)) + # ok not to use forbidden_vars, parameter is a int box res = self.fprm.force_allocate_reg(op) return [loc1, res] def prepare_cast_float_to_int(self, op): loc1 = self.ensure_reg(op.getarg(0)) self.free_op_vars() + # ok not to use forbidden_vars, parameter is a float box res = self.rm.force_allocate_reg(op) return [loc1, res] _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit