Lines Matching defs:src
43 #include "src/codegen/assembler.h"
44 #include "src/codegen/ia32/constants-ia32.h"
45 #include "src/codegen/ia32/fma-instr.h"
46 #include "src/codegen/ia32/register-ia32.h"
47 #include "src/codegen/ia32/sse-instr.h"
48 #include "src/codegen/label.h"
49 #include "src/execution/isolate.h"
50 #include "src/objects/smi.h"
51 #include "src/utils/utils.h"
483 void push(Register src);
484 void push(Operand src);
492 void mov_b(Register dst, Register src) { mov_b(dst, Operand(src)); }
493 void mov_b(Register dst, Operand src);
495 void mov_b(Operand dst, int8_t src) { mov_b(dst, Immediate(src)); }
496 void mov_b(Operand dst, const Immediate& src);
497 void mov_b(Operand dst, Register src);
499 void mov_w(Register dst, Operand src);
500 void mov_w(Operand dst, int16_t src) { mov_w(dst, Immediate(src)); }
501 void mov_w(Operand dst, const Immediate& src);
502 void mov_w(Operand dst, Register src);
507 void mov(Register dst, Operand src);
508 void mov(Register dst, Register src);
511 void mov(Operand dst, Register src);
512 void mov(Operand dst, Address src, RelocInfo::Mode);
514 void movsx_b(Register dst, Register src) { movsx_b(dst, Operand(src)); }
515 void movsx_b(Register dst, Operand src);
517 void movsx_w(Register dst, Register src) { movsx_w(dst, Operand(src)); }
518 void movsx_w(Register dst, Operand src);
520 void movzx_b(Register dst, Register src) { movzx_b(dst, Operand(src)); }
521 void movzx_b(Register dst, Operand src);
523 void movzx_w(Register dst, Register src) { movzx_w(dst, Operand(src)); }
524 void movzx_w(Register dst, Operand src);
526 void movq(XMMRegister dst, Operand src);
527 void movq(Operand dst, XMMRegister src);
530 void cmov(Condition cc, Register dst, Register src) {
531 cmov(cc, dst, Operand(src));
533 void cmov(Condition cc, Register dst, Operand src);
543 void xadd(Operand dst, Register src);
544 void xadd_b(Operand dst, Register src);
545 void xadd_w(Operand dst, Register src);
548 void xchg(Register dst, Register src);
549 void xchg(Register dst, Operand src);
557 void cmpxchg(Operand dst, Register src);
558 void cmpxchg_b(Operand dst, Register src);
559 void cmpxchg_w(Operand dst, Register src);
570 void adc(Register dst, Register src) { adc(dst, Operand(src)); }
571 void adc(Register dst, Operand src);
573 void add(Register dst, Register src) { add(dst, Operand(src)); }
574 void add(Register dst, Operand src);
575 void add(Operand dst, Register src);
581 void and_(Register dst, Register src) { and_(dst, Operand(src)); }
582 void and_(Register dst, Operand src);
583 void and_(Operand dst, Register src);
593 void cmpb(Register dst, Register src) { cmpb(Operand(dst), src); }
596 void cmpw(Operand dst, Immediate src);
597 void cmpw(Register dst, Immediate src) { cmpw(Operand(dst), src); }
598 void cmpw(Register dst, Operand src);
599 void cmpw(Register dst, Register src) { cmpw(Operand(dst), src); }
600 void cmpw(Operand dst, Register src);
618 void idiv(Register src) { idiv(Operand(src)); }
619 void idiv(Operand src);
620 void div(Register src) { div(Operand(src)); }
621 void div(Operand src);
624 void imul(Register src); // edx:eax = eax * src.
625 void imul(Register dst, Register src) { imul(dst, Operand(src)); }
626 void imul(Register dst, Operand src); // dst = dst * src.
627 void imul(Register dst, Register src, int32_t imm32); // dst = src * imm32.
628 void imul(Register dst, Operand src, int32_t imm32);
633 void lea(Register dst, Operand src);
636 void mul(Register src); // edx:eax = eax * reg.
645 void or_(Register dst, Register src) { or_(dst, Operand(src)); }
646 void or_(Register dst, Operand src);
647 void or_(Operand dst, Register src);
669 void sbb(Register dst, Register src) { sbb(dst, Operand(src)); }
670 void sbb(Register dst, Operand src);
676 void shld(Register dst, Register src, uint8_t shift);
677 void shld_cl(Register dst, Register src);
683 void shrd(Register dst, Register src, uint8_t shift);
684 void shrd_cl(Register dst, Register src) { shrd_cl(Operand(dst), src); }
685 void shrd_cl(Operand dst, Register src);
689 void sub(Register dst, Register src) { sub(dst, Operand(src)); }
690 void sub(Register dst, Operand src);
691 void sub(Operand dst, Register src);
703 void test_b(Register dst, Register src) { test_b(dst, Operand(src)); }
708 void test_w(Register dst, Register src) { test_w(dst, Operand(src)); }
711 void xor_(Register dst, Register src) { xor_(dst, Operand(src)); }
712 void xor_(Register dst, Operand src);
713 void xor_(Operand dst, Register src);
719 void bt(Operand dst, Register src);
720 void bts(Register dst, Register src) { bts(Operand(dst), src); }
721 void bts(Operand dst, Register src);
722 void bsr(Register dst, Register src) { bsr(dst, Operand(src)); }
723 void bsr(Register dst, Operand src);
724 void bsf(Register dst, Register src) { bsf(dst, Operand(src)); }
725 void bsf(Register dst, Operand src);
856 void addss(XMMRegister dst, XMMRegister src) { addss(dst, Operand(src)); }
857 void addss(XMMRegister dst, Operand src);
858 void subss(XMMRegister dst, XMMRegister src) { subss(dst, Operand(src)); }
859 void subss(XMMRegister dst, Operand src);
860 void mulss(XMMRegister dst, XMMRegister src) { mulss(dst, Operand(src)); }
861 void mulss(XMMRegister dst, Operand src);
862 void divss(XMMRegister dst, XMMRegister src) { divss(dst, Operand(src)); }
863 void divss(XMMRegister dst, Operand src);
864 void sqrtss(XMMRegister dst, XMMRegister src) { sqrtss(dst, Operand(src)); }
865 void sqrtss(XMMRegister dst, Operand src);
867 void ucomiss(XMMRegister dst, XMMRegister src) { ucomiss(dst, Operand(src)); }
868 void ucomiss(XMMRegister dst, Operand src);
869 void movaps(XMMRegister dst, XMMRegister src) { movaps(dst, Operand(src)); }
870 void movaps(XMMRegister dst, Operand src);
871 void movups(XMMRegister dst, XMMRegister src) { movups(dst, Operand(src)); }
872 void movups(XMMRegister dst, Operand src);
873 void movups(Operand dst, XMMRegister src);
874 void shufps(XMMRegister dst, XMMRegister src, byte imm8);
875 void shufpd(XMMRegister dst, XMMRegister src, byte imm8);
877 void movhlps(XMMRegister dst, XMMRegister src);
878 void movlhps(XMMRegister dst, XMMRegister src);
879 void movlps(XMMRegister dst, Operand src);
880 void movlps(Operand dst, XMMRegister src);
881 void movhps(XMMRegister dst, Operand src);
882 void movhps(Operand dst, XMMRegister src);
884 void maxss(XMMRegister dst, XMMRegister src) { maxss(dst, Operand(src)); }
885 void maxss(XMMRegister dst, Operand src);
886 void minss(XMMRegister dst, XMMRegister src) { minss(dst, Operand(src)); }
887 void minss(XMMRegister dst, Operand src);
889 void haddps(XMMRegister dst, Operand src);
890 void haddps(XMMRegister dst, XMMRegister src) { haddps(dst, Operand(src)); }
891 void sqrtpd(XMMRegister dst, Operand src) {
892 sse2_instr(dst, src, 0x66, 0x0F, 0x51);
894 void sqrtpd(XMMRegister dst, XMMRegister src) { sqrtpd(dst, Operand(src)); }
896 void cmpps(XMMRegister dst, Operand src, uint8_t cmp);
897 void cmpps(XMMRegister dst, XMMRegister src, uint8_t cmp) {
898 cmpps(dst, Operand(src), cmp);
900 void cmppd(XMMRegister dst, Operand src, uint8_t cmp);
901 void cmppd(XMMRegister dst, XMMRegister src, uint8_t cmp) {
902 cmppd(dst, Operand(src), cmp);
914 void instr##ps(XMMRegister dst, XMMRegister src) { \
915 cmpps(dst, Operand(src), imm8); \
917 void instr##ps(XMMRegister dst, Operand src) { cmpps(dst, src, imm8); } \
918 void instr##pd(XMMRegister dst, XMMRegister src) { \
919 cmppd(dst, Operand(src), imm8); \
921 void instr##pd(XMMRegister dst, Operand src) { cmppd(dst, src, imm8); }
927 void cvttss2si(Register dst, Operand src);
928 void cvttss2si(Register dst, XMMRegister src) {
929 cvttss2si(dst, Operand(src));
931 void cvttsd2si(Register dst, Operand src);
932 void cvttsd2si(Register dst, XMMRegister src) {
933 cvttsd2si(dst, Operand(src));
935 void cvtsd2si(Register dst, XMMRegister src);
937 void cvtsi2ss(XMMRegister dst, Register src) { cvtsi2ss(dst, Operand(src)); }
938 void cvtsi2ss(XMMRegister dst, Operand src);
939 void cvtsi2sd(XMMRegister dst, Register src) { cvtsi2sd(dst, Operand(src)); }
940 void cvtsi2sd(XMMRegister dst, Operand src);
941 void cvtss2sd(XMMRegister dst, Operand src);
942 void cvtss2sd(XMMRegister dst, XMMRegister src) {
943 cvtss2sd(dst, Operand(src));
945 void cvtdq2pd(XMMRegister dst, XMMRegister src);
946 void cvtpd2ps(XMMRegister dst, XMMRegister src);
947 void cvttps2dq(XMMRegister dst, XMMRegister src) {
948 cvttps2dq(dst, Operand(src));
950 void cvttps2dq(XMMRegister dst, Operand src);
951 void cvttpd2dq(XMMRegister dst, XMMRegister src);
953 void ucomisd(XMMRegister dst, XMMRegister src) { ucomisd(dst, Operand(src)); }
954 void ucomisd(XMMRegister dst, Operand src);
956 void roundss(XMMRegister dst, XMMRegister src, RoundingMode mode);
957 void roundsd(XMMRegister dst, XMMRegister src, RoundingMode mode);
959 void movapd(XMMRegister dst, XMMRegister src) { movapd(dst, Operand(src)); }
960 void movapd(XMMRegister dst, Operand src) {
961 sse2_instr(dst, src, 0x66, 0x0F, 0x28);
963 void movupd(XMMRegister dst, Operand src) {
964 sse2_instr(dst, src, 0x66, 0x0F, 0x10);
967 void movmskpd(Register dst, XMMRegister src);
968 void movmskps(Register dst, XMMRegister src);
970 void pmovmskb(Register dst, XMMRegister src);
972 void cmpltsd(XMMRegister dst, XMMRegister src);
974 void movdqa(XMMRegister dst, Operand src);
975 void movdqa(Operand dst, XMMRegister src);
976 void movdqa(XMMRegister dst, XMMRegister src);
977 void movdqu(XMMRegister dst, Operand src);
978 void movdqu(Operand dst, XMMRegister src);
979 void movdqu(XMMRegister dst, XMMRegister src);
980 void movdq(bool aligned, XMMRegister dst, Operand src) {
982 movdqa(dst, src);
984 movdqu(dst, src);
988 void movd(XMMRegister dst, Register src) { movd(dst, Operand(src)); }
989 void movd(XMMRegister dst, Operand src);
990 void movd(Register dst, XMMRegister src) { movd(Operand(dst), src); }
991 void movd(Operand dst, XMMRegister src);
992 void movsd(XMMRegister dst, XMMRegister src) { movsd(dst, Operand(src)); }
993 void movsd(XMMRegister dst, Operand src);
994 void movsd(Operand dst, XMMRegister src);
996 void movss(XMMRegister dst, Operand src);
997 void movss(Operand dst, XMMRegister src);
998 void movss(XMMRegister dst, XMMRegister src) { movss(dst, Operand(src)); }
1000 void extractps(Operand dst, XMMRegister src, byte imm8);
1001 void extractps(Register dst, XMMRegister src, byte imm8);
1003 void pcmpgtq(XMMRegister dst, XMMRegister src);
1014 void pshufhw(XMMRegister dst, XMMRegister src, uint8_t shuffle) {
1015 pshufhw(dst, Operand(src), shuffle);
1017 void pshufhw(XMMRegister dst, Operand src, uint8_t shuffle);
1018 void pshuflw(XMMRegister dst, XMMRegister src, uint8_t shuffle) {
1019 pshuflw(dst, Operand(src), shuffle);
1021 void pshuflw(XMMRegister dst, Operand src, uint8_t shuffle);
1022 void pshufd(XMMRegister dst, XMMRegister src, uint8_t shuffle) {
1023 pshufd(dst, Operand(src), shuffle);
1025 void pshufd(XMMRegister dst, Operand src, uint8_t shuffle);
1027 void pblendw(XMMRegister dst, XMMRegister src, uint8_t mask) {
1028 pblendw(dst, Operand(src), mask);
1030 void pblendw(XMMRegister dst, Operand src, uint8_t mask);
1032 void palignr(XMMRegister dst, XMMRegister src, uint8_t mask) {
1033 palignr(dst, Operand(src), mask);
1035 void palignr(XMMRegister dst, Operand src, uint8_t mask);
1037 void pextrb(Register dst, XMMRegister src, uint8_t offset) {
1038 pextrb(Operand(dst), src, offset);
1040 void pextrb(Operand dst, XMMRegister src, uint8_t offset);
1042 void movddup(XMMRegister dst, Operand src);
1043 void movddup(XMMRegister dst, XMMRegister src) { movddup(dst, Operand(src)); }
1044 void movshdup(XMMRegister dst, XMMRegister src);
1047 void pextrw(Register dst, XMMRegister src, uint8_t offset) {
1048 pextrw(Operand(dst), src, offset);
1050 void pextrw(Operand dst, XMMRegister src, uint8_t offset);
1051 void pextrd(Register dst, XMMRegister src, uint8_t offset) {
1052 pextrd(Operand(dst), src, offset);
1054 void pextrd(Operand dst, XMMRegister src, uint8_t offset);
1056 void insertps(XMMRegister dst, XMMRegister src, uint8_t offset) {
1057 insertps(dst, Operand(src), offset);
1059 void insertps(XMMRegister dst, Operand src, uint8_t offset);
1060 void pinsrb(XMMRegister dst, Register src, uint8_t offset) {
1061 pinsrb(dst, Operand(src), offset);
1063 void pinsrb(XMMRegister dst, Operand src, uint8_t offset);
1064 void pinsrw(XMMRegister dst, Register src, uint8_t offset) {
1065 pinsrw(dst, Operand(src), offset);
1067 void pinsrw(XMMRegister dst, Operand src, uint8_t offset);
1068 void pinsrd(XMMRegister dst, Register src, uint8_t offset) {
1069 pinsrd(dst, Operand(src), offset);
1071 void pinsrd(XMMRegister dst, Operand src, uint8_t offset);
1073 void roundps(XMMRegister dst, XMMRegister src, RoundingMode mode);
1074 void roundpd(XMMRegister dst, XMMRegister src, RoundingMode mode);
1127 void vsqrtpd(XMMRegister dst, XMMRegister src) { vsqrtpd(dst, Operand(src)); }
1128 void vsqrtpd(XMMRegister dst, Operand src) {
1129 vinstr(0x51, dst, xmm0, src, k66, k0F, kWIG);
1131 void vmovss(Operand dst, XMMRegister src) {
1132 vinstr(0x11, src, xmm0, dst, kF3, k0F, kWIG);
1137 void vmovss(XMMRegister dst, Operand src) {
1138 vinstr(0x10, dst, xmm0, src, kF3, k0F, kWIG);
1140 void vmovsd(Operand dst, XMMRegister src) {
1141 vinstr(0x11, src, xmm0, dst, kF2, k0F, kWIG);
1146 void vmovsd(XMMRegister dst, Operand src) {
1147 vinstr(0x10, dst, xmm0, src, kF2, k0F, kWIG);
1150 void vextractps(Operand dst, XMMRegister src, byte imm8);
1154 void vmovaps(XMMRegister dst, XMMRegister src) { vmovaps(dst, Operand(src)); }
1155 void vmovaps(XMMRegister dst, Operand src) { vps(0x28, dst, xmm0, src); }
1156 void vmovapd(XMMRegister dst, XMMRegister src) { vmovapd(dst, Operand(src)); }
1157 void vmovapd(XMMRegister dst, Operand src) { vpd(0x28, dst, xmm0, src); }
1158 void vmovups(Operand dst, XMMRegister src) { vps(0x11, src, xmm0, dst); }
1159 void vmovups(XMMRegister dst, XMMRegister src) { vmovups(dst, Operand(src)); }
1160 void vmovups(XMMRegister dst, Operand src) { vps(0x10, dst, xmm0, src); }
1161 void vmovupd(XMMRegister dst, Operand src) { vpd(0x10, dst, xmm0, src); }
1174 void vmovlps(Operand dst, XMMRegister src);
1176 void vmovhps(Operand dst, XMMRegister src);
1178 void vpsllw(XMMRegister dst, XMMRegister src, uint8_t imm8);
1179 void vpslld(XMMRegister dst, XMMRegister src, uint8_t imm8);
1180 void vpsllq(XMMRegister dst, XMMRegister src, uint8_t imm8);
1181 void vpsrlw(XMMRegister dst, XMMRegister src, uint8_t imm8);
1182 void vpsrld(XMMRegister dst, XMMRegister src, uint8_t imm8);
1183 void vpsraw(XMMRegister dst, XMMRegister src, uint8_t imm8);
1184 void vpsrad(XMMRegister dst, XMMRegister src, uint8_t imm8);
1185 void vpsrlq(XMMRegister dst, XMMRegister src, uint8_t imm8);
1187 void vpshufhw(XMMRegister dst, XMMRegister src, uint8_t shuffle) {
1188 vpshufhw(dst, Operand(src), shuffle);
1190 void vpshufhw(XMMRegister dst, Operand src, uint8_t shuffle);
1191 void vpshuflw(XMMRegister dst, XMMRegister src, uint8_t shuffle) {
1192 vpshuflw(dst, Operand(src), shuffle);
1194 void vpshuflw(XMMRegister dst, Operand src, uint8_t shuffle);
1195 void vpshufd(XMMRegister dst, XMMRegister src, uint8_t shuffle) {
1196 vpshufd(dst, Operand(src), shuffle);
1198 void vpshufd(XMMRegister dst, Operand src, uint8_t shuffle);
1219 void vpextrb(Register dst, XMMRegister src, uint8_t offset) {
1220 vpextrb(Operand(dst), src, offset);
1222 void vpextrb(Operand dst, XMMRegister src, uint8_t offset);
1223 void vpextrw(Register dst, XMMRegister src, uint8_t offset) {
1224 vpextrw(Operand(dst), src, offset);
1226 void vpextrw(Operand dst, XMMRegister src, uint8_t offset);
1227 void vpextrd(Register dst, XMMRegister src, uint8_t offset) {
1228 vpextrd(Operand(dst), src, offset);
1230 void vpextrd(Operand dst, XMMRegister src, uint8_t offset);
1258 void vroundps(XMMRegister dst, XMMRegister src, RoundingMode mode);
1259 void vroundpd(XMMRegister dst, XMMRegister src, RoundingMode mode);
1261 void vcvtdq2pd(XMMRegister dst, XMMRegister src) {
1262 vinstr(0xE6, dst, xmm0, src, kF3, k0F, kWIG);
1264 void vcvtpd2ps(XMMRegister dst, XMMRegister src) {
1265 vinstr(0x5A, dst, xmm0, src, k66, k0F, kWIG);
1267 void vcvttps2dq(XMMRegister dst, XMMRegister src) {
1268 vcvttps2dq(dst, Operand(src));
1270 void vcvttps2dq(XMMRegister dst, Operand src) {
1271 vinstr(0x5B, dst, xmm0, src, kF3, k0F, kWIG);
1273 void vcvttpd2dq(XMMRegister dst, XMMRegister src) {
1274 vinstr(0xE6, dst, xmm0, src, k66, k0F, kWIG);
1276 void vcvttsd2si(Register dst, XMMRegister src) {
1278 vinstr(0x2c, idst, xmm0, src, kF2, k0F, kW0);
1280 void vcvttsd2si(Register dst, Operand src) {
1282 vinstr(0x2c, idst, xmm0, src, kF2, k0F, kW0);
1290 void vcvttss2si(Register dst, XMMRegister src) {
1292 vinstr(0x2c, idst, xmm0, src, kF3, k0F, kW0);
1294 void vcvttss2si(Register dst, Operand src) {
1296 vinstr(0x2c, idst, xmm0, src, kF3, k0F, kW0);
1299 void vmovddup(XMMRegister dst, Operand src) {
1300 vinstr(0x12, dst, xmm0, src, kF2, k0F, kWIG);
1302 void vmovddup(XMMRegister dst, XMMRegister src) {
1303 vmovddup(dst, Operand(src));
1305 void vmovshdup(XMMRegister dst, XMMRegister src) {
1306 vinstr(0x16, dst, xmm0, src, kF3, k0F, kWIG);
1308 void vbroadcastss(XMMRegister dst, XMMRegister src) {
1309 vinstr(0x18, dst, xmm0, src, k66, k0F38, kW0, AVX2);
1311 void vbroadcastss(XMMRegister dst, Operand src) {
1312 vinstr(0x18, dst, xmm0, src, k66, k0F38, kW0);
1314 void vmovdqa(XMMRegister dst, Operand src) {
1315 vinstr(0x6F, dst, xmm0, src, k66, k0F, kWIG);
1317 void vmovdqa(XMMRegister dst, XMMRegister src) {
1318 vinstr(0x6F, dst, xmm0, src, k66, k0F, kWIG);
1320 void vmovdqu(XMMRegister dst, Operand src) {
1321 vinstr(0x6F, dst, xmm0, src, kF3, k0F, kWIG);
1323 void vmovdqu(Operand dst, XMMRegister src) {
1324 vinstr(0x7F, src, xmm0, dst, kF3, k0F, kWIG);
1326 void vmovd(XMMRegister dst, Register src) { vmovd(dst, Operand(src)); }
1327 void vmovd(XMMRegister dst, Operand src) {
1328 vinstr(0x6E, dst, xmm0, src, k66, k0F, kWIG);
1330 void vmovd(Register dst, XMMRegister src) { movd(Operand(dst), src); }
1331 void vmovd(Operand dst, XMMRegister src) {
1332 vinstr(0x7E, src, xmm0, dst, k66, k0F, kWIG);
1335 void vmovmskpd(Register dst, XMMRegister src);
1336 void vmovmskps(Register dst, XMMRegister src);
1338 void vpmovmskb(Register dst, XMMRegister src);
1340 void vucomisd(XMMRegister dst, XMMRegister src) {
1341 vinstr(0x2E, dst, xmm0, src, k66, k0F, kWIG);
1343 void vucomisd(XMMRegister dst, Operand src) {
1344 vinstr(0x2E, dst, xmm0, src, k66, k0F, kWIG);
1346 void vucomiss(XMMRegister dst, XMMRegister src) {
1347 vinstr(0x2E, dst, xmm0, src, kNoPrefix, k0F, kWIG);
1349 void vucomiss(XMMRegister dst, Operand src) {
1350 vinstr(0x2E, dst, xmm0, src, kNoPrefix, k0F, kWIG);
1366 void blsi(Register dst, Register src) { blsi(dst, Operand(src)); }
1367 void blsi(Register dst, Operand src) { bmi1(0xf3, ebx, dst, src); }
1368 void blsmsk(Register dst, Register src) { blsmsk(dst, Operand(src)); }
1369 void blsmsk(Register dst, Operand src) { bmi1(0xf3, edx, dst, src); }
1370 void blsr(Register dst, Register src) { blsr(dst, Operand(src)); }
1371 void blsr(Register dst, Operand src) { bmi1(0xf3, ecx, dst, src); }
1372 void tzcnt(Register dst, Register src) { tzcnt(dst, Operand(src)); }
1373 void tzcnt(Register dst, Operand src);
1375 void lzcnt(Register dst, Register src) { lzcnt(dst, Operand(src)); }
1376 void lzcnt(Register dst, Operand src);
1378 void popcnt(Register dst, Register src) { popcnt(dst, Operand(src)); }
1379 void popcnt(Register dst, Operand src);
1387 void mulx(Register dst1, Register dst2, Register src) {
1388 mulx(dst1, dst2, Operand(src));
1390 void mulx(Register dst1, Register dst2, Operand src) {
1391 bmi2(kF2, 0xf6, dst1, dst2, src);
1423 void rorx(Register dst, Register src, byte imm8) {
1424 rorx(dst, Operand(src), imm8);
1426 void rorx(Register dst, Operand src, byte imm8);
1429 void ps(byte op, XMMRegister dst, Operand src);
1431 void pd(byte op, XMMRegister dst, Operand src);
1447 void name##ps(XMMRegister dst, XMMRegister src) { \
1448 ps(opcode, dst, Operand(src)); \
1450 void name##ps(XMMRegister dst, Operand src) { ps(opcode, dst, src); } \
1451 void name##pd(XMMRegister dst, XMMRegister src) { \
1452 pd(opcode, dst, Operand(src)); \
1454 void name##pd(XMMRegister dst, Operand src) { pd(opcode, dst, src); }
1505 void instruction(XMMRegister dst, XMMRegister src) { \
1506 instruction(dst, Operand(src)); \
1508 void instruction(XMMRegister dst, Operand src) { \
1509 sse_instr(dst, src, 0x##escape, 0x##opcode); \
1511 void v##instruction(XMMRegister dst, XMMRegister src) { \
1512 v##instruction(dst, Operand(src)); \
1514 void v##instruction(XMMRegister dst, Operand src) { \
1515 vinstr(0x##opcode, dst, xmm0, src, kNoPrefix, k##escape, kWIG); \
1522 void instruction(XMMRegister dst, XMMRegister src) { \
1523 instruction(dst, Operand(src)); \
1525 void instruction(XMMRegister dst, Operand src) { \
1526 sse2_instr(dst, src, 0x##prefix, 0x##escape, 0x##opcode); \
1547 void instruction(XMMRegister dst, XMMRegister src) { \
1548 instruction(dst, Operand(src)); \
1550 void instruction(XMMRegister dst, Operand src) { \
1551 ssse3_instr(dst, src, 0x##prefix, 0x##escape1, 0x##escape2, 0x##opcode); \
1560 void instruction(XMMRegister dst, XMMRegister src) { \
1561 instruction(dst, Operand(src)); \
1563 void instruction(XMMRegister dst, Operand src) { \
1564 sse4_instr(dst, src, 0x##prefix, 0x##escape1, 0x##escape2, 0x##opcode); \
1589 void v##instruction(XMMRegister dst, XMMRegister src) { \
1590 v##instruction(dst, Operand(src)); \
1592 void v##instruction(XMMRegister dst, Operand src) { \
1593 vinstr(0x##opcode, dst, xmm0, src, k##prefix, k##escape1##escape2, kW0); \
1602 void instr(XMMRegister dst, XMMRegister src) { \
1603 vinstr(0x##opcode, dst, xmm0, src, k##prefix, k##escape1##escape2, kW0, \
1606 void instr(XMMRegister dst, Operand src) { \
1607 vinstr(0x##opcode, dst, xmm0, src, k##prefix, k##escape1##escape2, kW0, \
1625 // Prefetch src position into cache level.
1628 void prefetch(Operand src, int level);
1675 void emit_sse_operand(XMMRegister dst, XMMRegister src);
1676 void emit_sse_operand(Register dst, XMMRegister src);
1677 void emit_sse_operand(XMMRegister dst, Register src);
1742 void sse_instr(XMMRegister dst, Operand src, byte prefix, byte opcode);
1743 void sse2_instr(XMMRegister dst, Operand src, byte prefix, byte escape,
1745 void ssse3_instr(XMMRegister dst, Operand src, byte prefix, byte escape1,
1747 void sse4_instr(XMMRegister dst, Operand src, byte prefix, byte escape1,