summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/insts
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2009-12-19 01:48:07 -0800
committerGabe Black <gblack@eecs.umich.edu>2009-12-19 01:48:07 -0800
commit25545115336e961a570bafdb8c2934db0015dece (patch)
treebb36546361917ce05079a539ba8d4d1397b6ed89 /src/arch/x86/isa/insts
parente474079ddc1941246e000dc699f9acb5c6a8a5e0 (diff)
downloadgem5-25545115336e961a570bafdb8c2934db0015dece.tar.xz
X86: Create a common flag with a name to indicate high multiplies.
Diffstat (limited to 'src/arch/x86/isa/insts')
-rw-r--r--src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py24
-rw-r--r--src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py18
2 files changed, 21 insertions, 21 deletions
diff --git a/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py b/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py
index 274ee4287..2715f5d25 100644
--- a/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py
+++ b/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py
@@ -55,23 +55,23 @@
microcode = '''
def macroop PMULHW_XMM_XMM {
- mmuli xmml, xmml, xmmlm, size=2, ext=(0x2 | 0x8)
- mmuli xmmh, xmmh, xmmhm, size=2, ext=(0x2 | 0x8)
+ mmuli xmml, xmml, xmmlm, size=2, ext = "0x2 |" + MultHi
+ mmuli xmmh, xmmh, xmmhm, size=2, ext = "0x2 |" + MultHi
};
def macroop PMULHW_XMM_M {
ldfp ufp1, seg, sib, "DISPLACEMENT", dataSize=8
ldfp ufp2, seg, sib, "DISPLACEMENT + 8", dataSize=8
- mmuli xmml, xmml, ufp1, size=2, ext=(0x2 | 0x8)
- mmuli xmmh, xmmh, ufp2, size=2, ext=(0x2 | 0x8)
+ mmuli xmml, xmml, ufp1, size=2, ext = "0x2 |" + MultHi
+ mmuli xmmh, xmmh, ufp2, size=2, ext = "0x2 |" + MultHi
};
def macroop PMULHW_XMM_P {
rdip t7
ldfp ufp1, seg, riprel, "DISPLACEMENT", dataSize=8
ldfp ufp2, seg, riprel, "DISPLACEMENT + 8", dataSize=8
- mmuli xmml, xmml, ufp1, size=2, ext=(0x2 | 0x8)
- mmuli xmmh, xmmh, ufp2, size=2, ext=(0x2 | 0x8)
+ mmuli xmml, xmml, ufp1, size=2, ext = "0x2 |" + MultHi
+ mmuli xmmh, xmmh, ufp2, size=2, ext = "0x2 |" + MultHi
};
def macroop PMULLW_XMM_XMM {
@@ -95,23 +95,23 @@ def macroop PMULLW_XMM_P {
};
def macroop PMULHUW_XMM_XMM {
- mmuli xmml, xmml, xmmlm, size=2, ext=8
- mmuli xmmh, xmmh, xmmhm, size=2, ext=8
+ mmuli xmml, xmml, xmmlm, size=2, ext = MultHi
+ mmuli xmmh, xmmh, xmmhm, size=2, ext = MultHi
};
def macroop PMULHUW_XMM_M {
ldfp ufp1, seg, sib, "DISPLACEMENT", dataSize=8
ldfp ufp2, seg, sib, "DISPLACEMENT + 8", dataSize=8
- mmuli xmml, xmml, ufp1, size=2, ext=8
- mmuli xmmh, xmmh, ufp2, size=2, ext=8
+ mmuli xmml, xmml, ufp1, size=2, ext = MultHi
+ mmuli xmmh, xmmh, ufp2, size=2, ext = MultHi
};
def macroop PMULHUW_XMM_P {
rdip t7
ldfp ufp1, seg, riprel, "DISPLACEMENT", dataSize=8
ldfp ufp2, seg, riprel, "DISPLACEMENT + 8", dataSize=8
- mmuli xmml, xmml, ufp1, size=2, ext=8
- mmuli xmmh, xmmh, ufp2, size=2, ext=8
+ mmuli xmml, xmml, ufp1, size=2, ext = MultHi
+ mmuli xmmh, xmmh, ufp2, size=2, ext = MultHi
};
def macroop PMULUDQ_XMM_XMM {
diff --git a/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py b/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py
index d116d04b3..50a1e5dc0 100644
--- a/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py
+++ b/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py
@@ -55,18 +55,18 @@
microcode = '''
def macroop PMULHW_MMX_MMX {
- mmuli mmx, mmx, mmxm, size=2, ext=(0x2 | 0x8)
+ mmuli mmx, mmx, mmxm, size=2, ext = "0x2 |" + MultHi
};
def macroop PMULHW_MMX_M {
ldfp ufp1, seg, sib, disp, dataSize=8
- mmuli mmx, mmx, ufp1, size=2, ext=(0x2 | 0x8)
+ mmuli mmx, mmx, ufp1, size=2, ext = "0x2 |" + MultHi
};
def macroop PMULHW_MMX_P {
rdip t7
ldfp ufp1, seg, riprel, disp, dataSize=8
- mmuli mmx, mmx, ufp1, size=2, ext=(0x2 | 0x8)
+ mmuli mmx, mmx, ufp1, size=2, ext = "0x2 |" + MultHi
};
def macroop PMULLW_MMX_MMX {
@@ -85,33 +85,33 @@ def macroop PMULLW_MMX_P {
};
def macroop PMULHRW_MMX_MMX {
- mmuli mmx, mmx, mmxm, size=2, ext=(0x2 | 0x4 | 0x8)
+ mmuli mmx, mmx, mmxm, size=2, ext = "0x2 | 0x4 |" + MultHi
};
def macroop PMULHRW_MMX_M {
ldfp ufp1, seg, sib, disp, dataSize=8
- mmuli mmx, mmx, ufp1, size=2, ext=(0x2 | 0x4 | 0x8)
+ mmuli mmx, mmx, ufp1, size=2, ext = "0x2 | 0x4 |" + MultHi
};
def macroop PMULHRW_MMX_P {
rdip t7
ldfp ufp1, seg, riprel, disp, dataSize=8
- mmuli mmx, mmx, ufp1, size=2, ext=(0x2 | 0x4 | 0x8)
+ mmuli mmx, mmx, ufp1, size=2, ext = "0x2 | 0x4 |" + MultHi
};
def macroop PMULHUW_MMX_MMX {
- mmuli mmx, mmx, mmxm, size=2, ext=8
+ mmuli mmx, mmx, mmxm, size=2, ext = MultHi
};
def macroop PMULHUW_MMX_M {
ldfp ufp1, seg, sib, disp, dataSize=8
- mmuli mmx, mmx, ufp1, size=2, ext=8
+ mmuli mmx, mmx, ufp1, size=2, ext = MultHi
};
def macroop PMULHUW_MMX_P {
rdip t7
ldfp ufp1, seg, riprel, disp, dataSize=8
- mmuli mmx, mmx, ufp1, size=2, ext=8
+ mmuli mmx, mmx, ufp1, size=2, ext = MultHi
};
def macroop PMULUDQ_MMX_MMX {