Lines Matching defs:zn
3244 const ZRegister& zn, \
3247 if (zd.Aliases(zn)) { \
3252 ASM(zd, pg, zd, zn); \
3254 MovprfxHelperScope guard(this, zd, pg, zn); \
3649 void Abs(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
3652 abs(zd, pg, zn);
3654 void Add(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
3657 add(zd, zn, zm);
3659 void Add(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm) {
3661 AddSubHelper(kAddImmediate, zd, zn, imm);
3679 void And(const ZRegister& zd, const ZRegister& zn, uint64_t imm) {
3683 and_(zd, zn, imm);
3689 void And(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
3691 VIXL_ASSERT(AreSameLaneSize(zd, zn, zm));
3693 and_(zd.VnD(), zn.VnD(), zm.VnD());
3703 void Andv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
3706 andv(vd, pg, zn);
3710 const ZRegister& zn,
3713 MovprfxHelperScope guard(this, zd, pg, zn);
3718 const ZRegister& zn,
3720 void Asr(const ZRegister& zd, const ZRegister& zn, int shift) {
3723 asr(zd, zn, shift);
3725 void Asr(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
3728 asr(zd, zn, zm);
3732 const ZRegister& zn,
3735 MovprfxHelperScope guard(this, zd, pg, zn);
3740 const ZRegister& zn,
3750 void Bic(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
3752 VIXL_ASSERT(AreSameLaneSize(zd, zn, zm));
3754 bic(zd.VnD(), zn.VnD(), zm.VnD());
3756 void Bic(const ZRegister& zd, const ZRegister& zn, uint64_t imm) {
3760 bic(zd, zn, imm);
3874 const ZRegister& zn,
3894 const ZRegister& zn,
3896 void Cls(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
3899 cls(zd, pg, zn);
3901 void Clz(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
3904 clz(zd, pg, zn);
3908 const ZRegister& zn,
3912 cmpeq(pd, pg, zn, zm);
3916 const ZRegister& zn,
3920 if (imm.TryEncodeAsIntNForLane<5>(zn, &imm5)) {
3922 cmpeq(pd, pg, zn, imm5);
3924 CompareHelper(eq, pd, pg, zn, imm);
3929 const ZRegister& zn,
3933 cmpge(pd, pg, zn, zm);
3937 const ZRegister& zn,
3941 if (imm.TryEncodeAsIntNForLane<5>(zn, &imm5)) {
3943 cmpge(pd, pg, zn, imm5);
3945 CompareHelper(ge, pd, pg, zn, imm);
3950 const ZRegister& zn,
3954 cmpgt(pd, pg, zn, zm);
3958 const ZRegister& zn,
3962 if (imm.TryEncodeAsIntNForLane<5>(zn, &imm5)) {
3964 cmpgt(pd, pg, zn, imm5);
3966 CompareHelper(gt, pd, pg, zn, imm);
3971 const ZRegister& zn,
3975 cmphi(pd, pg, zn, zm);
3979 const ZRegister& zn,
3984 cmphi(pd, pg, zn, static_cast<unsigned>(imm.AsUintN(7)));
3986 CompareHelper(hi, pd, pg, zn, imm);
3991 const ZRegister& zn,
3995 cmphs(pd, pg, zn, zm);
3999 const ZRegister& zn,
4003 cmphs(pd, pg, zn, static_cast<unsigned>(imm.AsUintN(7)));
4005 CompareHelper(hs, pd, pg, zn, imm);
4010 const ZRegister& zn,
4014 cmple(pd, pg, zn, zm);
4018 const ZRegister& zn,
4022 if (imm.TryEncodeAsIntNForLane<5>(zn, &imm5)) {
4024 cmple(pd, pg, zn, imm5);
4026 CompareHelper(le, pd, pg, zn, imm);
4031 const ZRegister& zn,
4035 cmplo(pd, pg, zn, zm);
4039 const ZRegister& zn,
4043 cmplo(pd, pg, zn, static_cast<unsigned>(imm.AsUintN(7)));
4045 CompareHelper(lo, pd, pg, zn, imm);
4050 const ZRegister& zn,
4054 cmpls(pd, pg, zn, zm);
4058 const ZRegister& zn,
4062 cmpls(pd, pg, zn, static_cast<unsigned>(imm.AsUintN(7)));
4064 CompareHelper(ls, pd, pg, zn, imm);
4069 const ZRegister& zn,
4073 cmplt(pd, pg, zn, zm);
4077 const ZRegister& zn,
4081 if (imm.TryEncodeAsIntNForLane<5>(zn, &imm5)) {
4083 cmplt(pd, pg, zn, imm5);
4085 CompareHelper(lt, pd, pg, zn, imm);
4090 const ZRegister& zn,
4094 cmpne(pd, pg, zn, zm);
4098 const ZRegister& zn,
4102 if (imm.TryEncodeAsIntNForLane<5>(zn, &imm5)) {
4104 cmpne(pd, pg, zn, imm5);
4106 CompareHelper(ne, pd, pg, zn, imm);
4109 void Cnot(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4112 cnot(zd, pg, zn);
4114 void Cnt(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4117 cnt(zd, pg, zn);
4149 void Compact(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
4152 compact(zd, pg, zn);
4205 void Decp(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
4207 VIXL_ASSERT(AreSameFormat(zd, zn));
4209 MovprfxHelperScope guard(this, zd, zn);
4228 void Dup(const ZRegister& zd, const ZRegister& zn, int index) {
4231 dup(zd, zn, index);
4234 void Eon(const ZRegister& zd, const ZRegister& zn, uint64_t imm) {
4238 eon(zd, zn, imm);
4252 void Eor(const ZRegister& zd, const ZRegister& zn, uint64_t imm) {
4256 eor(zd, zn, imm);
4262 void Eor(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4264 VIXL_ASSERT(AreSameLaneSize(zd, zn, zm));
4266 eor(zd.VnD(), zn.VnD(), zm.VnD());
4276 void Eorv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4279 eorv(vd, pg, zn);
4282 const ZRegister& zn,
4287 ext(zd, zn, zm, offset);
4291 const ZRegister& zn,
4294 void Fabs(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4297 fabs(zd, pg, zn);
4301 const ZRegister& zn,
4305 facge(pd, pg, zn, zm);
4309 const ZRegister& zn,
4313 facgt(pd, pg, zn, zm);
4317 const ZRegister& zn,
4321 facge(pd, pg, zm, zn);
4325 const ZRegister& zn,
4329 facgt(pd, pg, zm, zn);
4333 const ZRegister& zn,
4336 MovprfxHelperScope guard(this, zd, pg, zn);
4341 const ZRegister& zn,
4344 void Fadd(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4347 fadd(zd, zn, zm);
4357 void Faddv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4360 faddv(vd, pg, zn);
4364 const ZRegister& zn,
4369 const ZRegister& zn,
4374 fcmeq(pd, pg, zn, zero);
4382 const ZRegister& zn,
4386 fcmeq(pd, pg, zn, zm);
4390 const ZRegister& zn,
4395 fcmge(pd, pg, zn, zero);
4403 const ZRegister& zn,
4407 fcmge(pd, pg, zn, zm);
4411 const ZRegister& zn,
4416 fcmgt(pd, pg, zn, zero);
4424 const ZRegister& zn,
4428 fcmgt(pd, pg, zn, zm);
4433 const ZRegister& zn,
4437 const ZRegister& zn,
4443 fcmla(zda, zn, zm, index, rot);
4447 const ZRegister& zn,
4452 fcmle(pd, pg, zn, zero);
4460 const ZRegister& zn,
4464 fcmge(pd, pg, zm, zn);
4468 const ZRegister& zn,
4473 fcmlt(pd, pg, zn, zero);
4481 const ZRegister& zn,
4485 fcmgt(pd, pg, zm, zn);
4489 const ZRegister& zn,
4494 fcmne(pd, pg, zn, zero);
4502 const ZRegister& zn,
4506 fcmne(pd, pg, zn, zm);
4510 const ZRegister& zn,
4514 fcmuo(pd, pg, zn, zm);
4519 void Fcvt(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4522 fcvt(zd, pg, zn);
4524 void Fcvt(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4528 int lane_size = std::max(zd.GetLaneSizeInBits(), zn.GetLaneSizeInBits());
4532 zn.WithLaneSize(lane_size));
4533 fcvt(zd, pg.Merging(), zn);
4535 void Fcvtzs(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4538 fcvtzs(zd, pg, zn);
4540 void Fcvtzu(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4543 fcvtzu(zd, pg, zn);
4547 const ZRegister& zn,
4552 void Fexpa(const ZRegister& zd, const ZRegister& zn) {
4555 fexpa(zd, zn);
4567 const ZRegister& zn,
4570 MovprfxHelperScope guard(this, zd, pg, zn);
4576 const ZRegister& zn,
4581 const ZRegister& zn,
4584 MovprfxHelperScope guard(this, zd, pg, zn);
4589 const ZRegister& zn,
4592 void Fmaxnmv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4595 fmaxnmv(vd, pg, zn);
4597 void Fmaxv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4600 fmaxv(vd, pg, zn);
4604 const ZRegister& zn,
4607 MovprfxHelperScope guard(this, zd, pg, zn);
4613 const ZRegister& zn,
4618 const ZRegister& zn,
4621 MovprfxHelperScope guard(this, zd, pg, zn);
4626 const ZRegister& zn,
4629 void Fminnmv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4632 fminnmv(vd, pg, zn);
4634 void Fminv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4637 fminv(vd, pg, zn);
4639 // zd = za + (zn * zm)
4644 const ZRegister& zn,
4649 const ZRegister& zn,
4652 // zd = za - (zn * zm)
4657 const ZRegister& zn,
4662 const ZRegister& zn,
4699 const ZRegister& zn,
4702 MovprfxHelperScope guard(this, zd, pg, zn);
4707 const ZRegister& zn,
4711 const ZRegister& zn,
4716 fmul(zd, zn, zm, index);
4718 void Fmul(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4721 fmul(zd, zn, zm);
4725 const ZRegister& zn,
4728 void Fneg(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4731 fneg(zd, pg, zn);
4737 const ZRegister& zn,
4744 const ZRegister& zn,
4747 void Frecpe(const ZRegister& zd, const ZRegister& zn) {
4750 frecpe(zd, zn);
4752 void Frecps(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4755 frecps(zd, zn, zm);
4757 void Frecpx(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4760 frecpx(zd, pg, zn);
4762 void Frecpx(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4764 MovprfxHelperScope guard(this, zd, pg, zn);
4765 frecpx(zd, pg.Merging(), zn);
4767 void Frinta(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4770 frinta(zd, pg, zn);
4772 void Frinta(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4774 MovprfxHelperScope guard(this, zd, pg, zn);
4775 frinta(zd, pg.Merging(), zn);
4777 void Frinti(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4780 frinti(zd, pg, zn);
4782 void Frinti(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4784 MovprfxHelperScope guard(this, zd, pg, zn);
4785 frinti(zd, pg.Merging(), zn);
4787 void Frintm(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4790 frintm(zd, pg, zn);
4792 void Frintm(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4794 MovprfxHelperScope guard(this, zd, pg, zn);
4795 frintm(zd, pg.Merging(), zn);
4797 void Frintn(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4800 frintn(zd, pg, zn);
4802 void Frintn(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4804 MovprfxHelperScope guard(this, zd, pg, zn);
4805 frintn(zd, pg.Merging(), zn);
4807 void Frintp(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4810 frintp(zd, pg, zn);
4812 void Frintp(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4814 MovprfxHelperScope guard(this, zd, pg, zn);
4815 frintp(zd, pg.Merging(), zn);
4817 void Frintx(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4820 frintx(zd, pg, zn);
4822 void Frintx(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4824 MovprfxHelperScope guard(this, zd, pg, zn);
4825 frintx(zd, pg.Merging(), zn);
4827 void Frintz(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4830 frintz(zd, pg, zn);
4832 void Frintz(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4834 MovprfxHelperScope guard(this, zd, pg, zn);
4835 frintz(zd, pg.Merging(), zn);
4837 void Frsqrte(const ZRegister& zd, const ZRegister& zn) {
4840 frsqrte(zd, zn);
4842 void Frsqrts(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4845 frsqrts(zd, zn, zm);
4849 const ZRegister& zn,
4851 void Fsqrt(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
4854 fsqrt(zd, pg, zn);
4856 void Fsqrt(const ZRegister& zd, const PRegisterZ& pg, const ZRegister& zn) {
4858 MovprfxHelperScope guard(this, zd, pg, zn);
4859 fsqrt(zd, pg.Merging(), zn);
4863 const ZRegister& zn,
4866 MovprfxHelperScope guard(this, zd, pg, zn);
4872 const ZRegister& zn) {
4874 MovprfxHelperScope guard(this, zd, pg, zn);
4879 const ZRegister& zn,
4881 void Fsub(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4884 fsub(zd, zn, zm);
4887 const ZRegister& zn,
4890 void Ftsmul(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4893 ftsmul(zd, zn, zm);
4895 void Ftssel(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
4898 ftssel(zd, zn, zm);
4930 void Incp(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
4932 VIXL_ASSERT(AreSameFormat(zd, zn));
4934 MovprfxHelperScope guard(this, zd, zn);
4960 void Lasta(const Register& rd, const PRegister& pg, const ZRegister& zn) {
4963 lasta(rd, pg, zn);
4965 void Lasta(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4968 lasta(vd, pg, zn);
4970 void Lastb(const Register& rd, const PRegister& pg, const ZRegister& zn) {
4973 lastb(rd, pg, zn);
4975 void Lastb(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
4978 lastb(vd, pg, zn);
5234 const ZRegister& zn,
5238 ldff1b(zt, pg, zn, imm5);
5250 const ZRegister& zn,
5254 ldff1d(zt, pg, zn, imm5);
5266 const ZRegister& zn,
5270 ldff1h(zt, pg, zn, imm5);
5282 const ZRegister& zn,
5286 ldff1sb(zt, pg, zn, imm5);
5298 const ZRegister& zn,
5302 ldff1sh(zt, pg, zn, imm5);
5314 const ZRegister& zn,
5318 ldff1sw(zt, pg, zn, imm5);
5330 const ZRegister& zn,
5334 ldff1w(zt, pg, zn, imm5);
5403 const ZRegister& zn,
5406 MovprfxHelperScope guard(this, zd, pg, zn);
5411 const ZRegister& zn,
5413 void Lsl(const ZRegister& zd, const ZRegister& zn, int shift) {
5416 lsl(zd, zn, shift);
5418 void Lsl(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
5421 lsl(zd, zn, zm);
5425 const ZRegister& zn,
5428 MovprfxHelperScope guard(this, zd, pg, zn);
5433 const ZRegister& zn,
5435 void Lsr(const ZRegister& zd, const ZRegister& zn, int shift) {
5438 lsr(zd, zn, shift);
5440 void Lsr(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
5443 lsr(zd, zn, zm);
5476 void Mov(const ZRegister& zd, const ZRegister& zn) {
5479 mov(zd, zn);
5481 void Mov(const ZRegister& zd, const ZRegister& zn, unsigned index) {
5484 mov(zd, zn, index);
5501 void Mov(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5504 mov(zd, pg, zn);
5522 // zd = za + (zn * zm)
5526 const ZRegister& zn,
5528 // zd = za - (zn * zm)
5532 const ZRegister& zn,
5534 void Mul(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm);
5553 void Neg(const ZRegister& zd, const ZRegister& zn) {
5555 MovprfxHelperScope guard(this, zd, zn);
5558 void Neg(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5561 neg(zd, pg, zn);
5586 void Not(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5589 not_(zd, pg, zn);
5606 void Orn(const ZRegister& zd, const ZRegister& zn, uint64_t imm) {
5610 orn(zd, zn, imm);
5632 void Orr(const ZRegister& zd, const ZRegister& zn, uint64_t imm) {
5636 orr(zd, zn, imm);
5642 void Orr(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
5644 VIXL_ASSERT(AreSameLaneSize(zd, zn, zm));
5646 orr(zd.VnD(), zn.VnD(), zm.VnD());
5656 void Orv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
5659 orv(vd, pg, zn);
5735 void Rbit(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5738 rbit(zd, pg, zn);
5775 void Rev(const ZRegister& zd, const ZRegister& zn) {
5778 rev(zd, zn);
5780 void Revb(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5783 revb(zd, pg, zn);
5785 void Revh(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5788 revh(zd, pg, zn);
5790 void Revw(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5793 revw(zd, pg, zn);
5795 void Saddv(const VRegister& dd, const PRegister& pg, const ZRegister& zn) {
5798 saddv(dd, pg, zn);
5800 void Scvtf(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
5803 scvtf(zd, pg, zn);
5807 const ZRegister& zn,
5811 const ZRegister& zn,
5815 const ZRegister& zn,
5828 const ZRegister& zn,
5832 sel(zd, pg, zn, zm);
5839 void Smax(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm);
5840 void Smaxv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
5843 smaxv(vd, pg, zn);
5845 void Smin(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm);
5846 void Sminv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
5849 sminv(vd, pg, zn);
5853 const ZRegister& zn,
5855 void Sqadd(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
5858 sqadd(zd, zn, zm);
5860 void Sqadd(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm) {
5864 MovprfxHelperScope guard(this, zd, zn);
5928 void Sqdecp(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
5930 VIXL_ASSERT(AreSameFormat(zd, zn));
5932 MovprfxHelperScope guard(this, zd, zn);
6017 void Sqincp(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
6019 VIXL_ASSERT(AreSameFormat(zd, zn));
6021 MovprfxHelperScope guard(this, zd, zn);
6045 void Sqsub(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6048 sqsub(zd, zn, zm);
6050 void Sqsub(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm) {
6054 MovprfxHelperScope guard(this, zd, zn);
6195 const ZRegister& zn,
6197 void Sub(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6200 sub(zd, zn, zm);
6202 void Sub(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm) {
6204 AddSubHelper(kSubImmediate, zd, zn, imm);
6207 void Sunpkhi(const ZRegister& zd, const ZRegister& zn) {
6210 sunpkhi(zd, zn);
6212 void Sunpklo(const ZRegister& zd, const ZRegister& zn) {
6215 sunpklo(zd, zn);
6217 void Sxtb(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6220 sxtb(zd, pg, zn);
6222 void Sxth(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6225 sxth(zd, pg, zn);
6227 void Sxtw(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6230 sxtw(zd, pg, zn);
6232 void Tbl(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6235 tbl(zd, zn, zm);
6244 void Trn1(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6247 trn1(zd, zn, zm);
6256 void Trn2(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6259 trn2(zd, zn, zm);
6261 void Uaddv(const VRegister& dd, const PRegister& pg, const ZRegister& zn) {
6264 uaddv(dd, pg, zn);
6266 void Ucvtf(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6269 ucvtf(zd, pg, zn);
6273 const ZRegister& zn,
6277 const ZRegister& zn,
6281 const ZRegister& zn,
6284 void Umax(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm);
6285 void Umaxv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
6288 umaxv(vd, pg, zn);
6290 void Umin(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm);
6291 void Uminv(const VRegister& vd, const PRegister& pg, const ZRegister& zn) {
6294 uminv(vd, pg, zn);
6296 void Uqadd(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6299 uqadd(zd, zn, zm);
6301 void Uqadd(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm) {
6305 MovprfxHelperScope guard(this, zd, zn);
6352 void Uqdecp(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
6354 VIXL_ASSERT(AreSameFormat(zd, zn));
6356 MovprfxHelperScope guard(this, zd, zn);
6416 void Uqincp(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
6418 VIXL_ASSERT(AreSameFormat(zd, zn));
6420 MovprfxHelperScope guard(this, zd, zn);
6436 void Uqsub(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6439 uqsub(zd, zn, zm);
6441 void Uqsub(const ZRegister& zd, const ZRegister& zn, IntegerOperand imm) {
6445 MovprfxHelperScope guard(this, zd, zn);
6448 void Uunpkhi(const ZRegister& zd, const ZRegister& zn) {
6451 uunpkhi(zd, zn);
6453 void Uunpklo(const ZRegister& zd, const ZRegister& zn) {
6456 uunpklo(zd, zn);
6458 void Uxtb(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6461 uxtb(zd, pg, zn);
6463 void Uxth(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6466 uxth(zd, pg, zn);
6468 void Uxtw(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6471 uxtw(zd, pg, zn);
6480 void Uzp1(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6483 uzp1(zd, zn, zm);
6492 void Uzp2(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6495 uzp2(zd, zn, zm);
6542 void Zip1(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6545 zip1(zd, zn, zm);
6554 void Zip2(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6557 zip2(zd, zn, zm);
6563 const ZRegister& zn,
6567 const ZRegister& zn,
6569 void Addhnb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6572 addhnb(zd, zn, zm);
6574 void Addhnt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6577 addhnt(zd, zn, zm);
6581 const ZRegister& zn,
6584 const ZRegister& zn,
6587 void Bdep(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6590 bdep(zd, zn, zm);
6592 void Bext(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6595 bext(zd, zn, zm);
6597 void Bgrp(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6600 bgrp(zd, zn, zm);
6603 const ZRegister& zn,
6607 const ZRegister& zn,
6611 const ZRegister& zn,
6615 const ZRegister& zn,
6620 const ZRegister& zn,
6626 const ZRegister& zn,
6631 const ZRegister& zn,
6637 const ZRegister& zn,
6641 const ZRegister& zn,
6644 void Eorbt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6647 eorbt(zd, zn, zm);
6649 void Eortb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6652 eortb(zd, zn, zm);
6656 const ZRegister& zn,
6658 void Fcvtlt(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6661 fcvtlt(zd, pg, zn);
6663 void Fcvtnt(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6666 fcvtnt(zd, pg, zn);
6668 void Fcvtx(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
6670 VIXL_ASSERT(zn.IsLaneSizeD());
6672 fcvtx(zd, pg.Merging(), zn);
6674 void Fcvtxnt(const ZRegister& zd, const PRegisterM& pg, const ZRegister& zn) {
6677 fcvtxnt(zd, pg, zn);
6679 void Flogb(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
6682 flogb(zd, pg.Merging(), zn);
6686 const ZRegister& zn,
6690 const ZRegister& zn,
6694 const ZRegister& zn,
6698 const ZRegister& zn,
6702 const ZRegister& zn,
6706 const ZRegister& zn,
6710 const ZRegister& zn,
6714 const ZRegister& zn,
6718 const ZRegister& zn,
6723 const ZRegister& zn,
6728 const ZRegister& zn,
6733 const ZRegister& zn,
6738 const ZRegister& zn,
6742 histcnt(zd, pg, zn, zm);
6744 void Histseg(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6747 histseg(zd, zn, zm);
6772 const ZRegister& zn,
6776 match(pd, pg, zn, zm);
6780 const ZRegister& zn,
6785 const ZRegister& zn,
6789 const ZRegister& zn,
6794 mul(zd, zn, zm, index);
6796 void Mul(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6799 mul(zd, zn, zm);
6802 const ZRegister& zn,
6807 const ZRegister& zn,
6811 nmatch(pd, pg, zn, zm);
6813 void Pmul(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6816 pmul(zd, zn, zm);
6818 void Pmullb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6821 pmullb(zd, zn, zm);
6823 void Pmullt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6826 pmullt(zd, zn, zm);
6828 void Raddhnb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6831 raddhnb(zd, zn, zm);
6833 void Raddhnt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6836 raddhnt(zd, zn, zm);
6838 void Rshrnb(const ZRegister& zd, const ZRegister& zn, int shift) {
6841 rshrnb(zd, zn, shift);
6843 void Rshrnt(const ZRegister& zd, const ZRegister& zn, int shift) {
6846 rshrnt(zd, zn, shift);
6848 void Rsubhnb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6851 rsubhnb(zd, zn, zm);
6853 void Rsubhnt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6856 rsubhnt(zd, zn, zm);
6860 const ZRegister& zn,
6864 const ZRegister& zn,
6868 const ZRegister& zn,
6870 void Sabdlb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6873 sabdlb(zd, zn, zm);
6875 void Sabdlt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6878 sabdlt(zd, zn, zm);
6880 void Sadalp(const ZRegister& zda, const PRegisterM& pg, const ZRegister& zn) {
6883 sadalp(zda, pg, zn);
6885 void Saddlb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6888 saddlb(zd, zn, zm);
6890 void Saddlbt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6893 saddlbt(zd, zn, zm);
6895 void Saddlt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6898 saddlt(zd, zn, zm);
6900 void Saddwb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6903 saddwb(zd, zn, zm);
6905 void Saddwt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6908 saddwt(zd, zn, zm);
6912 const ZRegister& zn,
6916 const ZRegister& zn,
6918 void Shrnb(const ZRegister& zd, const ZRegister& zn, int shift) {
6921 shrnb(zd, zn, shift);
6923 void Shrnt(const ZRegister& zd, const ZRegister& zn, int shift) {
6926 shrnt(zd, zn, shift);
6930 const ZRegister& zn,
6932 void Sli(const ZRegister& zd, const ZRegister& zn, int shift) {
6935 sli(zd, zn, shift);
6939 const ZRegister& zn,
6943 const ZRegister& zn,
6947 const ZRegister& zn,
6952 const ZRegister& zn,
6956 const ZRegister& zn,
6961 const ZRegister& zn,
6965 const ZRegister& zn,
6970 const ZRegister& zn,
6974 const ZRegister& zn,
6979 const ZRegister& zn,
6981 void Smulh(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6984 smulh(zd, zn, zm);
6987 const ZRegister& zn,
6992 smullb(zd, zn, zm, index);
6994 void Smullb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
6997 smullb(zd, zn, zm);
7000 const ZRegister& zn,
7005 smullt(zd, zn, zm, index);
7007 void Smullt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7010 smullt(zd, zn, zm);
7012 void Sqabs(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
7015 sqabs(zd, pg.Merging(), zn);
7018 const ZRegister& zn,
7023 const ZRegister& zn,
7028 const ZRegister& zn,
7032 const ZRegister& zn,
7036 const ZRegister& zn,
7041 const ZRegister& zn,
7045 const ZRegister& zn,
7050 const ZRegister& zn,
7054 const ZRegister& zn,
7058 const ZRegister& zn,
7063 const ZRegister& zn,
7066 const ZRegister& zn,
7071 sqdmulh(zd, zn, zm, index);
7073 void Sqdmulh(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7076 sqdmulh(zd, zn, zm);
7079 const ZRegister& zn,
7084 sqdmullb(zd, zn, zm, index);
7086 void Sqdmullb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7089 sqdmullb(zd, zn, zm);
7092 const ZRegister& zn,
7097 sqdmullt(zd, zn, zm, index);
7099 void Sqdmullt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7102 sqdmullt(zd, zn, zm);
7104 void Sqneg(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
7107 sqneg(zd, pg.Merging(), zn);
7111 const ZRegister& zn,
7117 const ZRegister& zn,
7122 const ZRegister& zn,
7126 const ZRegister& zn,
7131 const ZRegister& zn,
7135 const ZRegister& zn,
7139 const ZRegister& zn,
7144 sqrdmulh(zd, zn, zm, index);
7146 void Sqrdmulh(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7149 sqrdmulh(zd, zn, zm);
7153 const ZRegister& zn,
7155 void Sqrshrnb(const ZRegister& zd, const ZRegister& zn, int shift) {
7158 sqrshrnb(zd, zn, shift);
7160 void Sqrshrnt(const ZRegister& zd, const ZRegister& zn, int shift) {
7163 sqrshrnt(zd, zn, shift);
7165 void Sqrshrunb(const ZRegister& zd, const ZRegister& zn, int shift) {
7168 sqrshrunb(zd, zn, shift);
7170 void Sqrshrunt(const ZRegister& zd, const ZRegister& zn, int shift) {
7173 sqrshrunt(zd, zn, shift);
7177 const ZRegister& zn,
7180 MovprfxHelperScope guard(this, zd, pg, zn);
7185 const ZRegister& zn,
7189 const ZRegister& zn,
7192 MovprfxHelperScope guard(this, zd, pg, zn);
7195 void Sqshrnb(const ZRegister& zd, const ZRegister& zn, int shift) {
7198 sqshrnb(zd, zn, shift);
7200 void Sqshrnt(const ZRegister& zd, const ZRegister& zn, int shift) {
7203 sqshrnt(zd, zn, shift);
7205 void Sqshrunb(const ZRegister& zd, const ZRegister& zn, int shift) {
7208 sqshrunb(zd, zn, shift);
7210 void Sqshrunt(const ZRegister& zd, const ZRegister& zn, int shift) {
7213 sqshrunt(zd, zn, shift);
7217 const ZRegister& zn,
7219 void Sqxtnb(const ZRegister& zd, const ZRegister& zn) {
7222 sqxtnb(zd, zn);
7224 void Sqxtnt(const ZRegister& zd, const ZRegister& zn) {
7227 sqxtnt(zd, zn);
7229 void Sqxtunb(const ZRegister& zd, const ZRegister& zn) {
7232 sqxtunb(zd, zn);
7234 void Sqxtunt(const ZRegister& zd, const ZRegister& zn) {
7237 sqxtunt(zd, zn);
7239 void Sri(const ZRegister& zd, const ZRegister& zn, int shift) {
7242 sri(zd, zn, shift);
7246 const ZRegister& zn,
7250 const ZRegister& zn,
7253 MovprfxHelperScope guard(this, zd, pg, zn);
7258 const ZRegister& zn,
7260 void Sshllb(const ZRegister& zd, const ZRegister& zn, int shift) {
7263 sshllb(zd, zn, shift);
7265 void Sshllt(const ZRegister& zd, const ZRegister& zn, int shift) {
7268 sshllt(zd, zn, shift);
7272 const ZRegister& zn,
7274 void Ssublb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7277 ssublb(zd, zn, zm);
7279 void Ssublbt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7282 ssublbt(zd, zn, zm);
7284 void Ssublt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7287 ssublt(zd, zn, zm);
7289 void Ssubltb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7292 ssubltb(zd, zn, zm);
7294 void Ssubwb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7297 ssubwb(zd, zn, zm);
7299 void Ssubwt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7302 ssubwt(zd, zn, zm);
7304 void Subhnb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7307 subhnb(zd, zn, zm);
7309 void Subhnt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7312 subhnt(zd, zn, zm);
7316 const ZRegister& zn,
7326 void Tbx(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7329 tbx(zd, zn, zm);
7333 const ZRegister& zn,
7337 const ZRegister& zn,
7341 const ZRegister& zn,
7343 void Uabdlb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7346 uabdlb(zd, zn, zm);
7348 void Uabdlt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7351 uabdlt(zd, zn, zm);
7353 void Uadalp(const ZRegister& zda, const PRegisterM& pg, const ZRegister& zn) {
7356 uadalp(zda, pg, zn);
7358 void Uaddlb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7361 uaddlb(zd, zn, zm);
7363 void Uaddlt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7366 uaddlt(zd, zn, zm);
7368 void Uaddwb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7371 uaddwb(zd, zn, zm);
7373 void Uaddwt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7376 uaddwt(zd, zn, zm);
7380 const ZRegister& zn,
7384 const ZRegister& zn,
7388 const ZRegister& zn,
7392 const ZRegister& zn,
7397 const ZRegister& zn,
7401 const ZRegister& zn,
7406 const ZRegister& zn,
7410 const ZRegister& zn,
7415 const ZRegister& zn,
7419 const ZRegister& zn,
7424 const ZRegister& zn,
7426 void Umulh(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7429 umulh(zd, zn, zm);
7432 const ZRegister& zn,
7437 umullb(zd, zn, zm, index);
7439 void Umullb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7442 umullb(zd, zn, zm);
7445 const ZRegister& zn,
7450 umullt(zd, zn, zm, index);
7452 void Umullt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7455 umullt(zd, zn, zm);
7459 const ZRegister& zn,
7461 void Uqrshrnb(const ZRegister& zd, const ZRegister& zn, int shift) {
7464 uqrshrnb(zd, zn, shift);
7466 void Uqrshrnt(const ZRegister& zd, const ZRegister& zn, int shift) {
7469 uqrshrnt(zd, zn, shift);
7473 const ZRegister& zn,
7476 MovprfxHelperScope guard(this, zd, pg, zn);
7481 const ZRegister& zn,
7483 void Uqshrnb(const ZRegister& zd, const ZRegister& zn, int shift) {
7486 uqshrnb(zd, zn, shift);
7488 void Uqshrnt(const ZRegister& zd, const ZRegister& zn, int shift) {
7491 uqshrnt(zd, zn, shift);
7495 const ZRegister& zn,
7497 void Uqxtnb(const ZRegister& zd, const ZRegister& zn) {
7500 uqxtnb(zd, zn);
7502 void Uqxtnt(const ZRegister& zd, const ZRegister& zn) {
7505 uqxtnt(zd, zn);
7507 void Urecpe(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
7510 urecpe(zd, pg.Merging(), zn);
7514 const ZRegister& zn,
7518 const ZRegister& zn,
7521 MovprfxHelperScope guard(this, zd, pg, zn);
7524 void Ursqrte(const ZRegister& zd, const PRegister& pg, const ZRegister& zn) {
7527 ursqrte(zd, pg.Merging(), zn);
7531 const ZRegister& zn,
7533 void Ushllb(const ZRegister& zd, const ZRegister& zn, int shift) {
7536 ushllb(zd, zn, shift);
7538 void Ushllt(const ZRegister& zd, const ZRegister& zn, int shift) {
7541 ushllt(zd, zn, shift);
7545 const ZRegister& zn,
7549 const ZRegister& zn,
7551 void Usublb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7554 usublb(zd, zn, zm);
7556 void Usublt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7559 usublt(zd, zn, zm);
7561 void Usubwb(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7564 usubwb(zd, zn, zm);
7566 void Usubwt(const ZRegister& zd, const ZRegister& zn, const ZRegister& zm) {
7569 usubwt(zd, zn, zm);
7614 const ZRegister& zn,
7620 xar(zd, zm, zn, shift);
7622 MovprfxHelperScope guard(this, zd, zn);
7628 const ZRegister& zn,
7632 const ZRegister& zn,
7636 const ZRegister& zn,
7640 const ZRegister& zn,
7644 const ZRegister& zn,
7648 const ZRegister& zn,
7653 const ZRegister& zn,
8325 const ZRegister& zn,
8385 const ZRegister& zn,
8389 const ZRegister& zn,
8394 const ZRegister& zn,
8399 const ZRegister& zn,
8403 const ZRegister& zn,
8407 const ZRegister& zn,
8413 const ZRegister& zn,
8419 const ZRegister& zn,
8427 const ZRegister& zn,
8439 const ZRegister& zn,
8445 const ZRegister& zn,
8451 const ZRegister& zn,
8457 const ZRegister& zn,
8463 const ZRegister& zn,
8470 const ZRegister& zn,
8477 const ZRegister& zn,
8485 const ZRegister& zn,
8492 const ZRegister& zn,
8498 const ZRegister& zn,
8505 const ZRegister& zn,
8512 const ZRegister& zn,
8519 const ZRegister& zn,
8524 const ZRegister& zn,