Lines Matching refs:rd

24 void TurboAssembler::And(const Register& rd, const Register& rn,
27 DCHECK(!rd.IsZero());
28 LogicalMacro(rd, rn, operand, AND);
31 void TurboAssembler::Ands(const Register& rd, const Register& rn,
34 DCHECK(!rd.IsZero());
35 LogicalMacro(rd, rn, operand, ANDS);
43 void TurboAssembler::Bic(const Register& rd, const Register& rn,
46 DCHECK(!rd.IsZero());
47 LogicalMacro(rd, rn, operand, BIC);
50 void MacroAssembler::Bics(const Register& rd, const Register& rn,
53 DCHECK(!rd.IsZero());
54 LogicalMacro(rd, rn, operand, BICS);
57 void TurboAssembler::Orr(const Register& rd, const Register& rn,
60 DCHECK(!rd.IsZero());
61 LogicalMacro(rd, rn, operand, ORR);
64 void TurboAssembler::Orn(const Register& rd, const Register& rn,
67 DCHECK(!rd.IsZero());
68 LogicalMacro(rd, rn, operand, ORN);
71 void TurboAssembler::Eor(const Register& rd, const Register& rn,
74 DCHECK(!rd.IsZero());
75 LogicalMacro(rd, rn, operand, EOR);
78 void TurboAssembler::Eon(const Register& rd, const Register& rn,
81 DCHECK(!rd.IsZero());
82 LogicalMacro(rd, rn, operand, EON);
114 void TurboAssembler::Add(const Register& rd, const Register& rn,
119 AddSubMacro(rd, rn, -operand.ImmediateValue(), LeaveFlags, SUB);
121 AddSubMacro(rd, rn, operand, LeaveFlags, ADD);
125 void TurboAssembler::Adds(const Register& rd, const Register& rn,
130 AddSubMacro(rd, rn, -operand.ImmediateValue(), SetFlags, SUB);
132 AddSubMacro(rd, rn, operand, SetFlags, ADD);
136 void TurboAssembler::Sub(const Register& rd, const Register& rn,
141 AddSubMacro(rd, rn, -operand.ImmediateValue(), LeaveFlags, ADD);
143 AddSubMacro(rd, rn, operand, LeaveFlags, SUB);
147 void TurboAssembler::Subs(const Register& rd, const Register& rn,
152 AddSubMacro(rd, rn, -operand.ImmediateValue(), SetFlags, ADD);
154 AddSubMacro(rd, rn, operand, SetFlags, SUB);
176 void TurboAssembler::Neg(const Register& rd, const Operand& operand) {
178 DCHECK(!rd.IsZero());
180 Mov(rd, -operand.ImmediateValue());
182 Sub(rd, AppropriateZeroRegFor(rd), operand);
186 void TurboAssembler::Negs(const Register& rd, const Operand& operand) {
188 Subs(rd, AppropriateZeroRegFor(rd), operand);
191 void TurboAssembler::Adc(const Register& rd, const Register& rn,
194 DCHECK(!rd.IsZero());
195 AddSubWithCarryMacro(rd, rn, operand, LeaveFlags, ADC);
198 void MacroAssembler::Adcs(const Register& rd, const Register& rn,
201 DCHECK(!rd.IsZero());
202 AddSubWithCarryMacro(rd, rn, operand, SetFlags, ADC);
205 void MacroAssembler::Sbc(const Register& rd, const Register& rn,
208 DCHECK(!rd.IsZero());
209 AddSubWithCarryMacro(rd, rn, operand, LeaveFlags, SBC);
212 void MacroAssembler::Sbcs(const Register& rd, const Register& rn,
215 DCHECK(!rd.IsZero());
216 AddSubWithCarryMacro(rd, rn, operand, SetFlags, SBC);
219 void MacroAssembler::Ngc(const Register& rd, const Operand& operand) {
221 DCHECK(!rd.IsZero());
222 Register zr = AppropriateZeroRegFor(rd);
223 Sbc(rd, zr, operand);
226 void MacroAssembler::Ngcs(const Register& rd, const Operand& operand) {
228 DCHECK(!rd.IsZero());
229 Register zr = AppropriateZeroRegFor(rd);
230 Sbcs(rd, zr, operand);
233 void TurboAssembler::Mvn(const Register& rd, uint64_t imm) {
235 DCHECK(!rd.IsZero());
236 Mov(rd, ~imm);
273 void TurboAssembler::Asr(const Register& rd, const Register& rn,
276 DCHECK(!rd.IsZero());
277 asr(rd, rn, shift);
280 void TurboAssembler::Asr(const Register& rd, const Register& rn,
283 DCHECK(!rd.IsZero());
284 asrv(rd, rn, rm);
298 void TurboAssembler::Bfi(const Register& rd, const Register& rn, unsigned lsb,
301 DCHECK(!rd.IsZero());
302 bfi(rd, rn, lsb, width);
305 void MacroAssembler::Bfxil(const Register& rd, const Register& rn, unsigned lsb,
308 DCHECK(!rd.IsZero());
309 bfxil(rd, rn, lsb, width);
393 void MacroAssembler::Cinc(const Register& rd, const Register& rn,
396 DCHECK(!rd.IsZero());
398 cinc(rd, rn, cond);
401 void MacroAssembler::Cinv(const Register& rd, const Register& rn,
404 DCHECK(!rd.IsZero());
406 cinv(rd, rn, cond);
409 void TurboAssembler::Cls(const Register& rd, const Register& rn) {
411 DCHECK(!rd.IsZero());
412 cls(rd, rn);
415 void TurboAssembler::Clz(const Register& rd, const Register& rn) {
417 DCHECK(!rd.IsZero());
418 clz(rd, rn);
421 void TurboAssembler::Cneg(const Register& rd, const Register& rn,
424 DCHECK(!rd.IsZero());
426 cneg(rd, rn, cond);
431 void MacroAssembler::CzeroX(const Register& rd, Condition cond) {
433 DCHECK(!rd.IsSP() && rd.Is64Bits());
435 csel(rd, xzr, rd, cond);
440 void TurboAssembler::CmovX(const Register& rd, const Register& rn,
443 DCHECK(!rd.IsSP());
444 DCHECK(rd.Is64Bits() && rn.Is64Bits());
446 if (rd != rn) {
447 csel(rd, rn, rd, cond);
456 void TurboAssembler::Cset(const Register& rd, Condition cond) {
458 DCHECK(!rd.IsZero());
460 cset(rd, cond);
463 void TurboAssembler::Csetm(const Register& rd, Condition cond) {
465 DCHECK(!rd.IsZero());
467 csetm(rd, cond);
470 void TurboAssembler::Csinc(const Register& rd, const Register& rn,
473 DCHECK(!rd.IsZero());
475 csinc(rd, rn, rm, cond);
478 void MacroAssembler::Csinv(const Register& rd, const Register& rn,
481 DCHECK(!rd.IsZero());
483 csinv(rd, rn, rm, cond);
486 void MacroAssembler::Csneg(const Register& rd, const Register& rn,
489 DCHECK(!rd.IsZero());
491 csneg(rd, rn, rm, cond);
509 void MacroAssembler::Extr(const Register& rd, const Register& rn,
512 DCHECK(!rd.IsZero());
513 extr(rd, rn, rm, lsb);
563 void TurboAssembler::Fcvtas(const Register& rd, const VRegister& fn) {
565 DCHECK(!rd.IsZero());
566 fcvtas(rd, fn);
569 void TurboAssembler::Fcvtau(const Register& rd, const VRegister& fn) {
571 DCHECK(!rd.IsZero());
572 fcvtau(rd, fn);
575 void TurboAssembler::Fcvtms(const Register& rd, const VRegister& fn) {
577 DCHECK(!rd.IsZero());
578 fcvtms(rd, fn);
581 void TurboAssembler::Fcvtmu(const Register& rd, const VRegister& fn) {
583 DCHECK(!rd.IsZero());
584 fcvtmu(rd, fn);
587 void TurboAssembler::Fcvtns(const Register& rd, const VRegister& fn) {
589 DCHECK(!rd.IsZero());
590 fcvtns(rd, fn);
593 void TurboAssembler::Fcvtnu(const Register& rd, const VRegister& fn) {
595 DCHECK(!rd.IsZero());
596 fcvtnu(rd, fn);
599 void TurboAssembler::Fcvtzs(const Register& rd, const VRegister& fn) {
601 DCHECK(!rd.IsZero());
602 fcvtzs(rd, fn);
604 void TurboAssembler::Fcvtzu(const Register& rd, const VRegister& fn) {
606 DCHECK(!rd.IsZero());
607 fcvtzu(rd, fn);
717 void TurboAssembler::Fmov(Register rd, VRegister fn) {
719 DCHECK(!rd.IsZero());
720 fmov(rd, fn);
773 void TurboAssembler::Lsl(const Register& rd, const Register& rn,
776 DCHECK(!rd.IsZero());
777 lsl(rd, rn, shift);
780 void TurboAssembler::Lsl(const Register& rd, const Register& rn,
783 DCHECK(!rd.IsZero());
784 lslv(rd, rn, rm);
787 void TurboAssembler::Lsr(const Register& rd, const Register& rn,
790 DCHECK(!rd.IsZero());
791 lsr(rd, rn, shift);
794 void TurboAssembler::Lsr(const Register& rd, const Register& rn,
797 DCHECK(!rd.IsZero());
798 lsrv(rd, rn, rm);
801 void TurboAssembler::Madd(const Register& rd, const Register& rn,
804 DCHECK(!rd.IsZero());
805 madd(rd, rn, rm, ra);
808 void TurboAssembler::Mneg(const Register& rd, const Register& rn,
811 DCHECK(!rd.IsZero());
812 mneg(rd, rn, rm);
815 void MacroAssembler::Movk(const Register& rd, uint64_t imm, int shift) {
817 DCHECK(!rd.IsZero());
818 movk(rd, imm, shift);
832 void TurboAssembler::Msub(const Register& rd, const Register& rn,
835 DCHECK(!rd.IsZero());
836 msub(rd, rn, rm, ra);
839 void TurboAssembler::Mul(const Register& rd, const Register& rn,
842 DCHECK(!rd.IsZero());
843 mul(rd, rn, rm);
846 void TurboAssembler::Rbit(const Register& rd, const Register& rn) {
848 DCHECK(!rd.IsZero());
849 rbit(rd, rn);
852 void TurboAssembler::Rev(const Register& rd, const Register& rn) {
854 DCHECK(!rd.IsZero());
855 rev(rd, rn);
865 void MacroAssembler::Rev(const Register& rd, const Register& rn) {
867 DCHECK(!rd.IsZero());
868 rev(rd, rn);
871 void TurboAssembler::Rev16(const Register& rd, const Register& rn) {
873 DCHECK(!rd.IsZero());
874 rev16(rd, rn);
877 void TurboAssembler::Rev32(const Register& rd, const Register& rn) {
879 DCHECK(!rd.IsZero());
880 rev32(rd, rn);
883 void TurboAssembler::Ror(const Register& rd, const Register& rs,
886 DCHECK(!rd.IsZero());
887 ror(rd, rs, shift);
890 void TurboAssembler::Ror(const Register& rd, const Register& rn,
893 DCHECK(!rd.IsZero());
894 rorv(rd, rn, rm);
897 void MacroAssembler::Sbfiz(const Register& rd, const Register& rn, unsigned lsb,
900 DCHECK(!rd.IsZero());
901 sbfiz(rd, rn, lsb, width);
904 void TurboAssembler::Sbfx(const Register& rd, const Register& rn, unsigned lsb,
907 DCHECK(!rd.IsZero());
908 sbfx(rd, rn, lsb, width);
917 void TurboAssembler::Sdiv(const Register& rd, const Register& rn,
920 DCHECK(!rd.IsZero());
921 sdiv(rd, rn, rm);
924 void MacroAssembler::Smaddl(const Register& rd, const Register& rn,
927 DCHECK(!rd.IsZero());
928 smaddl(rd, rn, rm, ra);
931 void MacroAssembler::Smsubl(const Register& rd, const Register& rn,
934 DCHECK(!rd.IsZero());
935 smsubl(rd, rn, rm, ra);
938 void TurboAssembler::Smull(const Register& rd, const Register& rn,
941 DCHECK(!rd.IsZero());
942 smull(rd, rn, rm);
945 void MacroAssembler::Smulh(const Register& rd, const Register& rn,
948 DCHECK(!rd.IsZero());
949 smulh(rd, rn, rm);
952 void TurboAssembler::Umull(const Register& rd, const Register& rn,
955 DCHECK(!rd.IsZero());
956 umaddl(rd, rn, rm, xzr);
959 void TurboAssembler::Sxtb(const Register& rd, const Register& rn) {
961 DCHECK(!rd.IsZero());
962 sxtb(rd, rn);
965 void TurboAssembler::Sxth(const Register& rd, const Register& rn) {
967 DCHECK(!rd.IsZero());
968 sxth(rd, rn);
971 void TurboAssembler::Sxtw(const Register& rd, const Register& rn) {
973 DCHECK(!rd.IsZero());
974 sxtw(rd, rn);
977 void TurboAssembler::Ubfiz(const Register& rd, const Register& rn, unsigned lsb,
980 DCHECK(!rd.IsZero());
981 ubfiz(rd, rn, lsb, width);
984 void TurboAssembler::Ubfx(const Register& rd, const Register& rn, unsigned lsb,
987 DCHECK(!rd.IsZero());
988 ubfx(rd, rn, lsb, width);
997 void TurboAssembler::Udiv(const Register& rd, const Register& rn,
1000 DCHECK(!rd.IsZero());
1001 udiv(rd, rn, rm);
1004 void MacroAssembler::Umaddl(const Register& rd, const Register& rn,
1007 DCHECK(!rd.IsZero());
1008 umaddl(rd, rn, rm, ra);
1011 void MacroAssembler::Umsubl(const Register& rd, const Register& rn,
1014 DCHECK(!rd.IsZero());
1015 umsubl(rd, rn, rm, ra);
1018 void TurboAssembler::Uxtb(const Register& rd, const Register& rn) {
1020 DCHECK(!rd.IsZero());
1021 uxtb(rd, rn);
1024 void TurboAssembler::Uxth(const Register& rd, const Register& rn) {
1026 DCHECK(!rd.IsZero());
1027 uxth(rd, rn);
1030 void TurboAssembler::Uxtw(const Register& rd, const Register& rn) {
1032 DCHECK(!rd.IsZero());
1033 uxtw(rd, rn);