X86: Implement MOVSS.

This commit is contained in:
Gabe Black 2009-08-17 20:25:14 -07:00
parent 179fd4e536
commit 7d4db7266e
2 changed files with 27 additions and 3 deletions

View file

@ -306,8 +306,8 @@
} }
// repe (0xF3) // repe (0xF3)
0x4: decode OPCODE_OP_BOTTOM3 { 0x4: decode OPCODE_OP_BOTTOM3 {
0x0: WarnUnimpl::movss_Vd_Wd(); 0x0: MOVSS(Vd,Wd);
0x1: WarnUnimpl::movss_Wd_Vd(); 0x1: MOVSS(Wd,Vd);
0x2: WarnUnimpl::movsldup_Vo_Wo(); 0x2: WarnUnimpl::movsldup_Vo_Wo();
0x6: WarnUnimpl::movshdup_Vo_Wo(); 0x6: WarnUnimpl::movshdup_Vo_Wo();
default: UD2(); default: UD2();

View file

@ -249,7 +249,31 @@ def macroop MOVLHPS_XMM_XMM {
movfp xmmh, xmmlm, dataSize=8 movfp xmmh, xmmlm, dataSize=8
}; };
# MOVSS def macroop MOVSS_XMM_XMM {
movfp xmml, xmmlm, dataSize=4
};
def macroop MOVSS_XMM_M {
lfpimm xmml, 0
lfpimm xmmh, 0
ldfp xmml, seg, sib, disp, dataSize=4
};
def macroop MOVSS_XMM_P {
rdip t7
lfpimm xmml, 0
lfpimm xmmh, 0
ldfp xmml, seg, riprel, disp, dataSize=4
};
def macroop MOVSS_M_XMM {
stfp xmml, seg, sib, disp, dataSize=4
};
def macroop MOVSS_P_XMM {
rdip t7
stfp xmml, seg, riprel, disp, dataSize=4
};
def macroop MOVSD_XMM_M { def macroop MOVSD_XMM_M {
# Zero xmmh # Zero xmmh