Lines Matching refs:src

177 void X86_64Assembler::movq(CpuRegister dst, CpuRegister src) {  in movq()  argument
180 EmitRex64(src, dst); in movq()
182 EmitRegisterOperand(src.LowBits(), dst.LowBits()); in movq()
186 void X86_64Assembler::movl(CpuRegister dst, CpuRegister src) { in movl() argument
188 EmitOptionalRex32(dst, src); in movl()
190 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in movl()
194 void X86_64Assembler::movq(CpuRegister dst, const Address& src) { in movq() argument
196 EmitRex64(dst, src); in movq()
198 EmitOperand(dst.LowBits(), src); in movq()
202 void X86_64Assembler::movl(CpuRegister dst, const Address& src) { in movl() argument
204 EmitOptionalRex32(dst, src); in movl()
206 EmitOperand(dst.LowBits(), src); in movl()
210 void X86_64Assembler::movq(const Address& dst, CpuRegister src) { in movq() argument
212 EmitRex64(src, dst); in movq()
214 EmitOperand(src.LowBits(), dst); in movq()
218 void X86_64Assembler::movl(const Address& dst, CpuRegister src) { in movl() argument
220 EmitOptionalRex32(src, dst); in movl()
222 EmitOperand(src.LowBits(), dst); in movl()
233 void X86_64Assembler::movntl(const Address& dst, CpuRegister src) { in movntl() argument
235 EmitOptionalRex32(src, dst); in movntl()
238 EmitOperand(src.LowBits(), dst); in movntl()
241 void X86_64Assembler::movntq(const Address& dst, CpuRegister src) { in movntq() argument
243 EmitRex64(src, dst); in movntq()
246 EmitOperand(src.LowBits(), dst); in movntq()
249 void X86_64Assembler::cmov(Condition c, CpuRegister dst, CpuRegister src) { in cmov() argument
250 cmov(c, dst, src, true); in cmov()
253 void X86_64Assembler::cmov(Condition c, CpuRegister dst, CpuRegister src, bool is64bit) { in cmov() argument
255 EmitOptionalRex(false, is64bit, dst.NeedsRex(), false, src.NeedsRex()); in cmov()
258 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in cmov()
262 void X86_64Assembler::cmov(Condition c, CpuRegister dst, const Address& src, bool is64bit) { in cmov() argument
265 EmitRex64(dst, src); in cmov()
267 EmitOptionalRex32(dst, src); in cmov()
271 EmitOperand(dst.LowBits(), src); in cmov()
275 void X86_64Assembler::movzxb(CpuRegister dst, CpuRegister src) { in movzxb() argument
277 EmitOptionalByteRegNormalizingRex32(dst, src); in movzxb()
280 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in movzxb()
284 void X86_64Assembler::movzxb(CpuRegister dst, const Address& src) { in movzxb() argument
288 EmitOptionalRex32(dst, src); in movzxb()
291 EmitOperand(dst.LowBits(), src); in movzxb()
295 void X86_64Assembler::movsxb(CpuRegister dst, CpuRegister src) { in movsxb() argument
297 EmitOptionalByteRegNormalizingRex32(dst, src); in movsxb()
300 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in movsxb()
304 void X86_64Assembler::movsxb(CpuRegister dst, const Address& src) { in movsxb() argument
308 EmitOptionalRex32(dst, src); in movsxb()
311 EmitOperand(dst.LowBits(), src); in movsxb()
320 void X86_64Assembler::movb(const Address& dst, CpuRegister src) { in movb() argument
322 EmitOptionalByteRegNormalizingRex32(src, dst); in movb()
324 EmitOperand(src.LowBits(), dst); in movb()
338 void X86_64Assembler::movzxw(CpuRegister dst, CpuRegister src) { in movzxw() argument
340 EmitOptionalRex32(dst, src); in movzxw()
343 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in movzxw()
347 void X86_64Assembler::movzxw(CpuRegister dst, const Address& src) { in movzxw() argument
349 EmitOptionalRex32(dst, src); in movzxw()
352 EmitOperand(dst.LowBits(), src); in movzxw()
356 void X86_64Assembler::movsxw(CpuRegister dst, CpuRegister src) { in movsxw() argument
358 EmitOptionalRex32(dst, src); in movsxw()
361 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in movsxw()
365 void X86_64Assembler::movsxw(CpuRegister dst, const Address& src) { in movsxw() argument
367 EmitOptionalRex32(dst, src); in movsxw()
370 EmitOperand(dst.LowBits(), src); in movsxw()
379 void X86_64Assembler::movw(const Address& dst, CpuRegister src) { in movw() argument
382 EmitOptionalRex32(src, dst); in movw()
384 EmitOperand(src.LowBits(), dst); in movw()
400 void X86_64Assembler::leaq(CpuRegister dst, const Address& src) { in leaq() argument
402 EmitRex64(dst, src); in leaq()
404 EmitOperand(dst.LowBits(), src); in leaq()
408 void X86_64Assembler::leal(CpuRegister dst, const Address& src) { in leal() argument
410 EmitOptionalRex32(dst, src); in leal()
412 EmitOperand(dst.LowBits(), src); in leal()
416 void X86_64Assembler::movaps(XmmRegister dst, XmmRegister src) { in movaps() argument
418 vmovaps(dst, src); in movaps()
422 EmitOptionalRex32(dst, src); in movaps()
425 EmitXmmRegisterOperand(dst.LowBits(), src); in movaps()
430 void X86_64Assembler::vmovaps(XmmRegister dst, XmmRegister src) { in vmovaps() argument
437 if (src.NeedsRex()&& dst.NeedsRex()) { in vmovaps()
445 bool rex_bit = (load) ? dst.NeedsRex() : src.NeedsRex(); in vmovaps()
453 src.NeedsRex(), in vmovaps()
472 EmitXmmRegisterOperand(src.LowBits(), dst); in vmovaps()
474 EmitXmmRegisterOperand(dst.LowBits(), src); in vmovaps()
478 void X86_64Assembler::movaps(XmmRegister dst, const Address& src) { in movaps() argument
480 vmovaps(dst, src); in movaps()
484 EmitOptionalRex32(dst, src); in movaps()
487 EmitOperand(dst.LowBits(), src); in movaps()
491 void X86_64Assembler::vmovaps(XmmRegister dst, const Address& src) { in vmovaps() argument
497 uint8_t rex = src.rex(); in vmovaps()
527 EmitOperand(dst.LowBits(), src); in vmovaps()
530 void X86_64Assembler::movups(XmmRegister dst, const Address& src) { in movups() argument
532 vmovups(dst, src); in movups()
536 EmitOptionalRex32(dst, src); in movups()
539 EmitOperand(dst.LowBits(), src); in movups()
543 void X86_64Assembler::vmovups(XmmRegister dst, const Address& src) { in vmovups() argument
549 uint8_t rex = src.rex(); in vmovups()
579 EmitOperand(dst.LowBits(), src); in vmovups()
583 void X86_64Assembler::movaps(const Address& dst, XmmRegister src) { in movaps() argument
585 vmovaps(dst, src); in movaps()
589 EmitOptionalRex32(src, dst); in movaps()
592 EmitOperand(src.LowBits(), dst); in movaps()
596 void X86_64Assembler::vmovaps(const Address& dst, XmmRegister src) { in vmovaps() argument
612 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovaps()
617 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovaps()
633 EmitOperand(src.LowBits(), dst); in vmovaps()
636 void X86_64Assembler::movups(const Address& dst, XmmRegister src) { in movups() argument
638 vmovups(dst, src); in movups()
642 EmitOptionalRex32(src, dst); in movups()
645 EmitOperand(src.LowBits(), dst); in movups()
649 void X86_64Assembler::vmovups(const Address& dst, XmmRegister src) { in vmovups() argument
665 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovups()
670 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovups()
686 EmitOperand(src.LowBits(), dst); in vmovups()
690 void X86_64Assembler::movss(XmmRegister dst, const Address& src) { in movss() argument
693 EmitOptionalRex32(dst, src); in movss()
696 EmitOperand(dst.LowBits(), src); in movss()
700 void X86_64Assembler::movss(const Address& dst, XmmRegister src) { in movss() argument
703 EmitOptionalRex32(src, dst); in movss()
706 EmitOperand(src.LowBits(), dst); in movss()
710 void X86_64Assembler::movss(XmmRegister dst, XmmRegister src) { in movss() argument
713 EmitOptionalRex32(src, dst); // Movss is MR encoding instead of the usual RM. in movss()
716 EmitXmmRegisterOperand(src.LowBits(), dst); in movss()
720 void X86_64Assembler::movsxd(CpuRegister dst, CpuRegister src) { in movsxd() argument
722 EmitRex64(dst, src); in movsxd()
724 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in movsxd()
728 void X86_64Assembler::movsxd(CpuRegister dst, const Address& src) { in movsxd() argument
730 EmitRex64(dst, src); in movsxd()
732 EmitOperand(dst.LowBits(), src); in movsxd()
736 void X86_64Assembler::movd(XmmRegister dst, CpuRegister src) { in movd() argument
737 movd(dst, src, true); in movd()
740 void X86_64Assembler::movd(CpuRegister dst, XmmRegister src) { in movd() argument
741 movd(dst, src, true); in movd()
744 void X86_64Assembler::movd(XmmRegister dst, CpuRegister src, bool is64bit) { in movd() argument
747 EmitOptionalRex(false, is64bit, dst.NeedsRex(), false, src.NeedsRex()); in movd()
750 EmitOperand(dst.LowBits(), Operand(src)); in movd()
753 void X86_64Assembler::movd(CpuRegister dst, XmmRegister src, bool is64bit) { in movd() argument
756 EmitOptionalRex(false, is64bit, src.NeedsRex(), false, dst.NeedsRex()); in movd()
759 EmitOperand(src.LowBits(), Operand(dst)); in movd()
762 void X86_64Assembler::addss(XmmRegister dst, XmmRegister src) { in addss() argument
765 EmitOptionalRex32(dst, src); in addss()
768 EmitXmmRegisterOperand(dst.LowBits(), src); in addss()
771 void X86_64Assembler::addss(XmmRegister dst, const Address& src) { in addss() argument
774 EmitOptionalRex32(dst, src); in addss()
777 EmitOperand(dst.LowBits(), src); in addss()
781 void X86_64Assembler::subss(XmmRegister dst, XmmRegister src) { in subss() argument
784 EmitOptionalRex32(dst, src); in subss()
787 EmitXmmRegisterOperand(dst.LowBits(), src); in subss()
791 void X86_64Assembler::subss(XmmRegister dst, const Address& src) { in subss() argument
794 EmitOptionalRex32(dst, src); in subss()
797 EmitOperand(dst.LowBits(), src); in subss()
801 void X86_64Assembler::mulss(XmmRegister dst, XmmRegister src) { in mulss() argument
804 EmitOptionalRex32(dst, src); in mulss()
807 EmitXmmRegisterOperand(dst.LowBits(), src); in mulss()
811 void X86_64Assembler::mulss(XmmRegister dst, const Address& src) { in mulss() argument
814 EmitOptionalRex32(dst, src); in mulss()
817 EmitOperand(dst.LowBits(), src); in mulss()
821 void X86_64Assembler::divss(XmmRegister dst, XmmRegister src) { in divss() argument
824 EmitOptionalRex32(dst, src); in divss()
827 EmitXmmRegisterOperand(dst.LowBits(), src); in divss()
831 void X86_64Assembler::divss(XmmRegister dst, const Address& src) { in divss() argument
834 EmitOptionalRex32(dst, src); in divss()
837 EmitOperand(dst.LowBits(), src); in divss()
841 void X86_64Assembler::addps(XmmRegister dst, XmmRegister src) { in addps() argument
843 EmitOptionalRex32(dst, src); in addps()
846 EmitXmmRegisterOperand(dst.LowBits(), src); in addps()
850 void X86_64Assembler::subps(XmmRegister dst, XmmRegister src) { in subps() argument
852 EmitOptionalRex32(dst, src); in subps()
855 EmitXmmRegisterOperand(dst.LowBits(), src); in subps()
913 void X86_64Assembler::mulps(XmmRegister dst, XmmRegister src) { in mulps() argument
915 EmitOptionalRex32(dst, src); in mulps()
918 EmitXmmRegisterOperand(dst.LowBits(), src); in mulps()
950 void X86_64Assembler::divps(XmmRegister dst, XmmRegister src) { in divps() argument
952 EmitOptionalRex32(dst, src); in divps()
955 EmitXmmRegisterOperand(dst.LowBits(), src); in divps()
987 void X86_64Assembler::flds(const Address& src) { in flds() argument
990 EmitOperand(0, src); in flds()
1008 void X86_64Assembler::movapd(XmmRegister dst, XmmRegister src) { in movapd() argument
1010 vmovapd(dst, src); in movapd()
1015 EmitOptionalRex32(dst, src); in movapd()
1018 EmitXmmRegisterOperand(dst.LowBits(), src); in movapd()
1022 void X86_64Assembler::vmovapd(XmmRegister dst, XmmRegister src) { in vmovapd() argument
1028 if (src.NeedsRex() && dst.NeedsRex()) { in vmovapd()
1036 bool rex_bit = load ? dst.NeedsRex() : src.NeedsRex(); in vmovapd()
1044 src.NeedsRex(), in vmovapd()
1063 EmitXmmRegisterOperand(src.LowBits(), dst); in vmovapd()
1065 EmitXmmRegisterOperand(dst.LowBits(), src); in vmovapd()
1069 void X86_64Assembler::movapd(XmmRegister dst, const Address& src) { in movapd() argument
1071 vmovapd(dst, src); in movapd()
1076 EmitOptionalRex32(dst, src); in movapd()
1079 EmitOperand(dst.LowBits(), src); in movapd()
1083 void X86_64Assembler::vmovapd(XmmRegister dst, const Address& src) { in vmovapd() argument
1090 uint8_t rex = src.rex(); in vmovapd()
1120 EmitOperand(dst.LowBits(), src); in vmovapd()
1123 void X86_64Assembler::movupd(XmmRegister dst, const Address& src) { in movupd() argument
1125 vmovupd(dst, src); in movupd()
1130 EmitOptionalRex32(dst, src); in movupd()
1133 EmitOperand(dst.LowBits(), src); in movupd()
1137 void X86_64Assembler::vmovupd(XmmRegister dst, const Address& src) { in vmovupd() argument
1144 uint8_t rex = src.rex(); in vmovupd()
1173 EmitOperand(dst.LowBits(), src); in vmovupd()
1176 void X86_64Assembler::movapd(const Address& dst, XmmRegister src) { in movapd() argument
1178 vmovapd(dst, src); in movapd()
1183 EmitOptionalRex32(src, dst); in movapd()
1186 EmitOperand(src.LowBits(), dst); in movapd()
1190 void X86_64Assembler::vmovapd(const Address& dst, XmmRegister src) { in vmovapd() argument
1205 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovapd()
1210 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovapd()
1226 EmitOperand(src.LowBits(), dst); in vmovapd()
1229 void X86_64Assembler::movupd(const Address& dst, XmmRegister src) { in movupd() argument
1231 vmovupd(dst, src); in movupd()
1236 EmitOptionalRex32(src, dst); in movupd()
1239 EmitOperand(src.LowBits(), dst); in movupd()
1243 void X86_64Assembler::vmovupd(const Address& dst, XmmRegister src) { in vmovupd() argument
1259 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovupd()
1264 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovupd()
1280 EmitOperand(src.LowBits(), dst); in vmovupd()
1284 void X86_64Assembler::movsd(XmmRegister dst, const Address& src) { in movsd() argument
1287 EmitOptionalRex32(dst, src); in movsd()
1290 EmitOperand(dst.LowBits(), src); in movsd()
1294 void X86_64Assembler::movsd(const Address& dst, XmmRegister src) { in movsd() argument
1297 EmitOptionalRex32(src, dst); in movsd()
1300 EmitOperand(src.LowBits(), dst); in movsd()
1304 void X86_64Assembler::movsd(XmmRegister dst, XmmRegister src) { in movsd() argument
1307 EmitOptionalRex32(src, dst); // Movsd is MR encoding instead of the usual RM. in movsd()
1310 EmitXmmRegisterOperand(src.LowBits(), dst); in movsd()
1314 void X86_64Assembler::addsd(XmmRegister dst, XmmRegister src) { in addsd() argument
1317 EmitOptionalRex32(dst, src); in addsd()
1320 EmitXmmRegisterOperand(dst.LowBits(), src); in addsd()
1324 void X86_64Assembler::addsd(XmmRegister dst, const Address& src) { in addsd() argument
1327 EmitOptionalRex32(dst, src); in addsd()
1330 EmitOperand(dst.LowBits(), src); in addsd()
1334 void X86_64Assembler::subsd(XmmRegister dst, XmmRegister src) { in subsd() argument
1337 EmitOptionalRex32(dst, src); in subsd()
1340 EmitXmmRegisterOperand(dst.LowBits(), src); in subsd()
1344 void X86_64Assembler::subsd(XmmRegister dst, const Address& src) { in subsd() argument
1347 EmitOptionalRex32(dst, src); in subsd()
1350 EmitOperand(dst.LowBits(), src); in subsd()
1354 void X86_64Assembler::mulsd(XmmRegister dst, XmmRegister src) { in mulsd() argument
1357 EmitOptionalRex32(dst, src); in mulsd()
1360 EmitXmmRegisterOperand(dst.LowBits(), src); in mulsd()
1364 void X86_64Assembler::mulsd(XmmRegister dst, const Address& src) { in mulsd() argument
1367 EmitOptionalRex32(dst, src); in mulsd()
1370 EmitOperand(dst.LowBits(), src); in mulsd()
1374 void X86_64Assembler::divsd(XmmRegister dst, XmmRegister src) { in divsd() argument
1377 EmitOptionalRex32(dst, src); in divsd()
1380 EmitXmmRegisterOperand(dst.LowBits(), src); in divsd()
1384 void X86_64Assembler::divsd(XmmRegister dst, const Address& src) { in divsd() argument
1387 EmitOptionalRex32(dst, src); in divsd()
1390 EmitOperand(dst.LowBits(), src); in divsd()
1394 void X86_64Assembler::addpd(XmmRegister dst, XmmRegister src) { in addpd() argument
1397 EmitOptionalRex32(dst, src); in addpd()
1400 EmitXmmRegisterOperand(dst.LowBits(), src); in addpd()
1433 void X86_64Assembler::subpd(XmmRegister dst, XmmRegister src) { in subpd() argument
1436 EmitOptionalRex32(dst, src); in subpd()
1439 EmitXmmRegisterOperand(dst.LowBits(), src); in subpd()
1472 void X86_64Assembler::mulpd(XmmRegister dst, XmmRegister src) { in mulpd() argument
1475 EmitOptionalRex32(dst, src); in mulpd()
1478 EmitXmmRegisterOperand(dst.LowBits(), src); in mulpd()
1510 void X86_64Assembler::divpd(XmmRegister dst, XmmRegister src) { in divpd() argument
1513 EmitOptionalRex32(dst, src); in divpd()
1516 EmitXmmRegisterOperand(dst.LowBits(), src); in divpd()
1550 void X86_64Assembler::movdqa(XmmRegister dst, XmmRegister src) { in movdqa() argument
1552 vmovdqa(dst, src); in movdqa()
1557 EmitOptionalRex32(dst, src); in movdqa()
1560 EmitXmmRegisterOperand(dst.LowBits(), src); in movdqa()
1564 void X86_64Assembler::vmovdqa(XmmRegister dst, XmmRegister src) { in vmovdqa() argument
1571 if (src.NeedsRex() && dst.NeedsRex()) { in vmovdqa()
1578 bool rex_bit = load ? dst.NeedsRex() : src.NeedsRex(); in vmovdqa()
1586 src.NeedsRex(), in vmovdqa()
1605 EmitXmmRegisterOperand(src.LowBits(), dst); in vmovdqa()
1607 EmitXmmRegisterOperand(dst.LowBits(), src); in vmovdqa()
1611 void X86_64Assembler::movdqa(XmmRegister dst, const Address& src) { in movdqa() argument
1613 vmovdqa(dst, src); in movdqa()
1618 EmitOptionalRex32(dst, src); in movdqa()
1621 EmitOperand(dst.LowBits(), src); in movdqa()
1625 void X86_64Assembler::vmovdqa(XmmRegister dst, const Address& src) { in vmovdqa() argument
1632 uint8_t rex = src.rex(); in vmovdqa()
1662 EmitOperand(dst.LowBits(), src); in vmovdqa()
1665 void X86_64Assembler::movdqu(XmmRegister dst, const Address& src) { in movdqu() argument
1667 vmovdqu(dst, src); in movdqu()
1672 EmitOptionalRex32(dst, src); in movdqu()
1675 EmitOperand(dst.LowBits(), src); in movdqu()
1680 void X86_64Assembler::vmovdqu(XmmRegister dst, const Address& src) { in vmovdqu() argument
1687 uint8_t rex = src.rex(); in vmovdqu()
1717 EmitOperand(dst.LowBits(), src); in vmovdqu()
1720 void X86_64Assembler::movdqa(const Address& dst, XmmRegister src) { in movdqa() argument
1722 vmovdqa(dst, src); in movdqa()
1727 EmitOptionalRex32(src, dst); in movdqa()
1730 EmitOperand(src.LowBits(), dst); in movdqa()
1734 void X86_64Assembler::vmovdqa(const Address& dst, XmmRegister src) { in vmovdqa() argument
1749 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovdqa()
1754 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovdqa()
1770 EmitOperand(src.LowBits(), dst); in vmovdqa()
1773 void X86_64Assembler::movdqu(const Address& dst, XmmRegister src) { in movdqu() argument
1775 vmovdqu(dst, src); in movdqu()
1780 EmitOptionalRex32(src, dst); in movdqu()
1783 EmitOperand(src.LowBits(), dst); in movdqu()
1787 void X86_64Assembler::vmovdqu(const Address& dst, XmmRegister src) { in vmovdqu() argument
1803 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovdqu()
1808 ByteOne = EmitVexPrefixByteOne(src.NeedsRex(), in vmovdqu()
1824 EmitOperand(src.LowBits(), dst); in vmovdqu()
1827 void X86_64Assembler::paddb(XmmRegister dst, XmmRegister src) { in paddb() argument
1830 EmitOptionalRex32(dst, src); in paddb()
1833 EmitXmmRegisterOperand(dst.LowBits(), src); in paddb()
1867 void X86_64Assembler::psubb(XmmRegister dst, XmmRegister src) { in psubb() argument
1870 EmitOptionalRex32(dst, src); in psubb()
1873 EmitXmmRegisterOperand(dst.LowBits(), src); in psubb()
1907 void X86_64Assembler::paddw(XmmRegister dst, XmmRegister src) { in paddw() argument
1910 EmitOptionalRex32(dst, src); in paddw()
1913 EmitXmmRegisterOperand(dst.LowBits(), src); in paddw()
1946 void X86_64Assembler::psubw(XmmRegister dst, XmmRegister src) { in psubw() argument
1949 EmitOptionalRex32(dst, src); in psubw()
1952 EmitXmmRegisterOperand(dst.LowBits(), src); in psubw()
1985 void X86_64Assembler::pmullw(XmmRegister dst, XmmRegister src) { in pmullw() argument
1988 EmitOptionalRex32(dst, src); in pmullw()
1991 EmitXmmRegisterOperand(dst.LowBits(), src); in pmullw()
2023 void X86_64Assembler::paddd(XmmRegister dst, XmmRegister src) { in paddd() argument
2026 EmitOptionalRex32(dst, src); in paddd()
2029 EmitXmmRegisterOperand(dst.LowBits(), src); in paddd()
2061 void X86_64Assembler::psubd(XmmRegister dst, XmmRegister src) { in psubd() argument
2064 EmitOptionalRex32(dst, src); in psubd()
2067 EmitXmmRegisterOperand(dst.LowBits(), src); in psubd()
2071 void X86_64Assembler::pmulld(XmmRegister dst, XmmRegister src) { in pmulld() argument
2074 EmitOptionalRex32(dst, src); in pmulld()
2078 EmitXmmRegisterOperand(dst.LowBits(), src); in pmulld()
2100 void X86_64Assembler::paddq(XmmRegister dst, XmmRegister src) { in paddq() argument
2103 EmitOptionalRex32(dst, src); in paddq()
2106 EmitXmmRegisterOperand(dst.LowBits(), src); in paddq()
2140 void X86_64Assembler::psubq(XmmRegister dst, XmmRegister src) { in psubq() argument
2143 EmitOptionalRex32(dst, src); in psubq()
2146 EmitXmmRegisterOperand(dst.LowBits(), src); in psubq()
2179 void X86_64Assembler::paddusb(XmmRegister dst, XmmRegister src) { in paddusb() argument
2182 EmitOptionalRex32(dst, src); in paddusb()
2185 EmitXmmRegisterOperand(dst.LowBits(), src); in paddusb()
2189 void X86_64Assembler::paddsb(XmmRegister dst, XmmRegister src) { in paddsb() argument
2192 EmitOptionalRex32(dst, src); in paddsb()
2195 EmitXmmRegisterOperand(dst.LowBits(), src); in paddsb()
2199 void X86_64Assembler::paddusw(XmmRegister dst, XmmRegister src) { in paddusw() argument
2202 EmitOptionalRex32(dst, src); in paddusw()
2205 EmitXmmRegisterOperand(dst.LowBits(), src); in paddusw()
2209 void X86_64Assembler::paddsw(XmmRegister dst, XmmRegister src) { in paddsw() argument
2212 EmitOptionalRex32(dst, src); in paddsw()
2215 EmitXmmRegisterOperand(dst.LowBits(), src); in paddsw()
2219 void X86_64Assembler::psubusb(XmmRegister dst, XmmRegister src) { in psubusb() argument
2222 EmitOptionalRex32(dst, src); in psubusb()
2225 EmitXmmRegisterOperand(dst.LowBits(), src); in psubusb()
2229 void X86_64Assembler::psubsb(XmmRegister dst, XmmRegister src) { in psubsb() argument
2232 EmitOptionalRex32(dst, src); in psubsb()
2235 EmitXmmRegisterOperand(dst.LowBits(), src); in psubsb()
2269 void X86_64Assembler::psubusw(XmmRegister dst, XmmRegister src) { in psubusw() argument
2272 EmitOptionalRex32(dst, src); in psubusw()
2275 EmitXmmRegisterOperand(dst.LowBits(), src); in psubusw()
2279 void X86_64Assembler::psubsw(XmmRegister dst, XmmRegister src) { in psubsw() argument
2282 EmitOptionalRex32(dst, src); in psubsw()
2285 EmitXmmRegisterOperand(dst.LowBits(), src); in psubsw()
2289 void X86_64Assembler::cvtsi2ss(XmmRegister dst, CpuRegister src) { in cvtsi2ss() argument
2290 cvtsi2ss(dst, src, false); in cvtsi2ss()
2294 void X86_64Assembler::cvtsi2ss(XmmRegister dst, CpuRegister src, bool is64bit) { in cvtsi2ss() argument
2299 EmitRex64(dst, src); in cvtsi2ss()
2301 EmitOptionalRex32(dst, src); in cvtsi2ss()
2305 EmitOperand(dst.LowBits(), Operand(src)); in cvtsi2ss()
2309 void X86_64Assembler::cvtsi2ss(XmmRegister dst, const Address& src, bool is64bit) { in cvtsi2ss() argument
2314 EmitRex64(dst, src); in cvtsi2ss()
2316 EmitOptionalRex32(dst, src); in cvtsi2ss()
2320 EmitOperand(dst.LowBits(), src); in cvtsi2ss()
2324 void X86_64Assembler::cvtsi2sd(XmmRegister dst, CpuRegister src) { in cvtsi2sd() argument
2325 cvtsi2sd(dst, src, false); in cvtsi2sd()
2329 void X86_64Assembler::cvtsi2sd(XmmRegister dst, CpuRegister src, bool is64bit) { in cvtsi2sd() argument
2334 EmitRex64(dst, src); in cvtsi2sd()
2336 EmitOptionalRex32(dst, src); in cvtsi2sd()
2340 EmitOperand(dst.LowBits(), Operand(src)); in cvtsi2sd()
2344 void X86_64Assembler::cvtsi2sd(XmmRegister dst, const Address& src, bool is64bit) { in cvtsi2sd() argument
2349 EmitRex64(dst, src); in cvtsi2sd()
2351 EmitOptionalRex32(dst, src); in cvtsi2sd()
2355 EmitOperand(dst.LowBits(), src); in cvtsi2sd()
2359 void X86_64Assembler::cvtss2si(CpuRegister dst, XmmRegister src) { in cvtss2si() argument
2362 EmitOptionalRex32(dst, src); in cvtss2si()
2365 EmitXmmRegisterOperand(dst.LowBits(), src); in cvtss2si()
2369 void X86_64Assembler::cvtss2sd(XmmRegister dst, XmmRegister src) { in cvtss2sd() argument
2372 EmitOptionalRex32(dst, src); in cvtss2sd()
2375 EmitXmmRegisterOperand(dst.LowBits(), src); in cvtss2sd()
2379 void X86_64Assembler::cvtss2sd(XmmRegister dst, const Address& src) { in cvtss2sd() argument
2382 EmitOptionalRex32(dst, src); in cvtss2sd()
2385 EmitOperand(dst.LowBits(), src); in cvtss2sd()
2389 void X86_64Assembler::cvtsd2si(CpuRegister dst, XmmRegister src) { in cvtsd2si() argument
2392 EmitOptionalRex32(dst, src); in cvtsd2si()
2395 EmitXmmRegisterOperand(dst.LowBits(), src); in cvtsd2si()
2399 void X86_64Assembler::cvttss2si(CpuRegister dst, XmmRegister src) { in cvttss2si() argument
2400 cvttss2si(dst, src, false); in cvttss2si()
2404 void X86_64Assembler::cvttss2si(CpuRegister dst, XmmRegister src, bool is64bit) { in cvttss2si() argument
2409 EmitRex64(dst, src); in cvttss2si()
2411 EmitOptionalRex32(dst, src); in cvttss2si()
2415 EmitXmmRegisterOperand(dst.LowBits(), src); in cvttss2si()
2419 void X86_64Assembler::cvttsd2si(CpuRegister dst, XmmRegister src) { in cvttsd2si() argument
2420 cvttsd2si(dst, src, false); in cvttsd2si()
2424 void X86_64Assembler::cvttsd2si(CpuRegister dst, XmmRegister src, bool is64bit) { in cvttsd2si() argument
2429 EmitRex64(dst, src); in cvttsd2si()
2431 EmitOptionalRex32(dst, src); in cvttsd2si()
2435 EmitXmmRegisterOperand(dst.LowBits(), src); in cvttsd2si()
2439 void X86_64Assembler::cvtsd2ss(XmmRegister dst, XmmRegister src) { in cvtsd2ss() argument
2442 EmitOptionalRex32(dst, src); in cvtsd2ss()
2445 EmitXmmRegisterOperand(dst.LowBits(), src); in cvtsd2ss()
2449 void X86_64Assembler::cvtsd2ss(XmmRegister dst, const Address& src) { in cvtsd2ss() argument
2452 EmitOptionalRex32(dst, src); in cvtsd2ss()
2455 EmitOperand(dst.LowBits(), src); in cvtsd2ss()
2459 void X86_64Assembler::cvtdq2ps(XmmRegister dst, XmmRegister src) { in cvtdq2ps() argument
2461 EmitOptionalRex32(dst, src); in cvtdq2ps()
2464 EmitXmmRegisterOperand(dst.LowBits(), src); in cvtdq2ps()
2468 void X86_64Assembler::cvtdq2pd(XmmRegister dst, XmmRegister src) { in cvtdq2pd() argument
2471 EmitOptionalRex32(dst, src); in cvtdq2pd()
2474 EmitXmmRegisterOperand(dst.LowBits(), src); in cvtdq2pd()
2554 void X86_64Assembler::roundsd(XmmRegister dst, XmmRegister src, const Immediate& imm) { in roundsd() argument
2557 EmitOptionalRex32(dst, src); in roundsd()
2561 EmitXmmRegisterOperand(dst.LowBits(), src); in roundsd()
2566 void X86_64Assembler::roundss(XmmRegister dst, XmmRegister src, const Immediate& imm) { in roundss() argument
2569 EmitOptionalRex32(dst, src); in roundss()
2573 EmitXmmRegisterOperand(dst.LowBits(), src); in roundss()
2578 void X86_64Assembler::sqrtsd(XmmRegister dst, XmmRegister src) { in sqrtsd() argument
2581 EmitOptionalRex32(dst, src); in sqrtsd()
2584 EmitXmmRegisterOperand(dst.LowBits(), src); in sqrtsd()
2588 void X86_64Assembler::sqrtss(XmmRegister dst, XmmRegister src) { in sqrtss() argument
2591 EmitOptionalRex32(dst, src); in sqrtss()
2594 EmitXmmRegisterOperand(dst.LowBits(), src); in sqrtss()
2598 void X86_64Assembler::xorpd(XmmRegister dst, const Address& src) { in xorpd() argument
2601 EmitOptionalRex32(dst, src); in xorpd()
2604 EmitOperand(dst.LowBits(), src); in xorpd()
2608 void X86_64Assembler::xorpd(XmmRegister dst, XmmRegister src) { in xorpd() argument
2611 EmitOptionalRex32(dst, src); in xorpd()
2614 EmitXmmRegisterOperand(dst.LowBits(), src); in xorpd()
2618 void X86_64Assembler::xorps(XmmRegister dst, const Address& src) { in xorps() argument
2620 EmitOptionalRex32(dst, src); in xorps()
2623 EmitOperand(dst.LowBits(), src); in xorps()
2627 void X86_64Assembler::xorps(XmmRegister dst, XmmRegister src) { in xorps() argument
2629 EmitOptionalRex32(dst, src); in xorps()
2632 EmitXmmRegisterOperand(dst.LowBits(), src); in xorps()
2635 void X86_64Assembler::pxor(XmmRegister dst, XmmRegister src) { in pxor() argument
2638 EmitOptionalRex32(dst, src); in pxor()
2641 EmitXmmRegisterOperand(dst.LowBits(), src); in pxor()
2734 void X86_64Assembler::andpd(XmmRegister dst, const Address& src) { in andpd() argument
2737 EmitOptionalRex32(dst, src); in andpd()
2740 EmitOperand(dst.LowBits(), src); in andpd()
2743 void X86_64Assembler::andpd(XmmRegister dst, XmmRegister src) { in andpd() argument
2746 EmitOptionalRex32(dst, src); in andpd()
2749 EmitXmmRegisterOperand(dst.LowBits(), src); in andpd()
2752 void X86_64Assembler::andps(XmmRegister dst, XmmRegister src) { in andps() argument
2754 EmitOptionalRex32(dst, src); in andps()
2757 EmitXmmRegisterOperand(dst.LowBits(), src); in andps()
2760 void X86_64Assembler::pand(XmmRegister dst, XmmRegister src) { in pand() argument
2763 EmitOptionalRex32(dst, src); in pand()
2766 EmitXmmRegisterOperand(dst.LowBits(), src); in pand()
2878 void X86_64Assembler::andnpd(XmmRegister dst, XmmRegister src) { in andnpd() argument
2881 EmitOptionalRex32(dst, src); in andnpd()
2884 EmitXmmRegisterOperand(dst.LowBits(), src); in andnpd()
2887 void X86_64Assembler::andnps(XmmRegister dst, XmmRegister src) { in andnps() argument
2889 EmitOptionalRex32(dst, src); in andnps()
2892 EmitXmmRegisterOperand(dst.LowBits(), src); in andnps()
2895 void X86_64Assembler::pandn(XmmRegister dst, XmmRegister src) { in pandn() argument
2898 EmitOptionalRex32(dst, src); in pandn()
2901 EmitXmmRegisterOperand(dst.LowBits(), src); in pandn()
2994 void X86_64Assembler::orpd(XmmRegister dst, XmmRegister src) { in orpd() argument
2997 EmitOptionalRex32(dst, src); in orpd()
3000 EmitXmmRegisterOperand(dst.LowBits(), src); in orpd()
3003 void X86_64Assembler::orps(XmmRegister dst, XmmRegister src) { in orps() argument
3005 EmitOptionalRex32(dst, src); in orps()
3008 EmitXmmRegisterOperand(dst.LowBits(), src); in orps()
3011 void X86_64Assembler::por(XmmRegister dst, XmmRegister src) { in por() argument
3014 EmitOptionalRex32(dst, src); in por()
3017 EmitXmmRegisterOperand(dst.LowBits(), src); in por()
3110 void X86_64Assembler::pavgb(XmmRegister dst, XmmRegister src) { in pavgb() argument
3113 EmitOptionalRex32(dst, src); in pavgb()
3116 EmitXmmRegisterOperand(dst.LowBits(), src); in pavgb()
3119 void X86_64Assembler::pavgw(XmmRegister dst, XmmRegister src) { in pavgw() argument
3122 EmitOptionalRex32(dst, src); in pavgw()
3125 EmitXmmRegisterOperand(dst.LowBits(), src); in pavgw()
3128 void X86_64Assembler::psadbw(XmmRegister dst, XmmRegister src) { in psadbw() argument
3131 EmitOptionalRex32(dst, src); in psadbw()
3134 EmitXmmRegisterOperand(dst.LowBits(), src); in psadbw()
3137 void X86_64Assembler::pmaddwd(XmmRegister dst, XmmRegister src) { in pmaddwd() argument
3140 EmitOptionalRex32(dst, src); in pmaddwd()
3143 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaddwd()
3175 void X86_64Assembler::phaddw(XmmRegister dst, XmmRegister src) { in phaddw() argument
3178 EmitOptionalRex32(dst, src); in phaddw()
3182 EmitXmmRegisterOperand(dst.LowBits(), src); in phaddw()
3185 void X86_64Assembler::phaddd(XmmRegister dst, XmmRegister src) { in phaddd() argument
3188 EmitOptionalRex32(dst, src); in phaddd()
3192 EmitXmmRegisterOperand(dst.LowBits(), src); in phaddd()
3195 void X86_64Assembler::haddps(XmmRegister dst, XmmRegister src) { in haddps() argument
3198 EmitOptionalRex32(dst, src); in haddps()
3201 EmitXmmRegisterOperand(dst.LowBits(), src); in haddps()
3204 void X86_64Assembler::haddpd(XmmRegister dst, XmmRegister src) { in haddpd() argument
3207 EmitOptionalRex32(dst, src); in haddpd()
3210 EmitXmmRegisterOperand(dst.LowBits(), src); in haddpd()
3213 void X86_64Assembler::phsubw(XmmRegister dst, XmmRegister src) { in phsubw() argument
3216 EmitOptionalRex32(dst, src); in phsubw()
3220 EmitXmmRegisterOperand(dst.LowBits(), src); in phsubw()
3223 void X86_64Assembler::phsubd(XmmRegister dst, XmmRegister src) { in phsubd() argument
3226 EmitOptionalRex32(dst, src); in phsubd()
3230 EmitXmmRegisterOperand(dst.LowBits(), src); in phsubd()
3233 void X86_64Assembler::hsubps(XmmRegister dst, XmmRegister src) { in hsubps() argument
3236 EmitOptionalRex32(dst, src); in hsubps()
3239 EmitXmmRegisterOperand(dst.LowBits(), src); in hsubps()
3242 void X86_64Assembler::hsubpd(XmmRegister dst, XmmRegister src) { in hsubpd() argument
3245 EmitOptionalRex32(dst, src); in hsubpd()
3248 EmitXmmRegisterOperand(dst.LowBits(), src); in hsubpd()
3251 void X86_64Assembler::pminsb(XmmRegister dst, XmmRegister src) { in pminsb() argument
3254 EmitOptionalRex32(dst, src); in pminsb()
3258 EmitXmmRegisterOperand(dst.LowBits(), src); in pminsb()
3261 void X86_64Assembler::pmaxsb(XmmRegister dst, XmmRegister src) { in pmaxsb() argument
3264 EmitOptionalRex32(dst, src); in pmaxsb()
3268 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaxsb()
3271 void X86_64Assembler::pminsw(XmmRegister dst, XmmRegister src) { in pminsw() argument
3274 EmitOptionalRex32(dst, src); in pminsw()
3277 EmitXmmRegisterOperand(dst.LowBits(), src); in pminsw()
3280 void X86_64Assembler::pmaxsw(XmmRegister dst, XmmRegister src) { in pmaxsw() argument
3283 EmitOptionalRex32(dst, src); in pmaxsw()
3286 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaxsw()
3289 void X86_64Assembler::pminsd(XmmRegister dst, XmmRegister src) { in pminsd() argument
3292 EmitOptionalRex32(dst, src); in pminsd()
3296 EmitXmmRegisterOperand(dst.LowBits(), src); in pminsd()
3299 void X86_64Assembler::pmaxsd(XmmRegister dst, XmmRegister src) { in pmaxsd() argument
3302 EmitOptionalRex32(dst, src); in pmaxsd()
3306 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaxsd()
3309 void X86_64Assembler::pminub(XmmRegister dst, XmmRegister src) { in pminub() argument
3312 EmitOptionalRex32(dst, src); in pminub()
3315 EmitXmmRegisterOperand(dst.LowBits(), src); in pminub()
3318 void X86_64Assembler::pmaxub(XmmRegister dst, XmmRegister src) { in pmaxub() argument
3321 EmitOptionalRex32(dst, src); in pmaxub()
3324 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaxub()
3327 void X86_64Assembler::pminuw(XmmRegister dst, XmmRegister src) { in pminuw() argument
3330 EmitOptionalRex32(dst, src); in pminuw()
3334 EmitXmmRegisterOperand(dst.LowBits(), src); in pminuw()
3337 void X86_64Assembler::pmaxuw(XmmRegister dst, XmmRegister src) { in pmaxuw() argument
3340 EmitOptionalRex32(dst, src); in pmaxuw()
3344 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaxuw()
3347 void X86_64Assembler::pminud(XmmRegister dst, XmmRegister src) { in pminud() argument
3350 EmitOptionalRex32(dst, src); in pminud()
3354 EmitXmmRegisterOperand(dst.LowBits(), src); in pminud()
3357 void X86_64Assembler::pmaxud(XmmRegister dst, XmmRegister src) { in pmaxud() argument
3360 EmitOptionalRex32(dst, src); in pmaxud()
3364 EmitXmmRegisterOperand(dst.LowBits(), src); in pmaxud()
3367 void X86_64Assembler::minps(XmmRegister dst, XmmRegister src) { in minps() argument
3369 EmitOptionalRex32(dst, src); in minps()
3372 EmitXmmRegisterOperand(dst.LowBits(), src); in minps()
3375 void X86_64Assembler::maxps(XmmRegister dst, XmmRegister src) { in maxps() argument
3377 EmitOptionalRex32(dst, src); in maxps()
3380 EmitXmmRegisterOperand(dst.LowBits(), src); in maxps()
3383 void X86_64Assembler::minpd(XmmRegister dst, XmmRegister src) { in minpd() argument
3386 EmitOptionalRex32(dst, src); in minpd()
3389 EmitXmmRegisterOperand(dst.LowBits(), src); in minpd()
3392 void X86_64Assembler::maxpd(XmmRegister dst, XmmRegister src) { in maxpd() argument
3395 EmitOptionalRex32(dst, src); in maxpd()
3398 EmitXmmRegisterOperand(dst.LowBits(), src); in maxpd()
3401 void X86_64Assembler::pcmpeqb(XmmRegister dst, XmmRegister src) { in pcmpeqb() argument
3404 EmitOptionalRex32(dst, src); in pcmpeqb()
3407 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpeqb()
3410 void X86_64Assembler::pcmpeqw(XmmRegister dst, XmmRegister src) { in pcmpeqw() argument
3413 EmitOptionalRex32(dst, src); in pcmpeqw()
3416 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpeqw()
3419 void X86_64Assembler::pcmpeqd(XmmRegister dst, XmmRegister src) { in pcmpeqd() argument
3422 EmitOptionalRex32(dst, src); in pcmpeqd()
3425 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpeqd()
3428 void X86_64Assembler::pcmpeqq(XmmRegister dst, XmmRegister src) { in pcmpeqq() argument
3431 EmitOptionalRex32(dst, src); in pcmpeqq()
3435 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpeqq()
3438 void X86_64Assembler::pcmpgtb(XmmRegister dst, XmmRegister src) { in pcmpgtb() argument
3441 EmitOptionalRex32(dst, src); in pcmpgtb()
3444 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpgtb()
3447 void X86_64Assembler::pcmpgtw(XmmRegister dst, XmmRegister src) { in pcmpgtw() argument
3450 EmitOptionalRex32(dst, src); in pcmpgtw()
3453 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpgtw()
3456 void X86_64Assembler::pcmpgtd(XmmRegister dst, XmmRegister src) { in pcmpgtd() argument
3459 EmitOptionalRex32(dst, src); in pcmpgtd()
3462 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpgtd()
3465 void X86_64Assembler::pcmpgtq(XmmRegister dst, XmmRegister src) { in pcmpgtq() argument
3468 EmitOptionalRex32(dst, src); in pcmpgtq()
3472 EmitXmmRegisterOperand(dst.LowBits(), src); in pcmpgtq()
3475 void X86_64Assembler::shufpd(XmmRegister dst, XmmRegister src, const Immediate& imm) { in shufpd() argument
3478 EmitOptionalRex32(dst, src); in shufpd()
3481 EmitXmmRegisterOperand(dst.LowBits(), src); in shufpd()
3486 void X86_64Assembler::shufps(XmmRegister dst, XmmRegister src, const Immediate& imm) { in shufps() argument
3488 EmitOptionalRex32(dst, src); in shufps()
3491 EmitXmmRegisterOperand(dst.LowBits(), src); in shufps()
3496 void X86_64Assembler::pshufd(XmmRegister dst, XmmRegister src, const Immediate& imm) { in pshufd() argument
3499 EmitOptionalRex32(dst, src); in pshufd()
3502 EmitXmmRegisterOperand(dst.LowBits(), src); in pshufd()
3507 void X86_64Assembler::punpcklbw(XmmRegister dst, XmmRegister src) { in punpcklbw() argument
3510 EmitOptionalRex32(dst, src); in punpcklbw()
3513 EmitXmmRegisterOperand(dst.LowBits(), src); in punpcklbw()
3517 void X86_64Assembler::punpcklwd(XmmRegister dst, XmmRegister src) { in punpcklwd() argument
3520 EmitOptionalRex32(dst, src); in punpcklwd()
3523 EmitXmmRegisterOperand(dst.LowBits(), src); in punpcklwd()
3527 void X86_64Assembler::punpckldq(XmmRegister dst, XmmRegister src) { in punpckldq() argument
3530 EmitOptionalRex32(dst, src); in punpckldq()
3533 EmitXmmRegisterOperand(dst.LowBits(), src); in punpckldq()
3537 void X86_64Assembler::punpcklqdq(XmmRegister dst, XmmRegister src) { in punpcklqdq() argument
3540 EmitOptionalRex32(dst, src); in punpcklqdq()
3543 EmitXmmRegisterOperand(dst.LowBits(), src); in punpcklqdq()
3547 void X86_64Assembler::punpckhbw(XmmRegister dst, XmmRegister src) { in punpckhbw() argument
3550 EmitOptionalRex32(dst, src); in punpckhbw()
3553 EmitXmmRegisterOperand(dst.LowBits(), src); in punpckhbw()
3557 void X86_64Assembler::punpckhwd(XmmRegister dst, XmmRegister src) { in punpckhwd() argument
3560 EmitOptionalRex32(dst, src); in punpckhwd()
3563 EmitXmmRegisterOperand(dst.LowBits(), src); in punpckhwd()
3567 void X86_64Assembler::punpckhdq(XmmRegister dst, XmmRegister src) { in punpckhdq() argument
3570 EmitOptionalRex32(dst, src); in punpckhdq()
3573 EmitXmmRegisterOperand(dst.LowBits(), src); in punpckhdq()
3577 void X86_64Assembler::punpckhqdq(XmmRegister dst, XmmRegister src) { in punpckhqdq() argument
3580 EmitOptionalRex32(dst, src); in punpckhqdq()
3583 EmitXmmRegisterOperand(dst.LowBits(), src); in punpckhqdq()
3695 void X86_64Assembler::fldl(const Address& src) { in fldl() argument
3698 EmitOperand(0, src); in fldl()
3731 void X86_64Assembler::fldcw(const Address& src) { in fldcw() argument
3734 EmitOperand(5, src); in fldcw()
3752 void X86_64Assembler::fildl(const Address& src) { in fildl() argument
3755 EmitOperand(5, src); in fildl()
3759 void X86_64Assembler::filds(const Address& src) { in filds() argument
3762 EmitOperand(0, src); in filds()
3815 void X86_64Assembler::xchgl(CpuRegister dst, CpuRegister src) { in xchgl() argument
3820 const bool src_rax = src.AsRegister() == RAX; in xchgl()
3823 EmitOptionalRex32(src_rax ? dst : src); in xchgl()
3824 EmitUint8(0x90 + (src_rax ? dst.LowBits() : src.LowBits())); in xchgl()
3829 EmitOptionalRex32(src, dst); in xchgl()
3831 EmitRegisterOperand(src.LowBits(), dst.LowBits()); in xchgl()
3835 void X86_64Assembler::xchgq(CpuRegister dst, CpuRegister src) { in xchgq() argument
3840 const bool src_rax = src.AsRegister() == RAX; in xchgq()
3847 EmitRex64(src_rax ? dst : src); in xchgq()
3848 EmitUint8(0x90 + (src_rax ? dst.LowBits() : src.LowBits())); in xchgq()
3854 EmitRex64(src, dst); in xchgq()
3856 EmitRegisterOperand(src.LowBits(), dst.LowBits()); in xchgq()
3959 void X86_64Assembler::addl(CpuRegister dst, CpuRegister src) { in addl() argument
3961 EmitOptionalRex32(dst, src); in addl()
3963 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in addl()
4052 void X86_64Assembler::andl(CpuRegister dst, CpuRegister src) { in andl() argument
4054 EmitOptionalRex32(dst, src); in andl()
4056 EmitOperand(dst.LowBits(), Operand(src)); in andl()
4083 void X86_64Assembler::andq(CpuRegister dst, CpuRegister src) { in andq() argument
4085 EmitRex64(dst, src); in andq()
4087 EmitOperand(dst.LowBits(), Operand(src)); in andq()
4091 void X86_64Assembler::andq(CpuRegister dst, const Address& src) { in andq() argument
4093 EmitRex64(dst, src); in andq()
4095 EmitOperand(dst.LowBits(), src); in andq()
4108 void X86_64Assembler::orl(CpuRegister dst, CpuRegister src) { in orl() argument
4110 EmitOptionalRex32(dst, src); in orl()
4112 EmitOperand(dst.LowBits(), Operand(src)); in orl()
4139 void X86_64Assembler::orq(CpuRegister dst, CpuRegister src) { in orq() argument
4141 EmitRex64(dst, src); in orq()
4143 EmitOperand(dst.LowBits(), Operand(src)); in orq()
4147 void X86_64Assembler::orq(CpuRegister dst, const Address& src) { in orq() argument
4149 EmitRex64(dst, src); in orq()
4151 EmitOperand(dst.LowBits(), src); in orq()
4155 void X86_64Assembler::xorl(CpuRegister dst, CpuRegister src) { in xorl() argument
4157 EmitOptionalRex32(dst, src); in xorl()
4159 EmitOperand(dst.LowBits(), Operand(src)); in xorl()
4178 void X86_64Assembler::xorq(CpuRegister dst, CpuRegister src) { in xorq() argument
4180 EmitRex64(dst, src); in xorq()
4182 EmitOperand(dst.LowBits(), Operand(src)); in xorq()
4193 void X86_64Assembler::xorq(CpuRegister dst, const Address& src) { in xorq() argument
4195 EmitRex64(dst, src); in xorq()
4197 EmitOperand(dst.LowBits(), src); in xorq()
4251 void rex_mem_reg(bool force, bool w, Address* mem, Register* src);
4277 void X86_64Assembler::addq(CpuRegister dst, CpuRegister src) { in addq() argument
4280 EmitRex64(src, dst); in addq()
4282 EmitRegisterOperand(src.LowBits(), dst.LowBits()); in addq()
4310 void X86_64Assembler::subl(CpuRegister dst, CpuRegister src) { in subl() argument
4312 EmitOptionalRex32(dst, src); in subl()
4314 EmitOperand(dst.LowBits(), Operand(src)); in subl()
4333 void X86_64Assembler::subq(CpuRegister dst, CpuRegister src) { in subq() argument
4335 EmitRex64(dst, src); in subq()
4337 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in subq()
4402 void X86_64Assembler::imull(CpuRegister dst, CpuRegister src) { in imull() argument
4404 EmitOptionalRex32(dst, src); in imull()
4407 EmitOperand(dst.LowBits(), Operand(src)); in imull()
4410 void X86_64Assembler::imull(CpuRegister dst, CpuRegister src, const Immediate& imm) { in imull() argument
4414 EmitOptionalRex32(dst, src); in imull()
4421 EmitOperand(dst.LowBits(), Operand(src)); in imull()
4426 EmitOperand(dst.LowBits(), Operand(src)); in imull()
4446 void X86_64Assembler::imulq(CpuRegister dst, CpuRegister src) { in imulq() argument
4448 EmitRex64(dst, src); in imulq()
4451 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in imulq()
4889 void X86_64Assembler::blsi(CpuRegister dst, CpuRegister src) { in blsi() argument
4894 src.NeedsRex(), in blsi()
4904 EmitRegisterOperand(3, src.LowBits()); in blsi()
4907 void X86_64Assembler::blsmsk(CpuRegister dst, CpuRegister src) { in blsmsk() argument
4912 src.NeedsRex(), in blsmsk()
4922 EmitRegisterOperand(2, src.LowBits()); in blsmsk()
4925 void X86_64Assembler::blsr(CpuRegister dst, CpuRegister src) { in blsr() argument
4930 src.NeedsRex(), in blsr()
4940 EmitRegisterOperand(1, src.LowBits()); in blsr()
4957 void X86_64Assembler::bsfl(CpuRegister dst, CpuRegister src) { in bsfl() argument
4959 EmitOptionalRex32(dst, src); in bsfl()
4962 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in bsfl()
4965 void X86_64Assembler::bsfl(CpuRegister dst, const Address& src) { in bsfl() argument
4967 EmitOptionalRex32(dst, src); in bsfl()
4970 EmitOperand(dst.LowBits(), src); in bsfl()
4973 void X86_64Assembler::bsfq(CpuRegister dst, CpuRegister src) { in bsfq() argument
4975 EmitRex64(dst, src); in bsfq()
4978 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in bsfq()
4981 void X86_64Assembler::bsfq(CpuRegister dst, const Address& src) { in bsfq() argument
4983 EmitRex64(dst, src); in bsfq()
4986 EmitOperand(dst.LowBits(), src); in bsfq()
4989 void X86_64Assembler::bsrl(CpuRegister dst, CpuRegister src) { in bsrl() argument
4991 EmitOptionalRex32(dst, src); in bsrl()
4994 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in bsrl()
4997 void X86_64Assembler::bsrl(CpuRegister dst, const Address& src) { in bsrl() argument
4999 EmitOptionalRex32(dst, src); in bsrl()
5002 EmitOperand(dst.LowBits(), src); in bsrl()
5005 void X86_64Assembler::bsrq(CpuRegister dst, CpuRegister src) { in bsrq() argument
5007 EmitRex64(dst, src); in bsrq()
5010 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in bsrq()
5013 void X86_64Assembler::bsrq(CpuRegister dst, const Address& src) { in bsrq() argument
5015 EmitRex64(dst, src); in bsrq()
5018 EmitOperand(dst.LowBits(), src); in bsrq()
5021 void X86_64Assembler::popcntl(CpuRegister dst, CpuRegister src) { in popcntl() argument
5024 EmitOptionalRex32(dst, src); in popcntl()
5027 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in popcntl()
5030 void X86_64Assembler::popcntl(CpuRegister dst, const Address& src) { in popcntl() argument
5033 EmitOptionalRex32(dst, src); in popcntl()
5036 EmitOperand(dst.LowBits(), src); in popcntl()
5039 void X86_64Assembler::popcntq(CpuRegister dst, CpuRegister src) { in popcntq() argument
5042 EmitRex64(dst, src); in popcntq()
5045 EmitRegisterOperand(dst.LowBits(), src.LowBits()); in popcntq()
5048 void X86_64Assembler::popcntq(CpuRegister dst, const Address& src) { in popcntq() argument
5051 EmitRex64(dst, src); in popcntq()
5054 EmitOperand(dst.LowBits(), src); in popcntq()
5293 void X86_64Assembler::EmitOptionalRex32(CpuRegister dst, CpuRegister src) { in EmitOptionalRex32() argument
5294 EmitOptionalRex(false, false, dst.NeedsRex(), false, src.NeedsRex()); in EmitOptionalRex32()
5297 void X86_64Assembler::EmitOptionalRex32(XmmRegister dst, XmmRegister src) { in EmitOptionalRex32() argument
5298 EmitOptionalRex(false, false, dst.NeedsRex(), false, src.NeedsRex()); in EmitOptionalRex32()
5301 void X86_64Assembler::EmitOptionalRex32(CpuRegister dst, XmmRegister src) { in EmitOptionalRex32() argument
5302 EmitOptionalRex(false, false, dst.NeedsRex(), false, src.NeedsRex()); in EmitOptionalRex32()
5305 void X86_64Assembler::EmitOptionalRex32(XmmRegister dst, CpuRegister src) { in EmitOptionalRex32() argument
5306 EmitOptionalRex(false, false, dst.NeedsRex(), false, src.NeedsRex()); in EmitOptionalRex32()
5350 void X86_64Assembler::EmitRex64(CpuRegister dst, CpuRegister src) { in EmitRex64() argument
5351 EmitOptionalRex(false, true, dst.NeedsRex(), false, src.NeedsRex()); in EmitRex64()
5354 void X86_64Assembler::EmitRex64(XmmRegister dst, CpuRegister src) { in EmitRex64() argument
5355 EmitOptionalRex(false, true, dst.NeedsRex(), false, src.NeedsRex()); in EmitRex64()
5358 void X86_64Assembler::EmitRex64(CpuRegister dst, XmmRegister src) { in EmitRex64() argument
5359 EmitOptionalRex(false, true, dst.NeedsRex(), false, src.NeedsRex()); in EmitRex64()
5378 void X86_64Assembler::EmitOptionalByteRegNormalizingRex32(CpuRegister dst, CpuRegister src) { in EmitOptionalByteRegNormalizingRex32() argument
5380 bool force = src.AsRegister() > 3; in EmitOptionalByteRegNormalizingRex32()
5381 EmitOptionalRex(force, false, dst.NeedsRex(), false, src.NeedsRex()); in EmitOptionalByteRegNormalizingRex32()