Author: edelsohn Branch: ppc-jit-backend Changeset: r51445:db20886769cb Date: 2012-01-18 09:53 -0500 http://bitbucket.org/pypy/pypy/changeset/db20886769cb/
Log: Remove boxes from getinteriorfield_gc, setinteriorfield_gc. diff --git a/pypy/jit/backend/ppc/ppcgen/regalloc.py b/pypy/jit/backend/ppc/ppcgen/regalloc.py --- a/pypy/jit/backend/ppc/ppcgen/regalloc.py +++ b/pypy/jit/backend/ppc/ppcgen/regalloc.py @@ -597,17 +597,14 @@ t = unpack_interiorfielddescr(op.getdescr()) ofs, itemsize, fieldsize, sign = t args = op.getarglist() - base_loc, base_box = self._ensure_value_is_boxed(op.getarg(0), args) - index_loc, index_box = self._ensure_value_is_boxed(op.getarg(1), args) + base_loc = self._ensure_value_is_boxed(op.getarg(0), args) + index_loc = self._ensure_value_is_boxed(op.getarg(1), args) c_ofs = ConstInt(ofs) if _check_imm_arg(c_ofs): ofs_loc = imm(ofs) else: - ofs_loc, ofs_box = self._ensure_value_is_boxed(c_ofs, [base_box]) - self.possibly_free_var(ofs_box) + ofs_loc = self._ensure_value_is_boxed(c_ofs, args) self.possibly_free_vars_for_op(op) - self.possibly_free_var(base_box) - self.possibly_free_var(index_box) self.free_temp_vars() result_loc = self.force_allocate_reg(op.result) self.possibly_free_var(op.result) @@ -618,18 +615,14 @@ t = unpack_interiorfielddescr(op.getdescr()) ofs, itemsize, fieldsize, sign = t args = op.getarglist() - base_loc, base_box = self._ensure_value_is_boxed(op.getarg(0), args) - index_loc, index_box = self._ensure_value_is_boxed(op.getarg(1), args) - value_loc, value_box = self._ensure_value_is_boxed(op.getarg(2), args) + base_loc = self._ensure_value_is_boxed(op.getarg(0), args) + index_loc = self._ensure_value_is_boxed(op.getarg(1), args) + value_loc = self._ensure_value_is_boxed(op.getarg(2), args) c_ofs = ConstInt(ofs) if _check_imm_arg(c_ofs): ofs_loc = imm(ofs) else: - ofs_loc, ofs_box = self._ensure_value_is_boxed(c_ofs, [base_box]) - self.possibly_free_var(ofs_box) - self.possibly_free_var(base_box) - self.possibly_free_var(index_box) - self.possibly_free_var(value_box) + ofs_loc = self._ensure_value_is_boxed(c_ofs, args) return [base_loc, index_loc, value_loc, ofs_loc, imm(ofs), imm(itemsize), imm(fieldsize)] _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit