X86: Implement the versions of PUNPCKLBW that use MMX registers.

This commit is contained in:
Gabe Black 2009-08-17 18:15:42 -07:00
parent ecc62e750e
commit 247ed2379d
2 changed files with 16 additions and 3 deletions

View file

@ -551,7 +551,7 @@
0x0C: decode LEGACY_DECODEVAL {
// no prefix
0x0: decode OPCODE_OP_BOTTOM3 {
0x0: punpcklbw_Pq_Qd();
0x0: Inst::PUNPCKLBW(Pq,Qd);
0x1: punpcklwd_Pq_Qd();
0x2: punpckldq_Pq_Qd();
0x3: packsswb_Pq_Qq();

View file

@ -54,10 +54,23 @@
# Authors: Gabe Black
microcode = '''
def macroop PUNPCKLBW_MMX_MMX {
unpack mmx, mmx, mmxm, sel=0, size=1
};
def macroop PUNPCKLBW_MMX_M {
ldfp ufp1, seg, sib, disp, dataSize=8
unpack mmx, mmx, ufp1, sel=0, size=1
};
def macroop PUNPCKLBW_MMX_P {
rdip t7
ldfp ufp1, seg, riprel, disp, dataSize=8
unpack mmx, mmx, ufp1, sel=0, size=1
};
'''
# PUNPCKHBW
# PUNPCKHWD
# PUNPCKHDQ
# PUNPCKLBW
# PUNPCKLWD
# PUNPCKLDQ
'''