Lines Matching refs:dst
288 struct x86_reg dst, in emit_op_modrm() argument
291 switch (dst.mod) { in emit_op_modrm()
294 emit_modrm(p, dst, src); in emit_op_modrm()
301 emit_modrm(p, src, dst); in emit_op_modrm()
455 void x86_mov_reg_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_mov_reg_imm() argument
457 DUMP_RI( dst, imm ); in x86_mov_reg_imm()
458 assert(dst.file == file_REG32); in x86_mov_reg_imm()
459 assert(dst.mod == mod_REG); in x86_mov_reg_imm()
460 emit_1ub(p, 0xb8 + dst.idx); in x86_mov_reg_imm()
464 void x86_mov_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_mov_imm() argument
466 DUMP_RI( dst, imm ); in x86_mov_imm()
467 if(dst.mod == mod_REG) in x86_mov_imm()
468 x86_mov_reg_imm(p, dst, imm); in x86_mov_imm()
472 emit_modrm_noreg(p, 0, dst); in x86_mov_imm()
477 void x86_mov16_imm( struct x86_function *p, struct x86_reg dst, uint16_t imm ) in x86_mov16_imm() argument
479 DUMP_RI( dst, imm ); in x86_mov16_imm()
481 if(dst.mod == mod_REG) in x86_mov16_imm()
483 emit_1ub(p, 0xb8 + dst.idx); in x86_mov16_imm()
489 emit_modrm_noreg(p, 0, dst); in x86_mov16_imm()
494 void x86_mov8_imm( struct x86_function *p, struct x86_reg dst, uint8_t imm ) in x86_mov8_imm() argument
496 DUMP_RI( dst, imm ); in x86_mov8_imm()
497 if(dst.mod == mod_REG) in x86_mov8_imm()
499 emit_1ub(p, 0xb0 + dst.idx); in x86_mov8_imm()
505 emit_modrm_noreg(p, 0, dst); in x86_mov8_imm()
515 unsigned op, struct x86_reg dst, int imm ) in x86_group1_imm() argument
517 assert(dst.file == file_REG32); in x86_group1_imm()
518 assert(dst.mod == mod_REG); in x86_group1_imm()
521 emit_modrm_noreg(p, op, dst); in x86_group1_imm()
526 emit_modrm_noreg(p, op, dst); in x86_group1_imm()
531 void x86_add_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_add_imm() argument
533 DUMP_RI( dst, imm ); in x86_add_imm()
534 x86_group1_imm(p, 0, dst, imm); in x86_add_imm()
537 void x86_or_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_or_imm() argument
539 DUMP_RI( dst, imm ); in x86_or_imm()
540 x86_group1_imm(p, 1, dst, imm); in x86_or_imm()
543 void x86_and_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_and_imm() argument
545 DUMP_RI( dst, imm ); in x86_and_imm()
546 x86_group1_imm(p, 4, dst, imm); in x86_and_imm()
549 void x86_sub_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_sub_imm() argument
551 DUMP_RI( dst, imm ); in x86_sub_imm()
552 x86_group1_imm(p, 5, dst, imm); in x86_sub_imm()
555 void x86_xor_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_xor_imm() argument
557 DUMP_RI( dst, imm ); in x86_xor_imm()
558 x86_group1_imm(p, 6, dst, imm); in x86_xor_imm()
561 void x86_cmp_imm( struct x86_function *p, struct x86_reg dst, int imm ) in x86_cmp_imm() argument
563 DUMP_RI( dst, imm ); in x86_cmp_imm()
564 x86_group1_imm(p, 7, dst, imm); in x86_cmp_imm()
650 struct x86_reg dst, in x86_mov() argument
653 DUMP_RR( dst, src ); in x86_mov()
655 if(src.mod == mod_REG && dst.mod == mod_REG && (src.idx >= 8 || dst.idx >= 8)) in x86_mov()
658 if(dst.idx >= 8) in x86_mov()
661 dst.idx -= 8; in x86_mov()
670 emit_op_modrm( p, 0x8b, 0x89, dst, src ); in x86_mov()
674 struct x86_reg dst, in x86_mov16() argument
677 DUMP_RR( dst, src ); in x86_mov16()
679 emit_op_modrm( p, 0x8b, 0x89, dst, src ); in x86_mov16()
683 struct x86_reg dst, in x86_mov8() argument
686 DUMP_RR( dst, src ); in x86_mov8()
687 emit_op_modrm( p, 0x8a, 0x88, dst, src ); in x86_mov8()
691 struct x86_reg dst, in x64_mov64() argument
695 DUMP_RR( dst, src ); in x64_mov64()
699 if(src.mod == mod_REG && dst.mod == mod_REG && (src.idx >= 8 || dst.idx >= 8)) in x64_mov64()
701 if(dst.idx >= 8) in x64_mov64()
704 dst.idx -= 8; in x64_mov64()
713 emit_op_modrm( p, 0x8b, 0x89, dst, src ); in x64_mov64()
716 void x86_movzx8(struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x86_movzx8() argument
718 DUMP_RR( dst, src ); in x86_movzx8()
720 emit_modrm(p, dst, src); in x86_movzx8()
723 void x86_movzx16(struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x86_movzx16() argument
725 DUMP_RR( dst, src ); in x86_movzx16()
727 emit_modrm(p, dst, src); in x86_movzx16()
731 struct x86_reg dst, in x86_cmovcc() argument
735 DUMP_RRI( dst, src, cc ); in x86_cmovcc()
737 emit_modrm( p, dst, src ); in x86_cmovcc()
741 struct x86_reg dst, in x86_xor() argument
744 DUMP_RR( dst, src ); in x86_xor()
745 emit_op_modrm( p, 0x33, 0x31, dst, src ); in x86_xor()
749 struct x86_reg dst, in x86_cmp() argument
752 DUMP_RR( dst, src ); in x86_cmp()
753 emit_op_modrm( p, 0x3b, 0x39, dst, src ); in x86_cmp()
757 struct x86_reg dst, in x86_lea() argument
760 DUMP_RR( dst, src ); in x86_lea()
762 emit_modrm( p, dst, src ); in x86_lea()
766 struct x86_reg dst, in x86_test() argument
769 DUMP_RR( dst, src ); in x86_test()
771 emit_modrm( p, dst, src ); in x86_test()
775 struct x86_reg dst, in x86_add() argument
778 DUMP_RR( dst, src ); in x86_add()
779 emit_op_modrm(p, 0x03, 0x01, dst, src ); in x86_add()
794 struct x86_reg dst, in x86_imul() argument
797 DUMP_RR( dst, src ); in x86_imul()
799 emit_modrm(p, dst, src); in x86_imul()
804 struct x86_reg dst, in x86_sub() argument
807 DUMP_RR( dst, src ); in x86_sub()
808 emit_op_modrm(p, 0x2b, 0x29, dst, src ); in x86_sub()
812 struct x86_reg dst, in x86_or() argument
815 DUMP_RR( dst, src ); in x86_or()
816 emit_op_modrm( p, 0x0b, 0x09, dst, src ); in x86_or()
820 struct x86_reg dst, in x86_and() argument
823 DUMP_RR( dst, src ); in x86_and()
824 emit_op_modrm( p, 0x23, 0x21, dst, src ); in x86_and()
920 struct x86_reg dst, in sse_movntps() argument
923 DUMP_RR( dst, src ); in sse_movntps()
925 assert(dst.mod != mod_REG); in sse_movntps()
928 emit_modrm(p, src, dst); in sse_movntps()
935 struct x86_reg dst, in sse_movss() argument
938 DUMP_RR( dst, src ); in sse_movss()
940 emit_op_modrm( p, 0x10, 0x11, dst, src ); in sse_movss()
944 struct x86_reg dst, in sse_movaps() argument
947 DUMP_RR( dst, src ); in sse_movaps()
949 emit_op_modrm( p, 0x28, 0x29, dst, src ); in sse_movaps()
953 struct x86_reg dst, in sse_movups() argument
956 DUMP_RR( dst, src ); in sse_movups()
958 emit_op_modrm( p, 0x10, 0x11, dst, src ); in sse_movups()
962 struct x86_reg dst, in sse_movhps() argument
965 DUMP_RR( dst, src ); in sse_movhps()
966 assert(dst.mod != mod_REG || src.mod != mod_REG); in sse_movhps()
968 emit_op_modrm( p, 0x16, 0x17, dst, src ); /* cf movlhps */ in sse_movhps()
972 struct x86_reg dst, in sse_movlps() argument
975 DUMP_RR( dst, src ); in sse_movlps()
976 assert(dst.mod != mod_REG || src.mod != mod_REG); in sse_movlps()
978 emit_op_modrm( p, 0x12, 0x13, dst, src ); /* cf movhlps */ in sse_movlps()
982 struct x86_reg dst, in sse_maxps() argument
985 DUMP_RR( dst, src ); in sse_maxps()
987 emit_modrm( p, dst, src ); in sse_maxps()
991 struct x86_reg dst, in sse_maxss() argument
994 DUMP_RR( dst, src ); in sse_maxss()
996 emit_modrm( p, dst, src ); in sse_maxss()
1000 struct x86_reg dst, in sse_divss() argument
1003 DUMP_RR( dst, src ); in sse_divss()
1005 emit_modrm( p, dst, src ); in sse_divss()
1009 struct x86_reg dst, in sse_minps() argument
1012 DUMP_RR( dst, src ); in sse_minps()
1014 emit_modrm( p, dst, src ); in sse_minps()
1018 struct x86_reg dst, in sse_subps() argument
1021 DUMP_RR( dst, src ); in sse_subps()
1023 emit_modrm( p, dst, src ); in sse_subps()
1027 struct x86_reg dst, in sse_mulps() argument
1030 DUMP_RR( dst, src ); in sse_mulps()
1032 emit_modrm( p, dst, src ); in sse_mulps()
1036 struct x86_reg dst, in sse_mulss() argument
1039 DUMP_RR( dst, src ); in sse_mulss()
1041 emit_modrm( p, dst, src ); in sse_mulss()
1045 struct x86_reg dst, in sse_addps() argument
1048 DUMP_RR( dst, src ); in sse_addps()
1050 emit_modrm( p, dst, src ); in sse_addps()
1054 struct x86_reg dst, in sse_addss() argument
1057 DUMP_RR( dst, src ); in sse_addss()
1059 emit_modrm( p, dst, src ); in sse_addss()
1063 struct x86_reg dst, in sse_andnps() argument
1066 DUMP_RR( dst, src ); in sse_andnps()
1068 emit_modrm( p, dst, src ); in sse_andnps()
1072 struct x86_reg dst, in sse_andps() argument
1075 DUMP_RR( dst, src ); in sse_andps()
1077 emit_modrm( p, dst, src ); in sse_andps()
1081 struct x86_reg dst, in sse_rsqrtps() argument
1084 DUMP_RR( dst, src ); in sse_rsqrtps()
1086 emit_modrm( p, dst, src ); in sse_rsqrtps()
1090 struct x86_reg dst, in sse_rsqrtss() argument
1093 DUMP_RR( dst, src ); in sse_rsqrtss()
1095 emit_modrm( p, dst, src ); in sse_rsqrtss()
1100 struct x86_reg dst, in sse_movhlps() argument
1103 DUMP_RR( dst, src ); in sse_movhlps()
1104 assert(dst.mod == mod_REG && src.mod == mod_REG); in sse_movhlps()
1106 emit_modrm( p, dst, src ); in sse_movhlps()
1110 struct x86_reg dst, in sse_movlhps() argument
1113 DUMP_RR( dst, src ); in sse_movlhps()
1114 assert(dst.mod == mod_REG && src.mod == mod_REG); in sse_movlhps()
1116 emit_modrm( p, dst, src ); in sse_movlhps()
1120 struct x86_reg dst, in sse_orps() argument
1123 DUMP_RR( dst, src ); in sse_orps()
1125 emit_modrm( p, dst, src ); in sse_orps()
1129 struct x86_reg dst, in sse_xorps() argument
1132 DUMP_RR( dst, src ); in sse_xorps()
1134 emit_modrm( p, dst, src ); in sse_xorps()
1138 struct x86_reg dst, in sse_cvtps2pi() argument
1141 DUMP_RR( dst, src ); in sse_cvtps2pi()
1142 assert(dst.file == file_MMX && in sse_cvtps2pi()
1148 emit_modrm( p, dst, src ); in sse_cvtps2pi()
1152 struct x86_reg dst, in sse2_cvtdq2ps() argument
1155 DUMP_RR( dst, src ); in sse2_cvtdq2ps()
1157 emit_modrm( p, dst, src ); in sse2_cvtdq2ps()
1165 struct x86_reg dst, in sse_shufps() argument
1169 DUMP_RRI( dst, src, shuf ); in sse_shufps()
1171 emit_modrm(p, dst, src); in sse_shufps()
1175 void sse_unpckhps( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse_unpckhps() argument
1177 DUMP_RR( dst, src ); in sse_unpckhps()
1179 emit_modrm( p, dst, src ); in sse_unpckhps()
1182 void sse_unpcklps( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse_unpcklps() argument
1184 DUMP_RR( dst, src ); in sse_unpcklps()
1186 emit_modrm( p, dst, src ); in sse_unpcklps()
1190 struct x86_reg dst, in sse_cmpps() argument
1194 DUMP_RRI( dst, src, cc ); in sse_cmpps()
1196 emit_modrm(p, dst, src); in sse_cmpps()
1201 struct x86_reg dst, in sse_pmovmskb() argument
1204 DUMP_RR( dst, src ); in sse_pmovmskb()
1206 emit_modrm(p, dst, src); in sse_pmovmskb()
1210 struct x86_reg dst, in sse_movmskps() argument
1213 DUMP_RR( dst, src ); in sse_movmskps()
1215 emit_modrm(p, dst, src); in sse_movmskps()
1222 void sse2_movd( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movd() argument
1224 DUMP_RR(dst, src); in sse2_movd()
1226 if(dst.mod == mod_REG && dst.file == file_REG32) in sse2_movd()
1229 emit_modrm(p, src, dst); in sse2_movd()
1233 emit_op_modrm(p, 0x6e, 0x7e, dst, src); in sse2_movd()
1237 void sse2_movq( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movq() argument
1239 DUMP_RR(dst, src); in sse2_movq()
1240 switch (dst.mod) { in sse2_movq()
1243 emit_modrm(p, dst, src); in sse2_movq()
1250 emit_modrm(p, src, dst); in sse2_movq()
1258 void sse2_movdqu( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movdqu() argument
1260 DUMP_RR(dst, src); in sse2_movdqu()
1262 emit_op_modrm(p, 0x6f, 0x7f, dst, src); in sse2_movdqu()
1265 void sse2_movdqa( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movdqa() argument
1267 DUMP_RR(dst, src); in sse2_movdqa()
1269 emit_op_modrm(p, 0x6f, 0x7f, dst, src); in sse2_movdqa()
1272 void sse2_movsd( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movsd() argument
1274 DUMP_RR(dst, src); in sse2_movsd()
1276 emit_op_modrm(p, 0x10, 0x11, dst, src); in sse2_movsd()
1279 void sse2_movupd( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movupd() argument
1281 DUMP_RR(dst, src); in sse2_movupd()
1283 emit_op_modrm(p, 0x10, 0x11, dst, src); in sse2_movupd()
1286 void sse2_movapd( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_movapd() argument
1288 DUMP_RR(dst, src); in sse2_movapd()
1290 emit_op_modrm(p, 0x28, 0x29, dst, src); in sse2_movapd()
1297 struct x86_reg dst, in sse2_pshufd() argument
1301 DUMP_RRI( dst, src, shuf ); in sse2_pshufd()
1303 emit_modrm(p, dst, src); in sse2_pshufd()
1308 struct x86_reg dst, in sse2_pshuflw() argument
1312 DUMP_RRI( dst, src, shuf ); in sse2_pshuflw()
1314 emit_modrm(p, dst, src); in sse2_pshuflw()
1319 struct x86_reg dst, in sse2_pshufhw() argument
1323 DUMP_RRI( dst, src, shuf ); in sse2_pshufhw()
1325 emit_modrm(p, dst, src); in sse2_pshufhw()
1330 struct x86_reg dst, in sse2_cvttps2dq() argument
1333 DUMP_RR( dst, src ); in sse2_cvttps2dq()
1335 emit_modrm( p, dst, src ); in sse2_cvttps2dq()
1339 struct x86_reg dst, in sse2_cvtps2dq() argument
1342 DUMP_RR( dst, src ); in sse2_cvtps2dq()
1344 emit_modrm( p, dst, src ); in sse2_cvtps2dq()
1348 struct x86_reg dst, in sse2_cvtsd2ss() argument
1351 DUMP_RR( dst, src ); in sse2_cvtsd2ss()
1353 emit_modrm( p, dst, src ); in sse2_cvtsd2ss()
1357 struct x86_reg dst, in sse2_cvtpd2ps() argument
1360 DUMP_RR( dst, src ); in sse2_cvtpd2ps()
1362 emit_modrm( p, dst, src ); in sse2_cvtpd2ps()
1366 struct x86_reg dst, in sse2_packssdw() argument
1369 DUMP_RR( dst, src ); in sse2_packssdw()
1371 emit_modrm( p, dst, src ); in sse2_packssdw()
1375 struct x86_reg dst, in sse2_packsswb() argument
1378 DUMP_RR( dst, src ); in sse2_packsswb()
1380 emit_modrm( p, dst, src ); in sse2_packsswb()
1384 struct x86_reg dst, in sse2_packuswb() argument
1387 DUMP_RR( dst, src ); in sse2_packuswb()
1389 emit_modrm( p, dst, src ); in sse2_packuswb()
1393 struct x86_reg dst, in sse2_punpcklbw() argument
1396 DUMP_RR( dst, src ); in sse2_punpcklbw()
1398 emit_modrm( p, dst, src ); in sse2_punpcklbw()
1401 void sse2_punpcklwd( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_punpcklwd() argument
1403 DUMP_RR( dst, src ); in sse2_punpcklwd()
1405 emit_modrm( p, dst, src ); in sse2_punpcklwd()
1408 void sse2_punpckldq( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_punpckldq() argument
1410 DUMP_RR( dst, src ); in sse2_punpckldq()
1412 emit_modrm( p, dst, src ); in sse2_punpckldq()
1415 void sse2_punpcklqdq( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_punpcklqdq() argument
1417 DUMP_RR( dst, src ); in sse2_punpcklqdq()
1419 emit_modrm( p, dst, src ); in sse2_punpcklqdq()
1422 void sse2_psllw_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psllw_imm() argument
1424 DUMP_RI(dst, imm); in sse2_psllw_imm()
1426 emit_modrm_noreg(p, 6, dst); in sse2_psllw_imm()
1430 void sse2_pslld_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_pslld_imm() argument
1432 DUMP_RI(dst, imm); in sse2_pslld_imm()
1434 emit_modrm_noreg(p, 6, dst); in sse2_pslld_imm()
1438 void sse2_psllq_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psllq_imm() argument
1440 DUMP_RI(dst, imm); in sse2_psllq_imm()
1442 emit_modrm_noreg(p, 6, dst); in sse2_psllq_imm()
1446 void sse2_psrlw_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psrlw_imm() argument
1448 DUMP_RI(dst, imm); in sse2_psrlw_imm()
1450 emit_modrm_noreg(p, 2, dst); in sse2_psrlw_imm()
1454 void sse2_psrld_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psrld_imm() argument
1456 DUMP_RI(dst, imm); in sse2_psrld_imm()
1458 emit_modrm_noreg(p, 2, dst); in sse2_psrld_imm()
1462 void sse2_psrlq_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psrlq_imm() argument
1464 DUMP_RI(dst, imm); in sse2_psrlq_imm()
1466 emit_modrm_noreg(p, 2, dst); in sse2_psrlq_imm()
1470 void sse2_psraw_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psraw_imm() argument
1472 DUMP_RI(dst, imm); in sse2_psraw_imm()
1474 emit_modrm_noreg(p, 4, dst); in sse2_psraw_imm()
1478 void sse2_psrad_imm( struct x86_function *p, struct x86_reg dst, unsigned imm ) in sse2_psrad_imm() argument
1480 DUMP_RI(dst, imm); in sse2_psrad_imm()
1482 emit_modrm_noreg(p, 4, dst); in sse2_psrad_imm()
1486 void sse2_por( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in sse2_por() argument
1488 DUMP_RR(dst, src); in sse2_por()
1490 emit_modrm(p, dst, src); in sse2_por()
1494 struct x86_reg dst, in sse2_rcpps() argument
1497 DUMP_RR( dst, src ); in sse2_rcpps()
1499 emit_modrm( p, dst, src ); in sse2_rcpps()
1503 struct x86_reg dst, in sse2_rcpss() argument
1506 DUMP_RR( dst, src ); in sse2_rcpss()
1508 emit_modrm( p, dst, src ); in sse2_rcpss()
1532 void x87_fist( struct x86_function *p, struct x86_reg dst ) in x87_fist() argument
1534 DUMP_R( dst ); in x87_fist()
1536 emit_modrm_noreg(p, 2, dst); in x87_fist()
1539 void x87_fistp( struct x86_function *p, struct x86_reg dst ) in x87_fistp() argument
1541 DUMP_R( dst ); in x87_fistp()
1543 emit_modrm_noreg(p, 3, dst); in x87_fistp()
1655 static void x87_arith_op( struct x86_function *p, struct x86_reg dst, struct x86_reg arg, in x87_arith_op() argument
1662 assert(dst.file == file_x87); in x87_arith_op()
1665 if (dst.idx == 0) in x87_arith_op()
1672 else if (dst.idx == 0) { in x87_arith_op()
1681 void x87_fmul( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x87_fmul() argument
1683 DUMP_RR( dst, src ); in x87_fmul()
1684 x87_arith_op(p, dst, src, in x87_fmul()
1690 void x87_fsub( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x87_fsub() argument
1692 DUMP_RR( dst, src ); in x87_fsub()
1693 x87_arith_op(p, dst, src, in x87_fsub()
1699 void x87_fsubr( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x87_fsubr() argument
1701 DUMP_RR( dst, src ); in x87_fsubr()
1702 x87_arith_op(p, dst, src, in x87_fsubr()
1708 void x87_fadd( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x87_fadd() argument
1710 DUMP_RR( dst, src ); in x87_fadd()
1711 x87_arith_op(p, dst, src, in x87_fadd()
1717 void x87_fdiv( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x87_fdiv() argument
1719 DUMP_RR( dst, src ); in x87_fdiv()
1720 x87_arith_op(p, dst, src, in x87_fdiv()
1726 void x87_fdivr( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) in x87_fdivr() argument
1728 DUMP_RR( dst, src ); in x87_fdivr()
1729 x87_arith_op(p, dst, src, in x87_fdivr()
1735 void x87_fmulp( struct x86_function *p, struct x86_reg dst ) in x87_fmulp() argument
1737 DUMP_R( dst ); in x87_fmulp()
1738 assert(dst.file == file_x87); in x87_fmulp()
1739 assert(dst.idx >= 1); in x87_fmulp()
1740 emit_2ub(p, 0xde, 0xc8+dst.idx); in x87_fmulp()
1744 void x87_fsubp( struct x86_function *p, struct x86_reg dst ) in x87_fsubp() argument
1746 DUMP_R( dst ); in x87_fsubp()
1747 assert(dst.file == file_x87); in x87_fsubp()
1748 assert(dst.idx >= 1); in x87_fsubp()
1749 emit_2ub(p, 0xde, 0xe8+dst.idx); in x87_fsubp()
1753 void x87_fsubrp( struct x86_function *p, struct x86_reg dst ) in x87_fsubrp() argument
1755 DUMP_R( dst ); in x87_fsubrp()
1756 assert(dst.file == file_x87); in x87_fsubrp()
1757 assert(dst.idx >= 1); in x87_fsubrp()
1758 emit_2ub(p, 0xde, 0xe0+dst.idx); in x87_fsubrp()
1762 void x87_faddp( struct x86_function *p, struct x86_reg dst ) in x87_faddp() argument
1764 DUMP_R( dst ); in x87_faddp()
1765 assert(dst.file == file_x87); in x87_faddp()
1766 assert(dst.idx >= 1); in x87_faddp()
1767 emit_2ub(p, 0xde, 0xc0+dst.idx); in x87_faddp()
1771 void x87_fdivp( struct x86_function *p, struct x86_reg dst ) in x87_fdivp() argument
1773 DUMP_R( dst ); in x87_fdivp()
1774 assert(dst.file == file_x87); in x87_fdivp()
1775 assert(dst.idx >= 1); in x87_fdivp()
1776 emit_2ub(p, 0xde, 0xf8+dst.idx); in x87_fdivp()
1780 void x87_fdivrp( struct x86_function *p, struct x86_reg dst ) in x87_fdivrp() argument
1782 DUMP_R( dst ); in x87_fdivrp()
1783 assert(dst.file == file_x87); in x87_fdivrp()
1784 assert(dst.idx >= 1); in x87_fdivrp()
1785 emit_2ub(p, 0xde, 0xf0+dst.idx); in x87_fdivrp()
1925 void x87_fst( struct x86_function *p, struct x86_reg dst ) in x87_fst() argument
1927 DUMP_R( dst ); in x87_fst()
1928 if (dst.file == file_x87) in x87_fst()
1929 emit_2ub(p, 0xdd, 0xd0 + dst.idx); in x87_fst()
1932 emit_modrm_noreg(p, 2, dst); in x87_fst()
1936 void x87_fstp( struct x86_function *p, struct x86_reg dst ) in x87_fstp() argument
1938 DUMP_R( dst ); in x87_fstp()
1939 if (dst.file == file_x87) in x87_fstp()
1940 emit_2ub(p, 0xdd, 0xd8 + dst.idx); in x87_fstp()
1943 emit_modrm_noreg(p, 3, dst); in x87_fstp()
1954 void x87_fcom( struct x86_function *p, struct x86_reg dst ) in x87_fcom() argument
1956 DUMP_R( dst ); in x87_fcom()
1957 if (dst.file == file_x87) in x87_fcom()
1958 emit_2ub(p, 0xd8, 0xd0 + dst.idx); in x87_fcom()
1961 emit_modrm_noreg(p, 2, dst); in x87_fcom()
1966 void x87_fcomp( struct x86_function *p, struct x86_reg dst ) in x87_fcomp() argument
1968 DUMP_R( dst ); in x87_fcomp()
1969 if (dst.file == file_x87) in x87_fcomp()
1970 emit_2ub(p, 0xd8, 0xd8 + dst.idx); in x87_fcomp()
1973 emit_modrm_noreg(p, 3, dst); in x87_fcomp()
1992 void x87_fnstsw( struct x86_function *p, struct x86_reg dst ) in x87_fnstsw() argument
1994 DUMP_R( dst ); in x87_fnstsw()
1995 assert(dst.file == file_REG32); in x87_fnstsw()
1997 if (dst.idx == reg_AX && in x87_fnstsw()
1998 dst.mod == mod_REG) in x87_fnstsw()
2002 emit_modrm_noreg(p, 7, dst); in x87_fnstsw()
2007 void x87_fnstcw( struct x86_function *p, struct x86_reg dst ) in x87_fnstcw() argument
2009 DUMP_R( dst ); in x87_fnstcw()
2010 assert(dst.file == file_REG32); in x87_fnstcw()
2014 emit_modrm_noreg(p, 7, dst); in x87_fnstcw()
2033 struct x86_reg dst, in mmx_packssdw() argument
2036 DUMP_RR( dst, src ); in mmx_packssdw()
2037 assert(dst.file == file_MMX && in mmx_packssdw()
2043 emit_modrm( p, dst, src ); in mmx_packssdw()
2047 struct x86_reg dst, in mmx_packuswb() argument
2050 DUMP_RR( dst, src ); in mmx_packuswb()
2051 assert(dst.file == file_MMX && in mmx_packuswb()
2057 emit_modrm( p, dst, src ); in mmx_packuswb()
2061 struct x86_reg dst, in mmx_movd() argument
2064 DUMP_RR( dst, src ); in mmx_movd()
2067 emit_op_modrm( p, 0x6e, 0x7e, dst, src ); in mmx_movd()
2071 struct x86_reg dst, in mmx_movq() argument
2074 DUMP_RR( dst, src ); in mmx_movq()
2077 emit_op_modrm( p, 0x6f, 0x7f, dst, src ); in mmx_movq()