Author: Richard Plangger <planri...@gmail.com> Branch: zarch-simd-support Changeset: r87216:28e71ef2f8ec Date: 2016-09-19 09:11 +0200 http://bitbucket.org/pypy/pypy/changeset/28e71ef2f8ec/
Log: int_is_true fixed diff --git a/rpython/jit/backend/zarch/instructions.py b/rpython/jit/backend/zarch/instructions.py --- a/rpython/jit/backend/zarch/instructions.py +++ b/rpython/jit/backend/zarch/instructions.py @@ -329,6 +329,7 @@ 'VREPI': ('vri_a', ['\xE7','\x45']), 'VCEQ': ('vrr_b', ['\xE7','\xF8']), + 'VCHL': ('vrr_b', ['\xE7','\xF9']), # pack, merge, shift, ... 'VMRL': ('vrr_c', ['\xE7','\x60'], 'v,v,v,m'), diff --git a/rpython/jit/backend/zarch/vector_ext.py b/rpython/jit/backend/zarch/vector_ext.py --- a/rpython/jit/backend/zarch/vector_ext.py +++ b/rpython/jit/backend/zarch/vector_ext.py @@ -186,9 +186,8 @@ size = sizeloc.value tmploc = regalloc.vrm.get_scratch_reg() self.mc.VX(tmploc, tmploc, tmploc) # all zero - self.mc.VNO(tmploc, tmploc, tmploc) # all one - self.mc.VCEQ(resloc, argloc, tmploc, l.itemsize_to_mask(size), 0b0001) - flush_vec_cc(self, regalloc, c.VNEI, op.bytesize, resloc) + self.mc.VCHL(resloc, argloc, tmploc, l.itemsize_to_mask(size), 0b0001) + flush_vec_cc(self, regalloc, c.VEQI, op.bytesize, resloc) def emit_vec_float_eq(self, op, arglocs, regalloc): assert isinstance(op, VectorOp) @@ -574,8 +573,9 @@ prepare_vec_cast_int_to_float = prepare_vec_cast_float_to_int def prepare_vec_guard_true(self, op): - self.assembler.guard_success_cc = c.VEQI + self.assembler.guard_success_cc = c.EQ return self._prepare_guard(op) def prepare_vec_guard_false(self, op): - self.assembler.guard_success_cc = c.VNEI + self.assembler.guard_success_cc = c.NE + return self._prepare_guard(op) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit