summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2009-08-17 18:27:30 -0700
committerGabe Black <gblack@eecs.umich.edu>2009-08-17 18:27:30 -0700
commit80b4456feca5f6ae8767f9a17b4438aba30bc3e9 (patch)
tree59bf1a24820614847bc439479c65dc3b598e5da0
parent63403bd5628e722aa51045b86176a035ddd9eb75 (diff)
downloadgem5-80b4456feca5f6ae8767f9a17b4438aba30bc3e9.tar.xz
X86: Move the MMX version of MOVD into the simd64 directory.
-rw-r--r--src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py48
-rw-r--r--src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py51
2 files changed, 48 insertions, 51 deletions
diff --git a/src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py b/src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py
index 3cad6e1a7..ef5c49337 100644
--- a/src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py
+++ b/src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py
@@ -54,32 +54,6 @@
# Authors: Gabe Black
microcode = '''
-def macroop MOVD_MMX_R {
- mov2fp mmx, regm, srcSize=dsz, destSize=8
-};
-
-def macroop MOVD_MMX_M {
- ldfp mmx, seg, sib, disp, dataSize=8
-};
-
-def macroop MOVD_MMX_P {
- rdip t7
- ldfp mmx, seg, riprel, disp, dataSize=8
-};
-
-def macroop MOVD_R_MMX {
- mov2int reg, mmxm, size=dsz
-};
-
-def macroop MOVD_M_MMX {
- stfp mmx, seg, sib, disp, dataSize=8
-};
-
-def macroop MOVD_P_MMX {
- rdip t7
- stfp mmx, seg, riprel, disp, dataSize=8
-};
-
def macroop MOVQ_XMM_XMM {
movfp xmml, xmmlm
lfpimm xmmh, 0
@@ -104,28 +78,6 @@ def macroop MOVQ_P_XMM {
rdip t7
stfp xmml, seg, riprel, disp, dataSize=8
};
-
-def macroop MOVQ_MMX_MMX {
- movfp mmx, mmxm
-};
-
-def macroop MOVQ_MMX_M {
- ldfp mmx, seg, sib, disp, dataSize=8
-};
-
-def macroop MOVQ_MMX_P {
- rdip t7
- ldfp mmx, seg, riprel, disp, dataSize=8
-};
-
-def macroop MOVQ_M_MMX {
- stfp mmx, seg, sib, disp, dataSize=8
-};
-
-def macroop MOVQ_P_MMX {
- rdip t7
- stfp mmx, seg, riprel, disp, dataSize=8
-};
'''
# MOVDQA
# MOVDQU
diff --git a/src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py b/src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py
index e60273022..f35a1e4c8 100644
--- a/src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py
+++ b/src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py
@@ -54,8 +54,53 @@
# Authors: Gabe Black
microcode = '''
-# MOVD
-# MOVQ
+def macroop MOVD_MMX_R {
+ mov2fp mmx, regm, srcSize=dsz, destSize=8
+};
+
+def macroop MOVD_MMX_M {
+ ldfp mmx, seg, sib, disp, dataSize=8
+};
+
+def macroop MOVD_MMX_P {
+ rdip t7
+ ldfp mmx, seg, riprel, disp, dataSize=8
+};
+
+def macroop MOVD_R_MMX {
+ mov2int reg, mmxm, size=dsz
+};
+
+def macroop MOVD_M_MMX {
+ stfp mmx, seg, sib, disp, dataSize=8
+};
+
+def macroop MOVD_P_MMX {
+ rdip t7
+ stfp mmx, seg, riprel, disp, dataSize=8
+};
+
+def macroop MOVQ_MMX_MMX {
+ movfp mmx, mmxm
+};
+
+def macroop MOVQ_MMX_M {
+ ldfp mmx, seg, sib, disp, dataSize=8
+};
+
+def macroop MOVQ_MMX_P {
+ rdip t7
+ ldfp mmx, seg, riprel, disp, dataSize=8
+};
+
+def macroop MOVQ_M_MMX {
+ stfp mmx, seg, sib, disp, dataSize=8
+};
+
+def macroop MOVQ_P_MMX {
+ rdip t7
+ stfp mmx, seg, riprel, disp, dataSize=8
+};
+'''
# MOVDQ2Q
# MOVQ2DQ
-'''