X86: Implement the MOVDDUP instruction.
This commit is contained in:
@@ -326,7 +326,7 @@
|
||||
0x8: decode OPCODE_OP_BOTTOM3 {
|
||||
0x0: Inst::MOVSD(Vq,Wq);
|
||||
0x1: Inst::MOVSD(Wq,Vq);
|
||||
0x2: movddup_Vo_Wq();
|
||||
0x2: Inst::MOVDDUP(Vo,Wq);
|
||||
default: Inst::UD2();
|
||||
}
|
||||
default: Inst::UD2();
|
||||
|
||||
@@ -54,7 +54,22 @@
|
||||
# Authors: Gabe Black
|
||||
|
||||
microcode = '''
|
||||
# MOVDDUP
|
||||
def macroop MOVDDUP_XMM_XMM {
|
||||
movfp xmmh, xmmlm, dataSize=8
|
||||
movfp xmml, xmmlm, dataSize=8
|
||||
};
|
||||
|
||||
def macroop MOVDDUP_XMM_M {
|
||||
ldfp xmml, seg, sib, disp, dataSize=8
|
||||
movfp xmmh, xmml, dataSize=8
|
||||
};
|
||||
|
||||
def macroop MOVDDUP_XMM_P {
|
||||
rdip t7
|
||||
ldfp xmml, seg, riprel, disp, dataSize=8
|
||||
movfp xmmh, xmml, dataSize=8
|
||||
};
|
||||
|
||||
# MOVSLDUP
|
||||
# MOVSHDUP
|
||||
'''
|
||||
|
||||
Reference in New Issue
Block a user