# HG changeset patch # User Vince Weaver <[email protected]> # Date 1256932353 14400 # Node ID 8741b60e529d986a93aa928b442b8175f4eb83bb # Parent 4842482e1bd1fbc33b8a6f4cf6cc9eec32cda800 implement movd_Vo_Edp on X86
This patch implements the movd_Vo_Edp series of instructions.
It addresses various concerns by Gabe Black about which file the
instruction belonged in, as well as supporting REX prefixed
instructions properly.
This instruction is needed for some of the spec2k benchmarks, most
notably bzip2.
diff -r 4842482e1bd1 -r 8741b60e529d
src/arch/x86/isa/decoder/two_byte_opcodes.isa
--- a/src/arch/x86/isa/decoder/two_byte_opcodes.isa Fri Oct 30 00:44:55
2009 -0700
+++ b/src/arch/x86/isa/decoder/two_byte_opcodes.isa Fri Oct 30 15:52:33
2009 -0400
@@ -615,7 +615,7 @@
0x3: PACKSSDW(Vo,Wo);
0x4: PUNPCKLQDQ(Vo,Wq);
0x5: PUNPCKHQDQ(Vo,Wq);
- 0x6: WarnUnimpl::movd_Vo_Ed();
+ 0x6: MOVD(Vo,Edp);
0x7: MOVDQA(Vo,Wo);
}
default: UD2();
@@ -709,7 +709,7 @@
0x1: decode OPCODE_OP_BOTTOM3 {
0x4: WarnUnimpl::haddpd_Vo_Wo();
0x5: WarnUnimpl::hsubpd_Vo_Wo();
- 0x6: WarnUnimpl::movd_Ed_Vd();
+ 0x6: MOVD(Edp,Vd);
0x7: MOVDQA(Wo,Vo);
default: UD2();
}
diff -r 4842482e1bd1 -r 8741b60e529d
src/arch/x86/isa/insts/general_purpose/data_transfer/move.py
--- a/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py Fri Oct
30 00:44:55 2009 -0700
+++ b/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py Fri Oct
30 15:52:33 2009 -0400
@@ -355,6 +355,36 @@
rdip t7
st reg, seg, riprel, disp
};
+
+def macroop MOVD_XMM_R {
+ mov2fp xmml, regm, srcSize=dsz, destSize=dsz
+ lfpimm xmmh, 0
+};
+
+def macroop MOVD_XMM_M {
+ ldfp xmml, seg, sib, disp, dataSize=dsz
+ lfpimm xmmh, 0
+};
+
+def macroop MOVD_XMM_P {
+ rdip t7
+ ldfp xmml, seg, riprel, disp, dataSize=dsz
+ lfpimm xmmh, 0
+};
+
+def macroop MOVD_R_XMM {
+ mov2int reg, xmml, size=dsz
+};
+
+def macroop MOVD_M_XMM {
+ stfp xmml, seg, sib, disp, dataSize=dsz
+};
+
+def macroop MOVD_P_XMM {
+ rdip t7
+ stfp xmml, seg, riprel, disp, dataSize=dsz
+};
+
'''
#let {{
# class MOVD(Inst):
movd_vo_ed
Description: Binary data
_______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
