Lines Matching refs:src
388 pub fn mov_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in mov_rr()
391 OperandSize::S8 => asm::inst::movb_mr::new(dst, src).into(), in mov_rr()
392 OperandSize::S16 => asm::inst::movw_mr::new(dst, src).into(), in mov_rr()
393 OperandSize::S32 => asm::inst::movl_mr::new(dst, src).into(), in mov_rr()
394 OperandSize::S64 => asm::inst::movq_mr::new(dst, src).into(), in mov_rr()
401 pub fn mov_rm(&mut self, src: Reg, addr: &Address, size: OperandSize, flags: MemFlags) { in mov_rm()
405 OperandSize::S8 => asm::inst::movb_mr::new(dst, src).into(), in mov_rm()
406 OperandSize::S16 => asm::inst::movw_mr::new(dst, src).into(), in mov_rm()
407 OperandSize::S32 => asm::inst::movl_mr::new(dst, src).into(), in mov_rm()
408 OperandSize::S64 => asm::inst::movq_mr::new(dst, src).into(), in mov_rm()
415 pub fn mov_im(&mut self, src: i32, addr: &Address, size: OperandSize, flags: MemFlags) { in mov_im()
420 let src = i8::try_from(src).unwrap(); in mov_im() localVariable
421 asm::inst::movb_mi::new(dst, src.cast_unsigned()).into() in mov_im()
424 let src = i16::try_from(src).unwrap(); in mov_im() localVariable
425 asm::inst::movw_mi::new(dst, src.cast_unsigned()).into() in mov_im()
427 OperandSize::S32 => asm::inst::movl_mi::new(dst, src.cast_unsigned()).into(), in mov_im()
428 OperandSize::S64 => asm::inst::movq_mi_sxl::new(dst, src).into(), in mov_im()
447 let src = Self::to_synthetic_amode(addr, memflags); in movzx_mr() localVariable
452 ExtMode::BL => asm::inst::movzbl_rm::new(dst, src).into(), in movzx_mr()
453 ExtMode::BQ => asm::inst::movzbq_rm::new(dst, src).into(), in movzx_mr()
454 ExtMode::WL => asm::inst::movzwl_rm::new(dst, src).into(), in movzx_mr()
455 ExtMode::WQ => asm::inst::movzwq_rm::new(dst, src).into(), in movzx_mr()
464 asm::inst::movl_rm::new(dst, src).into() in movzx_mr()
470 let inst = asm::inst::movq_rm::new(dst, src).into(); in movzx_mr()
483 let src = Self::to_synthetic_amode(addr, memflags); in movsx_mr() localVariable
486 ExtMode::BL => asm::inst::movsbl_rm::new(dst, src).into(), in movsx_mr()
487 ExtMode::BQ => asm::inst::movsbq_rm::new(dst, src).into(), in movsx_mr()
488 ExtMode::WL => asm::inst::movswl_rm::new(dst, src).into(), in movsx_mr()
489 ExtMode::WQ => asm::inst::movswq_rm::new(dst, src).into(), in movsx_mr()
490 ExtMode::LQ => asm::inst::movslq_rm::new(dst, src).into(), in movsx_mr()
496 pub fn movzx_rr(&mut self, src: Reg, dst: WritableReg, kind: Extend<Zero>) { in movzx_rr()
499 ExtMode::BL => asm::inst::movzbl_rm::new(dst, src).into(), in movzx_rr()
500 ExtMode::BQ => asm::inst::movzbq_rm::new(dst, src).into(), in movzx_rr()
501 ExtMode::WL => asm::inst::movzwl_rm::new(dst, src).into(), in movzx_rr()
502 ExtMode::WQ => asm::inst::movzwq_rm::new(dst, src).into(), in movzx_rr()
510 asm::inst::movl_rm::new(dst, src).into() in movzx_rr()
517 pub fn movsx_rr(&mut self, src: Reg, dst: WritableReg, kind: Extend<Signed>) { in movsx_rr()
520 ExtMode::BL => asm::inst::movsbl_rm::new(dst, src).into(), in movsx_rr()
521 ExtMode::BQ => asm::inst::movsbq_rm::new(dst, src).into(), in movsx_rr()
522 ExtMode::WL => asm::inst::movswl_rm::new(dst, src).into(), in movsx_rr()
523 ExtMode::WQ => asm::inst::movswq_rm::new(dst, src).into(), in movsx_rr()
524 ExtMode::LQ => asm::inst::movslq_rm::new(dst, src).into(), in movsx_rr()
530 pub fn cmov(&mut self, src: Reg, dst: WritableReg, cc: IntCmpKind, size: OperandSize) { in cmov()
537 Eq => asm::inst::cmovel_rm::new(dst, src).into(), in cmov()
538 Ne => asm::inst::cmovnel_rm::new(dst, src).into(), in cmov()
539 LtS => asm::inst::cmovll_rm::new(dst, src).into(), in cmov()
540 LtU => asm::inst::cmovbl_rm::new(dst, src).into(), in cmov()
541 GtS => asm::inst::cmovgl_rm::new(dst, src).into(), in cmov()
542 GtU => asm::inst::cmoval_rm::new(dst, src).into(), in cmov()
543 LeS => asm::inst::cmovlel_rm::new(dst, src).into(), in cmov()
544 LeU => asm::inst::cmovbel_rm::new(dst, src).into(), in cmov()
545 GeS => asm::inst::cmovgel_rm::new(dst, src).into(), in cmov()
546 GeU => asm::inst::cmovael_rm::new(dst, src).into(), in cmov()
549 Eq => asm::inst::cmoveq_rm::new(dst, src).into(), in cmov()
550 Ne => asm::inst::cmovneq_rm::new(dst, src).into(), in cmov()
551 LtS => asm::inst::cmovlq_rm::new(dst, src).into(), in cmov()
552 LtU => asm::inst::cmovbq_rm::new(dst, src).into(), in cmov()
553 GtS => asm::inst::cmovgq_rm::new(dst, src).into(), in cmov()
554 GtU => asm::inst::cmovaq_rm::new(dst, src).into(), in cmov()
555 LeS => asm::inst::cmovleq_rm::new(dst, src).into(), in cmov()
556 LeU => asm::inst::cmovbeq_rm::new(dst, src).into(), in cmov()
557 GeS => asm::inst::cmovgeq_rm::new(dst, src).into(), in cmov()
558 GeU => asm::inst::cmovaeq_rm::new(dst, src).into(), in cmov()
567 pub fn xmm_mov_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_mov_rr()
574 self.emit(Inst::gen_move(dst.map(|r| r.into()), src.into(), ty)); in xmm_mov_rr()
580 src: &Address, in xmm_mov_mr()
589 let src = Self::to_synthetic_amode(src, flags); in xmm_mov_mr() localVariable
592 S32 => asm::inst::movss_a_m::new(dst, src).into(), in xmm_mov_mr()
593 S64 => asm::inst::movsd_a_m::new(dst, src).into(), in xmm_mov_mr()
594 S128 => asm::inst::movdqu_a::new(dst, src).into(), in xmm_mov_mr()
603 src: &Address, in xmm_vpmov_mr()
609 let src = Self::to_synthetic_amode(src, flags); in xmm_vpmov_mr() localVariable
612 VpmovKind::E8x8S => asm::inst::vpmovsxbw_a::new(dst, src).into(), in xmm_vpmov_mr()
613 VpmovKind::E8x8U => asm::inst::vpmovzxbw_a::new(dst, src).into(), in xmm_vpmov_mr()
614 VpmovKind::E16x4S => asm::inst::vpmovsxwd_a::new(dst, src).into(), in xmm_vpmov_mr()
615 VpmovKind::E16x4U => asm::inst::vpmovzxwd_a::new(dst, src).into(), in xmm_vpmov_mr()
616 VpmovKind::E32x2S => asm::inst::vpmovsxdq_a::new(dst, src).into(), in xmm_vpmov_mr()
617 VpmovKind::E32x2U => asm::inst::vpmovzxdq_a::new(dst, src).into(), in xmm_vpmov_mr()
623 pub fn xmm_vpmov_rr(&mut self, src: Reg, dst: WritableReg, kind: VpmovKind) { in xmm_vpmov_rr()
626 VpmovKind::E8x8S => asm::inst::vpmovsxbw_a::new(dst, src).into(), in xmm_vpmov_rr()
627 VpmovKind::E8x8U => asm::inst::vpmovzxbw_a::new(dst, src).into(), in xmm_vpmov_rr()
628 VpmovKind::E16x4S => asm::inst::vpmovsxwd_a::new(dst, src).into(), in xmm_vpmov_rr()
629 VpmovKind::E16x4U => asm::inst::vpmovzxwd_a::new(dst, src).into(), in xmm_vpmov_rr()
630 VpmovKind::E32x2S => asm::inst::vpmovsxdq_a::new(dst, src).into(), in xmm_vpmov_rr()
631 VpmovKind::E32x2U => asm::inst::vpmovzxdq_a::new(dst, src).into(), in xmm_vpmov_rr()
639 src: &Address, in xmm_vpbroadcast_mr()
645 let src = Self::to_synthetic_amode(src, flags); in xmm_vpbroadcast_mr() localVariable
648 OperandSize::S8 => asm::inst::vpbroadcastb_a::new(dst, src).into(), in xmm_vpbroadcast_mr()
649 OperandSize::S16 => asm::inst::vpbroadcastw_a::new(dst, src).into(), in xmm_vpbroadcast_mr()
650 OperandSize::S32 => asm::inst::vpbroadcastd_a::new(dst, src).into(), in xmm_vpbroadcast_mr()
657 pub fn xmm_vpbroadcast_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_vpbroadcast_rr()
658 assert!(src.is_float() && dst.to_reg().is_float()); in xmm_vpbroadcast_rr()
661 OperandSize::S8 => asm::inst::vpbroadcastb_a::new(dst, src).into(), in xmm_vpbroadcast_rr()
662 OperandSize::S16 => asm::inst::vpbroadcastw_a::new(dst, src).into(), in xmm_vpbroadcast_rr()
663 OperandSize::S32 => asm::inst::vpbroadcastd_a::new(dst, src).into(), in xmm_vpbroadcast_rr()
672 src: &Address, in xmm_vpshuf_mr()
679 let src = Self::to_synthetic_amode(src, flags); in xmm_vpshuf_mr() localVariable
681 OperandSize::S32 => asm::inst::vpshufd_a::new(dst, src, mask).into(), in xmm_vpshuf_mr()
688 pub fn xmm_vpshuf_rr(&mut self, src: Reg, dst: WritableReg, mask: u8, size: OperandSize) { in xmm_vpshuf_rr()
692 OperandSize::S16 => asm::inst::vpshuflw_a::new(dst, src, mask).into(), in xmm_vpshuf_rr()
693 OperandSize::S32 => asm::inst::vpshufd_a::new(dst, src, mask).into(), in xmm_vpshuf_rr()
701 pub fn xmm_mov_rm(&mut self, src: Reg, dst: &Address, size: OperandSize, flags: MemFlags) { in xmm_mov_rm()
704 assert!(src.is_float()); in xmm_mov_rm()
707 let src: Xmm = src.into(); in xmm_mov_rm() localVariable
709 S32 => asm::inst::movss_c_m::new(dst, src).into(), in xmm_mov_rm()
710 S64 => asm::inst::movsd_c_m::new(dst, src).into(), in xmm_mov_rm()
711 S128 => asm::inst::movdqu_b::new(dst, src).into(), in xmm_mov_rm()
718 pub fn xmm_cmov(&mut self, src: Reg, dst: WritableReg, cc: IntCmpKind, size: OperandSize) { in xmm_cmov()
731 consequent: Xmm::unwrap_new(src.into()), in xmm_cmov()
738 pub fn sub_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in sub_rr()
741 OperandSize::S8 => asm::inst::subb_rm::new(dst, src).into(), in sub_rr()
742 OperandSize::S16 => asm::inst::subw_rm::new(dst, src).into(), in sub_rr()
743 OperandSize::S32 => asm::inst::subl_rm::new(dst, src).into(), in sub_rr()
744 OperandSize::S64 => asm::inst::subq_rm::new(dst, src).into(), in sub_rr()
764 pub fn and_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in and_rr()
767 OperandSize::S8 => asm::inst::andb_rm::new(dst, src).into(), in and_rr()
768 OperandSize::S16 => asm::inst::andw_rm::new(dst, src).into(), in and_rr()
769 OperandSize::S32 => asm::inst::andl_rm::new(dst, src).into(), in and_rr()
770 OperandSize::S64 => asm::inst::andq_rm::new(dst, src).into(), in and_rr()
789 pub fn xmm_and_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_and_rr()
792 OperandSize::S32 => asm::inst::andps_a::new(dst, src).into(), in xmm_and_rr()
793 OperandSize::S64 => asm::inst::andpd_a::new(dst, src).into(), in xmm_and_rr()
800 pub fn xmm_andn_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_andn_rr()
803 OperandSize::S32 => asm::inst::andnps_a::new(dst, src).into(), in xmm_andn_rr()
804 OperandSize::S64 => asm::inst::andnpd_a::new(dst, src).into(), in xmm_andn_rr()
810 pub fn gpr_to_xmm(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in gpr_to_xmm()
813 OperandSize::S32 => asm::inst::movd_a::new(dst, src).into(), in gpr_to_xmm()
814 OperandSize::S64 => asm::inst::movq_a::new(dst, src).into(), in gpr_to_xmm()
821 pub fn xmm_to_gpr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_to_gpr()
823 let src: Xmm = src.into(); in xmm_to_gpr() localVariable
825 OperandSize::S32 => asm::inst::movd_b::new(dst, src).into(), in xmm_to_gpr()
826 OperandSize::S64 => asm::inst::movq_b::new(dst, src).into(), in xmm_to_gpr()
836 src: Reg, in cvt_float_to_sint_seq()
848 src: src.into(), in cvt_float_to_sint_seq()
858 src: Reg, in cvt_float_to_uint_seq()
871 src: src.into(), in cvt_float_to_uint_seq()
882 src: Reg, in cvt_sint_to_float()
890 (S32, S32) => asm::inst::cvtsi2ssl_a::new(dst, src).into(), in cvt_sint_to_float()
891 (S32, S64) => asm::inst::cvtsi2sdl_a::new(dst, src).into(), in cvt_sint_to_float()
892 (S64, S32) => asm::inst::cvtsi2ssq_a::new(dst, src).into(), in cvt_sint_to_float()
893 (S64, S64) => asm::inst::cvtsi2sdq_a::new(dst, src).into(), in cvt_sint_to_float()
902 src: Reg, in cvt_uint64_to_float_seq()
910 src: src.into(), in cvt_uint64_to_float_seq()
920 src: Reg, in cvt_float_to_float()
928 (S32, S64) => asm::inst::cvtss2sd_a::new(dst, src).into(), in cvt_float_to_float()
929 (S64, S32) => asm::inst::cvtsd2ss_a::new(dst, src).into(), in cvt_float_to_float()
935 pub fn or_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in or_rr()
938 OperandSize::S8 => asm::inst::orb_rm::new(dst, src).into(), in or_rr()
939 OperandSize::S16 => asm::inst::orw_rm::new(dst, src).into(), in or_rr()
940 OperandSize::S32 => asm::inst::orl_rm::new(dst, src).into(), in or_rr()
941 OperandSize::S64 => asm::inst::orq_rm::new(dst, src).into(), in or_rr()
959 pub fn xmm_or_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_or_rr()
962 OperandSize::S32 => asm::inst::orps_a::new(dst, src).into(), in xmm_or_rr()
963 OperandSize::S64 => asm::inst::orpd_a::new(dst, src).into(), in xmm_or_rr()
970 pub fn xor_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xor_rr()
973 OperandSize::S8 => asm::inst::xorb_rm::new(dst, src).into(), in xor_rr()
974 OperandSize::S16 => asm::inst::xorw_rm::new(dst, src).into(), in xor_rr()
975 OperandSize::S32 => asm::inst::xorl_rm::new(dst, src).into(), in xor_rr()
976 OperandSize::S64 => asm::inst::xorq_rm::new(dst, src).into(), in xor_rr()
995 pub fn xmm_xor_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_xor_rr()
998 OperandSize::S32 => asm::inst::xorps_a::new(dst, src).into(), in xmm_xor_rr()
999 OperandSize::S64 => asm::inst::xorpd_a::new(dst, src).into(), in xmm_xor_rr()
1006 pub fn shift_rr(&mut self, src: Reg, dst: WritableReg, kind: ShiftKind, size: OperandSize) { in shift_rr()
1008 let src: Gpr = src.into(); in shift_rr() localVariable
1010 (ShiftKind::Shl, OperandSize::S32) => asm::inst::shll_mc::new(dst, src).into(), in shift_rr()
1011 (ShiftKind::Shl, OperandSize::S64) => asm::inst::shlq_mc::new(dst, src).into(), in shift_rr()
1013 (ShiftKind::ShrS, OperandSize::S32) => asm::inst::sarl_mc::new(dst, src).into(), in shift_rr()
1014 (ShiftKind::ShrS, OperandSize::S64) => asm::inst::sarq_mc::new(dst, src).into(), in shift_rr()
1016 (ShiftKind::ShrU, OperandSize::S32) => asm::inst::shrl_mc::new(dst, src).into(), in shift_rr()
1017 (ShiftKind::ShrU, OperandSize::S64) => asm::inst::shrq_mc::new(dst, src).into(), in shift_rr()
1019 (ShiftKind::Rotl, OperandSize::S32) => asm::inst::roll_mc::new(dst, src).into(), in shift_rr()
1020 (ShiftKind::Rotl, OperandSize::S64) => asm::inst::rolq_mc::new(dst, src).into(), in shift_rr()
1022 (ShiftKind::Rotr, OperandSize::S32) => asm::inst::rorl_mc::new(dst, src).into(), in shift_rr()
1023 (ShiftKind::Rotr, OperandSize::S64) => asm::inst::rorq_mc::new(dst, src).into(), in shift_rr()
1167 let src = dst.to_reg(); in mul_ir() localVariable
1170 S16 => asm::inst::imulw_rmi::new(dst, src, u16::try_from(imm).unwrap()).into(), in mul_ir()
1171 S32 => asm::inst::imull_rmi::new(dst, src, imm as u32).into(), in mul_ir()
1172 S64 => asm::inst::imulq_rmi_sxl::new(dst, src, imm).into(), in mul_ir()
1179 pub fn mul_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in mul_rr()
1183 S16 => asm::inst::imulw_rm::new(dst, src).into(), in mul_rr()
1184 S32 => asm::inst::imull_rm::new(dst, src).into(), in mul_rr()
1185 S64 => asm::inst::imulq_rm::new(dst, src).into(), in mul_rr()
1205 pub fn add_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in add_rr()
1208 OperandSize::S8 => asm::inst::addb_rm::new(dst, src).into(), in add_rr()
1209 OperandSize::S16 => asm::inst::addw_rm::new(dst, src).into(), in add_rr()
1210 OperandSize::S32 => asm::inst::addl_rm::new(dst, src).into(), in add_rr()
1211 OperandSize::S64 => asm::inst::addq_rm::new(dst, src).into(), in add_rr()
1346 pub fn popcnt(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in popcnt()
1353 OperandSize::S16 => asm::inst::popcntw_rm::new(dst, src).into(), in popcnt()
1354 OperandSize::S32 => asm::inst::popcntl_rm::new(dst, src).into(), in popcnt()
1355 OperandSize::S64 => asm::inst::popcntq_rm::new(dst, src).into(), in popcnt()
1428 pub fn lzcnt(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in lzcnt()
1432 OperandSize::S16 => asm::inst::lzcntw_rm::new(dst, src).into(), in lzcnt()
1433 OperandSize::S32 => asm::inst::lzcntl_rm::new(dst, src).into(), in lzcnt()
1434 OperandSize::S64 => asm::inst::lzcntq_rm::new(dst, src).into(), in lzcnt()
1442 pub fn tzcnt(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in tzcnt()
1446 OperandSize::S16 => asm::inst::tzcntw_a::new(dst, src).into(), in tzcnt()
1447 OperandSize::S32 => asm::inst::tzcntl_a::new(dst, src).into(), in tzcnt()
1448 OperandSize::S64 => asm::inst::tzcntq_a::new(dst, src).into(), in tzcnt()
1456 pub fn bsr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in bsr()
1459 OperandSize::S16 => asm::inst::bsrw_rm::new(dst, src).into(), in bsr()
1460 OperandSize::S32 => asm::inst::bsrl_rm::new(dst, src).into(), in bsr()
1461 OperandSize::S64 => asm::inst::bsrq_rm::new(dst, src).into(), in bsr()
1485 pub fn bsf(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in bsf()
1488 OperandSize::S16 => asm::inst::bsfw_rm::new(dst, src).into(), in bsf()
1489 OperandSize::S32 => asm::inst::bsfl_rm::new(dst, src).into(), in bsf()
1490 OperandSize::S64 => asm::inst::bsfq_rm::new(dst, src).into(), in bsf()
1497 pub fn xmm_add_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_add_rr()
1500 OperandSize::S32 => asm::inst::addss_a::new(dst, src).into(), in xmm_add_rr()
1501 OperandSize::S64 => asm::inst::addsd_a::new(dst, src).into(), in xmm_add_rr()
1508 pub fn xmm_sub_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_sub_rr()
1511 OperandSize::S32 => asm::inst::subss_a::new(dst, src).into(), in xmm_sub_rr()
1512 OperandSize::S64 => asm::inst::subsd_a::new(dst, src).into(), in xmm_sub_rr()
1519 pub fn xmm_mul_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_mul_rr()
1523 S32 => asm::inst::mulss_a::new(dst, src).into(), in xmm_mul_rr()
1524 S64 => asm::inst::mulsd_a::new(dst, src).into(), in xmm_mul_rr()
1531 pub fn xmm_div_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_div_rr()
1534 OperandSize::S32 => asm::inst::divss_a::new(dst, src).into(), in xmm_div_rr()
1535 OperandSize::S64 => asm::inst::divsd_a::new(dst, src).into(), in xmm_div_rr()
1542 pub fn xmm_min_seq(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_min_seq()
1546 lhs: src.into(), in xmm_min_seq()
1553 pub fn xmm_max_seq(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_max_seq()
1557 lhs: src.into(), in xmm_max_seq()
1567 src: Reg, in xmm_rounds_rr()
1582 OperandSize::S32 => asm::inst::roundss_rmi::new(dst, src, imm).into(), in xmm_rounds_rr()
1583 OperandSize::S64 => asm::inst::roundsd_rmi::new(dst, src, imm).into(), in xmm_rounds_rr()
1590 pub fn sqrt(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in sqrt()
1594 S32 => asm::inst::sqrtss_a::new(dst, src).into(), in sqrt()
1595 S64 => asm::inst::sqrtsd_a::new(dst, src).into(), in sqrt()
1673 pub fn adc_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in adc_rr()
1676 OperandSize::S8 => asm::inst::adcb_rm::new(dst, src).into(), in adc_rr()
1677 OperandSize::S16 => asm::inst::adcw_rm::new(dst, src).into(), in adc_rr()
1678 OperandSize::S32 => asm::inst::adcl_rm::new(dst, src).into(), in adc_rr()
1679 OperandSize::S64 => asm::inst::adcq_rm::new(dst, src).into(), in adc_rr()
1685 pub fn sbb_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in sbb_rr()
1688 OperandSize::S8 => asm::inst::sbbb_rm::new(dst, src).into(), in sbb_rr()
1689 OperandSize::S16 => asm::inst::sbbw_rm::new(dst, src).into(), in sbb_rr()
1690 OperandSize::S32 => asm::inst::sbbl_rm::new(dst, src).into(), in sbb_rr()
1691 OperandSize::S64 => asm::inst::sbbq_rm::new(dst, src).into(), in sbb_rr()
1734 pub fn xmm_vpshufb_rrm(&mut self, dst: WritableReg, src: Reg, mask: &Address) { in xmm_vpshufb_rrm()
1737 let inst = asm::inst::vpshufb_b::new(dst, src, mask).into(); in xmm_vpshufb_rrm()
1743 pub fn xmm_vpshufb_rrr(&mut self, dst: WritableReg, src: Reg, mask: Reg) { in xmm_vpshufb_rrr()
1745 let inst = asm::inst::vpshufb_b::new(dst, src, mask).into(); in xmm_vpshufb_rrr()
1837 src: Reg, in xmm_vpextr_rm()
1845 OperandSize::S8 => asm::inst::vpextrb_a::new(dst, src, lane).into(), in xmm_vpextr_rm()
1846 OperandSize::S16 => asm::inst::vpextrw_b::new(dst, src, lane).into(), in xmm_vpextr_rm()
1847 OperandSize::S32 => asm::inst::vpextrd_a::new(dst, src, lane).into(), in xmm_vpextr_rm()
1848 OperandSize::S64 => asm::inst::vpextrq_a::new(dst, src, lane).into(), in xmm_vpextr_rm()
1855 pub fn xmm_vpextr_rr(&mut self, dst: WritableReg, src: Reg, lane: u8, size: OperandSize) { in xmm_vpextr_rr()
1858 OperandSize::S8 => asm::inst::vpextrb_a::new(dst, src, lane).into(), in xmm_vpextr_rr()
1859 OperandSize::S16 => asm::inst::vpextrw_a::new(dst, src, lane).into(), in xmm_vpextr_rr()
1860 OperandSize::S32 => asm::inst::vpextrd_a::new(dst, src, lane).into(), in xmm_vpextr_rr()
1861 OperandSize::S64 => asm::inst::vpextrq_a::new(dst, src, lane).into(), in xmm_vpextr_rr()
1936 pub fn xmm_vmovsd_rm(&mut self, dst: WritableReg, src: &Address) { in xmm_vmovsd_rm()
1937 let src = Self::to_synthetic_amode(src, MemFlags::trusted()); in xmm_vmovsd_rm() localVariable
1939 let inst = asm::inst::vmovsd_d::new(dst, src).into(); in xmm_vmovsd_rm()
1963 pub fn xmm_vmovdqu_mr(&mut self, src: &Address, dst: WritableReg, flags: MemFlags) { in xmm_vmovdqu_mr()
1964 let src = Self::to_synthetic_amode(src, flags); in xmm_vmovdqu_mr() localVariable
1966 let inst = asm::inst::vmovdqu_a::new(dst, src).into(); in xmm_vmovdqu_mr()
1971 pub fn avx_gpr_to_xmm(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in avx_gpr_to_xmm()
1974 OperandSize::S32 => asm::inst::vmovd_a::new(dst, src).into(), in avx_gpr_to_xmm()
1975 OperandSize::S64 => asm::inst::vmovq_a::new(dst, src).into(), in avx_gpr_to_xmm()
1988 pub fn xmm_vcvt_rr(&mut self, src: Reg, dst: WritableReg, kind: VcvtKind) { in xmm_vcvt_rr()
1991 VcvtKind::I32ToF32 => asm::inst::vcvtdq2ps_a::new(dst, src).into(), in xmm_vcvt_rr()
1992 VcvtKind::I32ToF64 => asm::inst::vcvtdq2pd_a::new(dst, src).into(), in xmm_vcvt_rr()
1993 VcvtKind::F64ToF32 => asm::inst::vcvtpd2ps_a::new(dst, src).into(), in xmm_vcvt_rr()
1994 VcvtKind::F64ToI32 => asm::inst::vcvttpd2dq_a::new(dst, src).into(), in xmm_vcvt_rr()
1995 VcvtKind::F32ToF64 => asm::inst::vcvtps2pd_a::new(dst, src).into(), in xmm_vcvt_rr()
1996 VcvtKind::F32ToI32 => asm::inst::vcvttps2dq_a::new(dst, src).into(), in xmm_vcvt_rr()
2323 src: Reg, in xmm_vpmovmsk_rr()
2331 OperandSize::S8 => asm::inst::vpmovmskb_rm::new(dst, src).into(), in xmm_vpmovmsk_rr()
2342 src: Reg, in xmm_vmovskp_rr()
2350 OperandSize::S32 => asm::inst::vmovmskps_rm::new(dst, src).into(), in xmm_vmovskp_rr()
2351 OperandSize::S64 => asm::inst::vmovmskpd_rm::new(dst, src).into(), in xmm_vmovskp_rr()
2360 pub fn xmm_vpabs_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_vpabs_rr()
2363 OperandSize::S8 => asm::inst::vpabsb_a::new(dst, src).into(), in xmm_vpabs_rr()
2364 OperandSize::S16 => asm::inst::vpabsw_a::new(dst, src).into(), in xmm_vpabs_rr()
2365 OperandSize::S32 => asm::inst::vpabsd_a::new(dst, src).into(), in xmm_vpabs_rr()
2373 pub fn xmm_vpsra_rrr(&mut self, src: Reg, amount: Reg, dst: WritableReg, size: OperandSize) { in xmm_vpsra_rrr()
2376 OperandSize::S16 => asm::inst::vpsraw_c::new(dst, src, amount).into(), in xmm_vpsra_rrr()
2377 OperandSize::S32 => asm::inst::vpsrad_c::new(dst, src, amount).into(), in xmm_vpsra_rrr()
2385 pub fn xmm_vpsra_rri(&mut self, src: Reg, dst: WritableReg, imm: u32, size: OperandSize) { in xmm_vpsra_rri()
2389 OperandSize::S32 => asm::inst::vpsrad_d::new(dst, src, imm).into(), in xmm_vpsra_rri()
2396 pub fn xmm_vpsll_rri(&mut self, src: Reg, dst: WritableReg, imm: u32, size: OperandSize) { in xmm_vpsll_rri()
2400 OperandSize::S32 => asm::inst::vpslld_d::new(dst, src, imm).into(), in xmm_vpsll_rri()
2401 OperandSize::S64 => asm::inst::vpsllq_d::new(dst, src, imm).into(), in xmm_vpsll_rri()
2408 pub fn xmm_vpsll_rrr(&mut self, src: Reg, amount: Reg, dst: WritableReg, size: OperandSize) { in xmm_vpsll_rrr()
2411 OperandSize::S16 => asm::inst::vpsllw_c::new(dst, src, amount).into(), in xmm_vpsll_rrr()
2412 OperandSize::S32 => asm::inst::vpslld_c::new(dst, src, amount).into(), in xmm_vpsll_rrr()
2413 OperandSize::S64 => asm::inst::vpsllq_c::new(dst, src, amount).into(), in xmm_vpsll_rrr()
2420 pub fn xmm_vpsrl_rri(&mut self, src: Reg, dst: WritableReg, imm: u32, size: OperandSize) { in xmm_vpsrl_rri()
2424 OperandSize::S16 => asm::inst::vpsrlw_d::new(dst, src, imm).into(), in xmm_vpsrl_rri()
2425 OperandSize::S32 => asm::inst::vpsrld_d::new(dst, src, imm).into(), in xmm_vpsrl_rri()
2426 OperandSize::S64 => asm::inst::vpsrlq_d::new(dst, src, imm).into(), in xmm_vpsrl_rri()
2433 pub fn xmm_vpsrl_rrr(&mut self, src: Reg, amount: Reg, dst: WritableReg, size: OperandSize) { in xmm_vpsrl_rrr()
2436 OperandSize::S16 => asm::inst::vpsrlw_c::new(dst, src, amount).into(), in xmm_vpsrl_rrr()
2437 OperandSize::S32 => asm::inst::vpsrld_c::new(dst, src, amount).into(), in xmm_vpsrl_rrr()
2438 OperandSize::S64 => asm::inst::vpsrlq_c::new(dst, src, amount).into(), in xmm_vpsrl_rrr()
2545 pub fn xmm_vpxor_rmr(&mut self, src: Reg, address: &Address, dst: WritableReg) { in xmm_vpxor_rmr()
2548 let inst = asm::inst::vpxor_b::new(dst, src, address).into(); in xmm_vpxor_rmr()
2606 src: Reg, in xmm_vroundp_rri()
2620 OperandSize::S32 => asm::inst::vroundps_rmi::new(dst, src, imm).into(), in xmm_vroundp_rri()
2621 OperandSize::S64 => asm::inst::vroundpd_rmi::new(dst, src, imm).into(), in xmm_vroundp_rri()
2718 pub fn xmm_vsqrtp_rr(&mut self, src: Reg, dst: WritableReg, size: OperandSize) { in xmm_vsqrtp_rr()
2721 OperandSize::S32 => asm::inst::vsqrtps_b::new(dst, src).into(), in xmm_vsqrtp_rr()
2722 OperandSize::S64 => asm::inst::vsqrtpd_b::new(dst, src).into(), in xmm_vsqrtp_rr()
2729 pub fn xmm_vpmaddubsw_rmr(&mut self, src: Reg, address: &Address, dst: WritableReg) { in xmm_vpmaddubsw_rmr()
2732 let inst = asm::inst::vpmaddubsw_b::new(dst, src, address).into(); in xmm_vpmaddubsw_rmr()
2744 pub fn xmm_vpmaddwd_rmr(&mut self, src: Reg, address: &Address, dst: WritableReg) { in xmm_vpmaddwd_rmr()
2747 let inst = asm::inst::vpmaddwd_b::new(dst, src, address).into(); in xmm_vpmaddwd_rmr()