1 DEF_ASM_OP0(clc
, 0xf8) /* must be first OP0 */
4 DEF_ASM_OP0(clts
, 0x0f06)
6 DEF_ASM_OP0(lahf
, 0x9f)
7 DEF_ASM_OP0(sahf
, 0x9e)
8 DEF_ASM_OP0(pusha
, 0x60)
9 DEF_ASM_OP0(popa
, 0x61)
10 DEF_ASM_OP0(pushfl
, 0x9c)
11 DEF_ASM_OP0(popfl
, 0x9d)
12 DEF_ASM_OP0(pushf
, 0x9c)
13 DEF_ASM_OP0(popf
, 0x9d)
14 DEF_ASM_OP0(stc
, 0xf9)
15 DEF_ASM_OP0(std
, 0xfd)
16 DEF_ASM_OP0(sti
, 0xfb)
17 DEF_ASM_OP0(aaa
, 0x37)
18 DEF_ASM_OP0(aas
, 0x3f)
19 DEF_ASM_OP0(daa
, 0x27)
20 DEF_ASM_OP0(das
, 0x2f)
21 DEF_ASM_OP0(aad
, 0xd50a)
22 DEF_ASM_OP0(aam
, 0xd40a)
23 DEF_ASM_OP0(cbw
, 0x6698)
24 DEF_ASM_OP0(cwd
, 0x6699)
25 DEF_ASM_OP0(cwde
, 0x98)
26 DEF_ASM_OP0(cdq
, 0x99)
27 DEF_ASM_OP0(cbtw
, 0x6698)
28 DEF_ASM_OP0(cwtl
, 0x98)
29 DEF_ASM_OP0(cwtd
, 0x6699)
30 DEF_ASM_OP0(cltd
, 0x99)
31 DEF_ASM_OP0(int3
, 0xcc)
32 DEF_ASM_OP0(into
, 0xce)
33 DEF_ASM_OP0(iret
, 0xcf)
34 DEF_ASM_OP0(rsm
, 0x0faa)
35 DEF_ASM_OP0(hlt
, 0xf4)
36 DEF_ASM_OP0(nop
, 0x90)
37 DEF_ASM_OP0(pause
, 0xf390)
38 DEF_ASM_OP0(xlat
, 0xd7)
41 ALT(DEF_ASM_OP0L(cmpsb
, 0xa6, 0, OPC_BWLX
))
42 ALT(DEF_ASM_OP0L(scmpb
, 0xa6, 0, OPC_BWLX
))
44 ALT(DEF_ASM_OP0L(insb
, 0x6c, 0, OPC_BWL
))
45 ALT(DEF_ASM_OP0L(outsb
, 0x6e, 0, OPC_BWL
))
47 ALT(DEF_ASM_OP0L(lodsb
, 0xac, 0, OPC_BWLX
))
48 ALT(DEF_ASM_OP0L(slodb
, 0xac, 0, OPC_BWLX
))
50 ALT(DEF_ASM_OP0L(movsb
, 0xa4, 0, OPC_BWLX
))
51 ALT(DEF_ASM_OP0L(smovb
, 0xa4, 0, OPC_BWLX
))
53 ALT(DEF_ASM_OP0L(scasb
, 0xae, 0, OPC_BWLX
))
54 ALT(DEF_ASM_OP0L(sscab
, 0xae, 0, OPC_BWLX
))
56 ALT(DEF_ASM_OP0L(stosb
, 0xaa, 0, OPC_BWLX
))
57 ALT(DEF_ASM_OP0L(sstob
, 0xaa, 0, OPC_BWLX
))
61 ALT(DEF_ASM_OP2(bsfw
, 0x0fbc, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
, OPT_REGW
))
62 ALT(DEF_ASM_OP2(bsrw
, 0x0fbd, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
, OPT_REGW
))
64 ALT(DEF_ASM_OP2(btw
, 0x0fa3, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
, OPT_REGW
| OPT_EA
))
65 ALT(DEF_ASM_OP2(btw
, 0x0fba, 4, OPC_MODRM
| OPC_WLX
, OPT_IM8
, OPT_REGW
| OPT_EA
))
67 ALT(DEF_ASM_OP2(btsw
, 0x0fab, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
, OPT_REGW
| OPT_EA
))
68 ALT(DEF_ASM_OP2(btsw
, 0x0fba, 5, OPC_MODRM
| OPC_WLX
, OPT_IM8
, OPT_REGW
| OPT_EA
))
70 ALT(DEF_ASM_OP2(btrw
, 0x0fb3, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
, OPT_REGW
| OPT_EA
))
71 ALT(DEF_ASM_OP2(btrw
, 0x0fba, 6, OPC_MODRM
| OPC_WLX
, OPT_IM8
, OPT_REGW
| OPT_EA
))
73 ALT(DEF_ASM_OP2(btcw
, 0x0fbb, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
, OPT_REGW
| OPT_EA
))
74 ALT(DEF_ASM_OP2(btcw
, 0x0fba, 7, OPC_MODRM
| OPC_WLX
, OPT_IM8
, OPT_REGW
| OPT_EA
))
76 ALT(DEF_ASM_OP2(popcntw
, 0xf30fb8, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
, OPT_REGW
))
78 ALT(DEF_ASM_OP2(tzcntw
, 0xf30fbc, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
, OPT_REGW
))
79 ALT(DEF_ASM_OP2(lzcntw
, 0xf30fbd, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
, OPT_REGW
))
82 DEF_ASM_OP0(wait
, 0x9b)
83 DEF_ASM_OP0(fwait
, 0x9b)
84 DEF_ASM_OP0(aword
, 0x67)
85 DEF_ASM_OP0(addr16
, 0x67)
86 ALT(DEF_ASM_OP0(word
, 0x66))
87 DEF_ASM_OP0(data16
, 0x66)
88 DEF_ASM_OP0(lock
, 0xf0)
89 DEF_ASM_OP0(rep
, 0xf3)
90 DEF_ASM_OP0(repe
, 0xf3)
91 DEF_ASM_OP0(repz
, 0xf3)
92 DEF_ASM_OP0(repne
, 0xf2)
93 DEF_ASM_OP0(repnz
, 0xf2)
95 DEF_ASM_OP0(invd
, 0x0f08)
96 DEF_ASM_OP0(wbinvd
, 0x0f09)
97 DEF_ASM_OP0(cpuid
, 0x0fa2)
98 DEF_ASM_OP0(wrmsr
, 0x0f30)
99 DEF_ASM_OP0(rdtsc
, 0x0f31)
100 DEF_ASM_OP0(rdmsr
, 0x0f32)
101 DEF_ASM_OP0(rdpmc
, 0x0f33)
102 DEF_ASM_OP0(ud2
, 0x0f0b)
104 /* NOTE: we took the same order as gas opcode definition order */
105 ALT(DEF_ASM_OP2(movb
, 0xa0, 0, OPC_BWLX
, OPT_ADDR
, OPT_EAX
))
106 ALT(DEF_ASM_OP2(movb
, 0xa2, 0, OPC_BWLX
, OPT_EAX
, OPT_ADDR
))
107 ALT(DEF_ASM_OP2(movb
, 0x88, 0, OPC_MODRM
| OPC_BWLX
, OPT_REG
, OPT_EA
| OPT_REG
))
108 ALT(DEF_ASM_OP2(movb
, 0x8a, 0, OPC_MODRM
| OPC_BWLX
, OPT_EA
| OPT_REG
, OPT_REG
))
109 ALT(DEF_ASM_OP2(movb
, 0xb0, 0, OPC_REG
| OPC_BWLX
, OPT_IM
, OPT_REG
))
110 ALT(DEF_ASM_OP2(movb
, 0xc6, 0, OPC_MODRM
| OPC_BWLX
, OPT_IM
, OPT_REG
| OPT_EA
))
112 ALT(DEF_ASM_OP2(movw
, 0x8c, 0, OPC_MODRM
| OPC_WLX
, OPT_SEG
, OPT_EA
| OPT_REG
))
113 ALT(DEF_ASM_OP2(movw
, 0x8e, 0, OPC_MODRM
| OPC_WLX
, OPT_EA
| OPT_REG
, OPT_SEG
))
115 ALT(DEF_ASM_OP2(movw
, 0x0f20, 0, OPC_MODRM
| OPC_WLX
, OPT_CR
, OPT_REG32
))
116 ALT(DEF_ASM_OP2(movw
, 0x0f21, 0, OPC_MODRM
| OPC_WLX
, OPT_DB
, OPT_REG32
))
117 ALT(DEF_ASM_OP2(movw
, 0x0f24, 0, OPC_MODRM
| OPC_WLX
, OPT_TR
, OPT_REG32
))
118 ALT(DEF_ASM_OP2(movw
, 0x0f22, 0, OPC_MODRM
| OPC_WLX
, OPT_REG32
, OPT_CR
))
119 ALT(DEF_ASM_OP2(movw
, 0x0f23, 0, OPC_MODRM
| OPC_WLX
, OPT_REG32
, OPT_DB
))
120 ALT(DEF_ASM_OP2(movw
, 0x0f26, 0, OPC_MODRM
| OPC_WLX
, OPT_REG32
, OPT_TR
))
122 ALT(DEF_ASM_OP2(movsbl
, 0x0fbe, 0, OPC_MODRM
, OPT_REG8
| OPT_EA
, OPT_REG32
))
123 ALT(DEF_ASM_OP2(movsbw
, 0x660fbe, 0, OPC_MODRM
, OPT_REG8
| OPT_EA
, OPT_REG16
))
124 ALT(DEF_ASM_OP2(movswl
, 0x0fbf, 0, OPC_MODRM
, OPT_REG16
| OPT_EA
, OPT_REG32
))
125 ALT(DEF_ASM_OP2(movzbw
, 0x0fb6, 0, OPC_MODRM
| OPC_WLX
, OPT_REG8
| OPT_EA
, OPT_REGW
))
126 ALT(DEF_ASM_OP2(movzwl
, 0x0fb7, 0, OPC_MODRM
, OPT_REG16
| OPT_EA
, OPT_REG32
))
128 ALT(DEF_ASM_OP1(pushw
, 0x50, 0, OPC_REG
| OPC_WLX
, OPT_REGW
))
129 ALT(DEF_ASM_OP1(pushw
, 0xff, 6, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
))
130 ALT(DEF_ASM_OP1(pushw
, 0x6a, 0, OPC_WLX
, OPT_IM8S
))
131 ALT(DEF_ASM_OP1(pushw
, 0x68, 0, OPC_WLX
, OPT_IM32
))
132 ALT(DEF_ASM_OP1(pushw
, 0x06, 0, OPC_WLX
, OPT_SEG
))
134 ALT(DEF_ASM_OP1(popw
, 0x58, 0, OPC_REG
| OPC_WLX
, OPT_REGW
))
135 ALT(DEF_ASM_OP1(popw
, 0x8f, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
| OPT_EA
))
136 ALT(DEF_ASM_OP1(popw
, 0x07, 0, OPC_WLX
, OPT_SEG
))
138 ALT(DEF_ASM_OP2(xchgw
, 0x90, 0, OPC_REG
| OPC_WLX
, OPT_REGW
, OPT_EAX
))
139 ALT(DEF_ASM_OP2(xchgw
, 0x90, 0, OPC_REG
| OPC_WLX
, OPT_EAX
, OPT_REGW
))
140 ALT(DEF_ASM_OP2(xchgb
, 0x86, 0, OPC_MODRM
| OPC_BWLX
, OPT_REG
, OPT_EA
| OPT_REG
))
141 ALT(DEF_ASM_OP2(xchgb
, 0x86, 0, OPC_MODRM
| OPC_BWLX
, OPT_EA
| OPT_REG
, OPT_REG
))
143 ALT(DEF_ASM_OP2(inb
, 0xe4, 0, OPC_BWL
, OPT_IM8
, OPT_EAX
))
144 ALT(DEF_ASM_OP1(inb
, 0xe4, 0, OPC_BWL
, OPT_IM8
))
145 ALT(DEF_ASM_OP2(inb
, 0xec, 0, OPC_BWL
, OPT_DX
, OPT_EAX
))
146 ALT(DEF_ASM_OP1(inb
, 0xec, 0, OPC_BWL
, OPT_DX
))
148 ALT(DEF_ASM_OP2(outb
, 0xe6, 0, OPC_BWL
, OPT_EAX
, OPT_IM8
))
149 ALT(DEF_ASM_OP1(outb
, 0xe6, 0, OPC_BWL
, OPT_IM8
))
150 ALT(DEF_ASM_OP2(outb
, 0xee, 0, OPC_BWL
, OPT_EAX
, OPT_DX
))
151 ALT(DEF_ASM_OP1(outb
, 0xee, 0, OPC_BWL
, OPT_DX
))
153 ALT(DEF_ASM_OP2(leaw
, 0x8d, 0, OPC_MODRM
| OPC_WLX
, OPT_EA
, OPT_REG
))
155 ALT(DEF_ASM_OP2(les
, 0xc4, 0, OPC_MODRM
, OPT_EA
, OPT_REG32
))
156 ALT(DEF_ASM_OP2(lds
, 0xc5, 0, OPC_MODRM
, OPT_EA
, OPT_REG32
))
157 ALT(DEF_ASM_OP2(lss
, 0x0fb2, 0, OPC_MODRM
, OPT_EA
, OPT_REG32
))
158 ALT(DEF_ASM_OP2(lfs
, 0x0fb4, 0, OPC_MODRM
, OPT_EA
, OPT_REG32
))
159 ALT(DEF_ASM_OP2(lgs
, 0x0fb5, 0, OPC_MODRM
, OPT_EA
, OPT_REG32
))
162 ALT(DEF_ASM_OP2(addb
, 0x00, 0, OPC_ARITH
| OPC_MODRM
| OPC_BWLX
, OPT_REG
, OPT_EA
| OPT_REG
)) /* XXX: use D bit ? */
163 ALT(DEF_ASM_OP2(addb
, 0x02, 0, OPC_ARITH
| OPC_MODRM
| OPC_BWLX
, OPT_EA
| OPT_REG
, OPT_REG
))
164 ALT(DEF_ASM_OP2(addb
, 0x04, 0, OPC_ARITH
| OPC_BWLX
, OPT_IM
, OPT_EAX
))
165 ALT(DEF_ASM_OP2(addw
, 0x83, 0, OPC_ARITH
| OPC_MODRM
| OPC_WLX
, OPT_IM8S
, OPT_EA
| OPT_REGW
))
166 ALT(DEF_ASM_OP2(addb
, 0x80, 0, OPC_ARITH
| OPC_MODRM
| OPC_BWLX
, OPT_IM
, OPT_EA
| OPT_REG
))
168 ALT(DEF_ASM_OP2(testb
, 0x84, 0, OPC_MODRM
| OPC_BWLX
, OPT_REG
, OPT_EA
| OPT_REG
))
169 ALT(DEF_ASM_OP2(testb
, 0x84, 0, OPC_MODRM
| OPC_BWLX
, OPT_EA
| OPT_REG
, OPT_REG
))
170 ALT(DEF_ASM_OP2(testb
, 0xa8, 0, OPC_BWLX
, OPT_IM
, OPT_EAX
))
171 ALT(DEF_ASM_OP2(testb
, 0xf6, 0, OPC_MODRM
| OPC_BWLX
, OPT_IM
, OPT_EA
| OPT_REG
))
173 ALT(DEF_ASM_OP1(incw
, 0x40, 0, OPC_REG
| OPC_WLX
, OPT_REGW
))
174 ALT(DEF_ASM_OP1(incb
, 0xfe, 0, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
175 ALT(DEF_ASM_OP1(decw
, 0x48, 0, OPC_REG
| OPC_WLX
, OPT_REGW
))
176 ALT(DEF_ASM_OP1(decb
, 0xfe, 1, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
178 ALT(DEF_ASM_OP1(notb
, 0xf6, 2, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
179 ALT(DEF_ASM_OP1(negb
, 0xf6, 3, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
181 ALT(DEF_ASM_OP1(mulb
, 0xf6, 4, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
182 ALT(DEF_ASM_OP1(imulb
, 0xf6, 5, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
184 ALT(DEF_ASM_OP2(imulw
, 0x0faf, 0, OPC_MODRM
| OPC_WLX
, OPT_REG
| OPT_EA
, OPT_REG
))
185 ALT(DEF_ASM_OP3(imulw
, 0x6b, 0, OPC_MODRM
| OPC_WLX
, OPT_IM8S
, OPT_REGW
| OPT_EA
, OPT_REGW
))
186 ALT(DEF_ASM_OP2(imulw
, 0x6b, 0, OPC_MODRM
| OPC_WLX
, OPT_IM8S
, OPT_REGW
))
187 ALT(DEF_ASM_OP3(imulw
, 0x69, 0, OPC_MODRM
| OPC_WLX
, OPT_IMW
, OPT_REGW
| OPT_EA
, OPT_REGW
))
188 ALT(DEF_ASM_OP2(imulw
, 0x69, 0, OPC_MODRM
| OPC_WLX
, OPT_IMW
, OPT_REGW
))
190 ALT(DEF_ASM_OP1(divb
, 0xf6, 6, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
191 ALT(DEF_ASM_OP2(divb
, 0xf6, 6, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
, OPT_EAX
))
192 ALT(DEF_ASM_OP1(idivb
, 0xf6, 7, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
))
193 ALT(DEF_ASM_OP2(idivb
, 0xf6, 7, OPC_MODRM
| OPC_BWLX
, OPT_REG
| OPT_EA
, OPT_EAX
))
196 ALT(DEF_ASM_OP2(rolb
, 0xc0, 0, OPC_MODRM
| OPC_BWLX
| OPC_SHIFT
, OPT_IM8
, OPT_EA
| OPT_REG
))
197 ALT(DEF_ASM_OP2(rolb
, 0xd2, 0, OPC_MODRM
| OPC_BWLX
| OPC_SHIFT
, OPT_CL
, OPT_EA
| OPT_REG
))
198 ALT(DEF_ASM_OP1(rolb
, 0xd0, 0, OPC_MODRM
| OPC_BWLX
| OPC_SHIFT
, OPT_EA
| OPT_REG
))
200 ALT(DEF_ASM_OP3(shldw
, 0x0fa4, 0, OPC_MODRM
| OPC_WLX
, OPT_IM8
, OPT_REGW
, OPT_EA
| OPT_REGW
))
201 ALT(DEF_ASM_OP3(shldw
, 0x0fa5, 0, OPC_MODRM
| OPC_WLX
, OPT_CL
, OPT_REGW
, OPT_EA
| OPT_REGW
))
202 ALT(DEF_ASM_OP2(shldw
, 0x0fa5, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
, OPT_EA
| OPT_REGW
))
203 ALT(DEF_ASM_OP3(shrdw
, 0x0fac, 0, OPC_MODRM
| OPC_WLX
, OPT_IM8
, OPT_REGW
, OPT_EA
| OPT_REGW
))
204 ALT(DEF_ASM_OP3(shrdw
, 0x0fad, 0, OPC_MODRM
| OPC_WLX
, OPT_CL
, OPT_REGW
, OPT_EA
| OPT_REGW
))
205 ALT(DEF_ASM_OP2(shrdw
, 0x0fad, 0, OPC_MODRM
| OPC_WLX
, OPT_REGW
, OPT_EA
| OPT_REGW
))
207 ALT(DEF_ASM_OP1(call
, 0xff, 2, OPC_MODRM
, OPT_INDIR
))
208 ALT(DEF_ASM_OP1(call
, 0xe8, 0, 0, OPT_DISP
))
209 ALT(DEF_ASM_OP1(jmp
, 0xff, 4, OPC_MODRM
, OPT_INDIR
))
210 ALT(DEF_ASM_OP1(jmp
, 0xeb, 0, 0, OPT_DISP8
))
212 ALT(DEF_ASM_OP2(lcall
, 0x9a, 0, 0, OPT_IM16
, OPT_IM32
))
213 ALT(DEF_ASM_OP1(lcall
, 0xff, 3, OPC_MODRM
, OPT_EA
))
214 ALT(DEF_ASM_OP2(ljmp
, 0xea, 0, 0, OPT_IM16
, OPT_IM32
))
215 ALT(DEF_ASM_OP1(ljmp
, 0xff, 5, OPC_MODRM
, OPT_EA
))
217 ALT(DEF_ASM_OP1(int, 0xcd, 0, 0, OPT_IM8
))
218 ALT(DEF_ASM_OP1(seto
, 0x0f90, 0, OPC_MODRM
| OPC_TEST
, OPT_REG8
| OPT_EA
))
219 ALT(DEF_ASM_OP1(setob
, 0x0f90, 0, OPC_MODRM
| OPC_TEST
, OPT_REG8
| OPT_EA
))
220 DEF_ASM_OP2(enter
, 0xc8, 0, 0, OPT_IM16
, OPT_IM8
)
221 DEF_ASM_OP0(leave
, 0xc9)
222 DEF_ASM_OP0(ret
, 0xc3)
223 DEF_ASM_OP0(retl
,0xc3)
224 ALT(DEF_ASM_OP1(retl
,0xc2, 0, 0, OPT_IM16
))
225 ALT(DEF_ASM_OP1(ret
, 0xc2, 0, 0, OPT_IM16
))
226 DEF_ASM_OP0(lret
, 0xcb)
227 ALT(DEF_ASM_OP1(lret
, 0xca, 0, 0, OPT_IM16
))
229 ALT(DEF_ASM_OP1(jo
, 0x70, 0, OPC_TEST
, OPT_DISP8
))
230 DEF_ASM_OP1(loopne
, 0xe0, 0, 0, OPT_DISP8
)
231 DEF_ASM_OP1(loopnz
, 0xe0, 0, 0, OPT_DISP8
)
232 DEF_ASM_OP1(loope
, 0xe1, 0, 0, OPT_DISP8
)
233 DEF_ASM_OP1(loopz
, 0xe1, 0, 0, OPT_DISP8
)
234 DEF_ASM_OP1(loop
, 0xe2, 0, 0, OPT_DISP8
)
235 DEF_ASM_OP1(jecxz
, 0xe3, 0, 0, OPT_DISP8
)
238 /* specific fcomp handling */
239 ALT(DEF_ASM_OP0L(fcomp
, 0xd8d9, 0, 0))
241 ALT(DEF_ASM_OP1(fadd
, 0xd8c0, 0, OPC_FARITH
| OPC_REG
, OPT_ST
))
242 ALT(DEF_ASM_OP2(fadd
, 0xd8c0, 0, OPC_FARITH
| OPC_REG
, OPT_ST
, OPT_ST0
))
243 ALT(DEF_ASM_OP2(fadd
, 0xdcc0, 0, OPC_FARITH
| OPC_REG
, OPT_ST0
, OPT_ST
))
244 ALT(DEF_ASM_OP2(fmul
, 0xdcc8, 0, OPC_FARITH
| OPC_REG
, OPT_ST0
, OPT_ST
))
245 ALT(DEF_ASM_OP0L(fadd
, 0xdec1, 0, OPC_FARITH
))
246 ALT(DEF_ASM_OP1(faddp
, 0xdec0, 0, OPC_FARITH
| OPC_REG
, OPT_ST
))
247 ALT(DEF_ASM_OP2(faddp
, 0xdec0, 0, OPC_FARITH
| OPC_REG
, OPT_ST
, OPT_ST0
))
248 ALT(DEF_ASM_OP2(faddp
, 0xdec0, 0, OPC_FARITH
| OPC_REG
, OPT_ST0
, OPT_ST
))
249 ALT(DEF_ASM_OP0L(faddp
, 0xdec1, 0, OPC_FARITH
))
250 ALT(DEF_ASM_OP1(fadds
, 0xd8, 0, OPC_FARITH
| OPC_MODRM
, OPT_EA
))
251 ALT(DEF_ASM_OP1(fiaddl
, 0xda, 0, OPC_FARITH
| OPC_MODRM
, OPT_EA
))
252 ALT(DEF_ASM_OP1(faddl
, 0xdc, 0, OPC_FARITH
| OPC_MODRM
, OPT_EA
))
253 ALT(DEF_ASM_OP1(fiadds
, 0xde, 0, OPC_FARITH
| OPC_MODRM
, OPT_EA
))
255 DEF_ASM_OP0(fucompp
, 0xdae9)
256 DEF_ASM_OP0(ftst
, 0xd9e4)
257 DEF_ASM_OP0(fxam
, 0xd9e5)
258 DEF_ASM_OP0(fld1
, 0xd9e8)
259 DEF_ASM_OP0(fldl2t
, 0xd9e9)
260 DEF_ASM_OP0(fldl2e
, 0xd9ea)
261 DEF_ASM_OP0(fldpi
, 0xd9eb)
262 DEF_ASM_OP0(fldlg2
, 0xd9ec)
263 DEF_ASM_OP0(fldln2
, 0xd9ed)
264 DEF_ASM_OP0(fldz
, 0xd9ee)
266 DEF_ASM_OP0(f2xm1
, 0xd9f0)
267 DEF_ASM_OP0(fyl2x
, 0xd9f1)
268 DEF_ASM_OP0(fptan
, 0xd9f2)
269 DEF_ASM_OP0(fpatan
, 0xd9f3)
270 DEF_ASM_OP0(fxtract
, 0xd9f4)
271 DEF_ASM_OP0(fprem1
, 0xd9f5)
272 DEF_ASM_OP0(fdecstp
, 0xd9f6)
273 DEF_ASM_OP0(fincstp
, 0xd9f7)
274 DEF_ASM_OP0(fprem
, 0xd9f8)
275 DEF_ASM_OP0(fyl2xp1
, 0xd9f9)
276 DEF_ASM_OP0(fsqrt
, 0xd9fa)
277 DEF_ASM_OP0(fsincos
, 0xd9fb)
278 DEF_ASM_OP0(frndint
, 0xd9fc)
279 DEF_ASM_OP0(fscale
, 0xd9fd)
280 DEF_ASM_OP0(fsin
, 0xd9fe)
281 DEF_ASM_OP0(fcos
, 0xd9ff)
282 DEF_ASM_OP0(fchs
, 0xd9e0)
283 DEF_ASM_OP0(fabs
, 0xd9e1)
284 DEF_ASM_OP0(fninit
, 0xdbe3)
285 DEF_ASM_OP0(fnclex
, 0xdbe2)
286 DEF_ASM_OP0(fnop
, 0xd9d0)
289 DEF_ASM_OP1(fld
, 0xd9c0, 0, OPC_REG
, OPT_ST
)
290 DEF_ASM_OP1(fldl
, 0xd9c0, 0, OPC_REG
, OPT_ST
)
291 DEF_ASM_OP1(flds
, 0xd9, 0, OPC_MODRM
, OPT_EA
)
292 ALT(DEF_ASM_OP1(fldl
, 0xdd, 0, OPC_MODRM
, OPT_EA
))
293 DEF_ASM_OP1(fildl
, 0xdb, 0, OPC_MODRM
, OPT_EA
)
294 DEF_ASM_OP1(fildq
, 0xdf, 5, OPC_MODRM
, OPT_EA
)
295 DEF_ASM_OP1(fildll
, 0xdf, 5, OPC_MODRM
,OPT_EA
)
296 DEF_ASM_OP1(fldt
, 0xdb, 5, OPC_MODRM
, OPT_EA
)
297 DEF_ASM_OP1(fbld
, 0xdf, 4, OPC_MODRM
, OPT_EA
)
300 DEF_ASM_OP1(fst
, 0xddd0, 0, OPC_REG
, OPT_ST
)
301 DEF_ASM_OP1(fstl
, 0xddd0, 0, OPC_REG
, OPT_ST
)
302 DEF_ASM_OP1(fsts
, 0xd9, 2, OPC_MODRM
, OPT_EA
)
303 DEF_ASM_OP1(fstps
, 0xd9, 3, OPC_MODRM
, OPT_EA
)
304 ALT(DEF_ASM_OP1(fstl
, 0xdd, 2, OPC_MODRM
, OPT_EA
))
305 DEF_ASM_OP1(fstpl
, 0xdd, 3, OPC_MODRM
, OPT_EA
)
306 DEF_ASM_OP1(fist
, 0xdf, 2, OPC_MODRM
, OPT_EA
)
307 DEF_ASM_OP1(fistp
, 0xdf, 3, OPC_MODRM
, OPT_EA
)
308 DEF_ASM_OP1(fistl
, 0xdb, 2, OPC_MODRM
, OPT_EA
)
309 DEF_ASM_OP1(fistpl
, 0xdb, 3, OPC_MODRM
, OPT_EA
)
311 DEF_ASM_OP1(fstp
, 0xddd8, 0, OPC_REG
, OPT_ST
)
312 DEF_ASM_OP1(fistpq
, 0xdf, 7, OPC_MODRM
, OPT_EA
)
313 DEF_ASM_OP1(fistpll
, 0xdf, 7, OPC_MODRM
, OPT_EA
)
314 DEF_ASM_OP1(fstpt
, 0xdb, 7, OPC_MODRM
, OPT_EA
)
315 DEF_ASM_OP1(fbstp
, 0xdf, 6, OPC_MODRM
, OPT_EA
)
318 DEF_ASM_OP0(fxch
, 0xd9c9)
319 ALT(DEF_ASM_OP1(fxch
, 0xd9c8, 0, OPC_REG
, OPT_ST
))
322 DEF_ASM_OP1(fucom
, 0xdde0, 0, OPC_REG
, OPT_ST
)
323 DEF_ASM_OP1(fucomp
, 0xdde8, 0, OPC_REG
, OPT_ST
)
325 DEF_ASM_OP0L(finit
, 0xdbe3, 0, OPC_FWAIT
)
326 DEF_ASM_OP1(fldcw
, 0xd9, 5, OPC_MODRM
, OPT_EA
)
327 DEF_ASM_OP1(fnstcw
, 0xd9, 7, OPC_MODRM
, OPT_EA
)
328 DEF_ASM_OP1(fstcw
, 0xd9, 7, OPC_MODRM
| OPC_FWAIT
, OPT_EA
)
329 DEF_ASM_OP0(fnstsw
, 0xdfe0)
330 ALT(DEF_ASM_OP1(fnstsw
, 0xdfe0, 0, 0, OPT_EAX
))
331 ALT(DEF_ASM_OP1(fnstsw
, 0xdd, 7, OPC_MODRM
, OPT_EA
))
332 DEF_ASM_OP1(fstsw
, 0xdfe0, 0, OPC_FWAIT
, OPT_EAX
)
333 ALT(DEF_ASM_OP0L(fstsw
, 0xdfe0, 0, OPC_FWAIT
))
334 ALT(DEF_ASM_OP1(fstsw
, 0xdd, 7, OPC_MODRM
| OPC_FWAIT
, OPT_EA
))
335 DEF_ASM_OP0L(fclex
, 0xdbe2, 0, OPC_FWAIT
)
336 DEF_ASM_OP1(fnstenv
, 0xd9, 6, OPC_MODRM
, OPT_EA
)
337 DEF_ASM_OP1(fstenv
, 0xd9, 6, OPC_MODRM
| OPC_FWAIT
, OPT_EA
)
338 DEF_ASM_OP1(fldenv
, 0xd9, 4, OPC_MODRM
, OPT_EA
)
339 DEF_ASM_OP1(fnsave
, 0xdd, 6, OPC_MODRM
, OPT_EA
)
340 DEF_ASM_OP1(fsave
, 0xdd, 6, OPC_MODRM
| OPC_FWAIT
, OPT_EA
)
341 DEF_ASM_OP1(frstor
, 0xdd, 4, OPC_MODRM
, OPT_EA
)
342 DEF_ASM_OP1(ffree
, 0xddc0, 4, OPC_REG
, OPT_ST
)
343 DEF_ASM_OP1(ffreep
, 0xdfc0, 4, OPC_REG
, OPT_ST
)
344 DEF_ASM_OP1(fxsave
, 0x0fae, 0, OPC_MODRM
, OPT_EA
)
345 DEF_ASM_OP1(fxrstor
, 0x0fae, 1, OPC_MODRM
, OPT_EA
)
348 DEF_ASM_OP2(arpl
, 0x63, 0, OPC_MODRM
, OPT_REG16
, OPT_REG16
| OPT_EA
)
349 ALT(DEF_ASM_OP2(larw
, 0x0f02, 0, OPC_MODRM
| OPC_WLX
, OPT_REG
| OPT_EA
, OPT_REG
))
350 DEF_ASM_OP1(lgdt
, 0x0f01, 2, OPC_MODRM
, OPT_EA
)
351 DEF_ASM_OP1(lidt
, 0x0f01, 3, OPC_MODRM
, OPT_EA
)
352 DEF_ASM_OP1(lldt
, 0x0f00, 2, OPC_MODRM
, OPT_EA
| OPT_REG
)
353 DEF_ASM_OP1(lmsw
, 0x0f01, 6, OPC_MODRM
, OPT_EA
| OPT_REG
)
354 ALT(DEF_ASM_OP2(lslw
, 0x0f03, 0, OPC_MODRM
| OPC_WLX
, OPT_EA
| OPT_REG
, OPT_REG
))
355 DEF_ASM_OP1(ltr
, 0x0f00, 3, OPC_MODRM
, OPT_EA
| OPT_REG
)
356 DEF_ASM_OP1(sgdt
, 0x0f01, 0, OPC_MODRM
, OPT_EA
)
357 DEF_ASM_OP1(sidt
, 0x0f01, 1, OPC_MODRM
, OPT_EA
)
358 DEF_ASM_OP1(sldt
, 0x0f00, 0, OPC_MODRM
, OPT_REG
| OPT_EA
)
359 DEF_ASM_OP1(smsw
, 0x0f01, 4, OPC_MODRM
, OPT_REG
| OPT_EA
)
360 DEF_ASM_OP1(str
, 0x0f00, 1, OPC_MODRM
, OPT_REG16
| OPT_EA
)
361 DEF_ASM_OP1(verr
, 0x0f00, 4, OPC_MODRM
, OPT_REG
| OPT_EA
)
362 DEF_ASM_OP1(verw
, 0x0f00, 5, OPC_MODRM
, OPT_REG
| OPT_EA
)
365 DEF_ASM_OP1(bswap
, 0x0fc8, 0, OPC_REG
, OPT_REG32
)
366 ALT(DEF_ASM_OP2(xaddb
, 0x0fc0, 0, OPC_MODRM
| OPC_BWLX
, OPT_REG
, OPT_REG
| OPT_EA
))
367 ALT(DEF_ASM_OP2(cmpxchgb
, 0x0fb0, 0, OPC_MODRM
| OPC_BWLX
, OPT_REG
, OPT_REG
| OPT_EA
))
368 DEF_ASM_OP1(invlpg
, 0x0f01, 7, OPC_MODRM
, OPT_EA
)
370 DEF_ASM_OP2(boundl
, 0x62, 0, OPC_MODRM
, OPT_REG32
, OPT_EA
)
371 DEF_ASM_OP2(boundw
, 0x6662, 0, OPC_MODRM
, OPT_REG16
, OPT_EA
)
374 DEF_ASM_OP1(cmpxchg8b
, 0x0fc7, 1, OPC_MODRM
, OPT_EA
)
377 ALT(DEF_ASM_OP2(cmovo
, 0x0f40, 0, OPC_MODRM
| OPC_TEST
| OPC_WLX
, OPT_REGW
| OPT_EA
, OPT_REGW
))
378 DEF_ASM_OP2(fcmovb
, 0xdac0, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
379 DEF_ASM_OP2(fcmove
, 0xdac8, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
380 DEF_ASM_OP2(fcmovbe
, 0xdad0, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
381 DEF_ASM_OP2(fcmovu
, 0xdad8, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
382 DEF_ASM_OP2(fcmovnb
, 0xdbc0, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
383 DEF_ASM_OP2(fcmovne
, 0xdbc8, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
384 DEF_ASM_OP2(fcmovnbe
, 0xdbd0, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
385 DEF_ASM_OP2(fcmovnu
, 0xdbd8, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
387 DEF_ASM_OP2(fucomi
, 0xdbe8, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
388 DEF_ASM_OP2(fcomi
, 0xdbf0, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
389 DEF_ASM_OP2(fucomip
, 0xdfe8, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
390 DEF_ASM_OP2(fcomip
, 0xdff0, 0, OPC_REG
, OPT_ST
, OPT_ST0
)
393 DEF_ASM_OP0(emms
, 0x0f77) /* must be last OP0 */
394 DEF_ASM_OP2(movd
, 0x0f6e, 0, OPC_MODRM
, OPT_EA
| OPT_REG32
, OPT_MMXSSE
)
395 DEF_ASM_OP2(movq
, 0x0f6f, 0, OPC_MODRM
, OPT_EA
| OPT_MMX
, OPT_MMX
)
396 ALT(DEF_ASM_OP2(movd
, 0x0f7e, 0, OPC_MODRM
, OPT_MMXSSE
, OPT_EA
| OPT_REG32
))
397 ALT(DEF_ASM_OP2(movq
, 0x0f7f, 0, OPC_MODRM
, OPT_MMX
, OPT_EA
| OPT_MMX
))
398 ALT(DEF_ASM_OP2(movq
, 0x660fd6, 0, OPC_MODRM
, OPT_SSE
, OPT_EA
| OPT_SSE
))
399 ALT(DEF_ASM_OP2(movq
, 0xf30f7e, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
))
401 DEF_ASM_OP2(packssdw
, 0x0f6b, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
402 DEF_ASM_OP2(packsswb
, 0x0f63, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
403 DEF_ASM_OP2(packuswb
, 0x0f67, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
404 DEF_ASM_OP2(paddb
, 0x0ffc, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
405 DEF_ASM_OP2(paddw
, 0x0ffd, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
406 DEF_ASM_OP2(paddd
, 0x0ffe, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
407 DEF_ASM_OP2(paddsb
, 0x0fec, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
408 DEF_ASM_OP2(paddsw
, 0x0fed, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
409 DEF_ASM_OP2(paddusb
, 0x0fdc, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
410 DEF_ASM_OP2(paddusw
, 0x0fdd, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
411 DEF_ASM_OP2(pand
, 0x0fdb, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
412 DEF_ASM_OP2(pandn
, 0x0fdf, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
413 DEF_ASM_OP2(pcmpeqb
, 0x0f74, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
414 DEF_ASM_OP2(pcmpeqw
, 0x0f75, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
415 DEF_ASM_OP2(pcmpeqd
, 0x0f76, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
416 DEF_ASM_OP2(pcmpgtb
, 0x0f64, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
417 DEF_ASM_OP2(pcmpgtw
, 0x0f65, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
418 DEF_ASM_OP2(pcmpgtd
, 0x0f66, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
419 DEF_ASM_OP2(pmaddwd
, 0x0ff5, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
420 DEF_ASM_OP2(pmulhw
, 0x0fe5, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
421 DEF_ASM_OP2(pmullw
, 0x0fd5, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
422 DEF_ASM_OP2(por
, 0x0feb, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
423 DEF_ASM_OP2(psllw
, 0x0ff1, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
424 ALT(DEF_ASM_OP2(psllw
, 0x0f71, 6, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
425 DEF_ASM_OP2(pslld
, 0x0ff2, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
426 ALT(DEF_ASM_OP2(pslld
, 0x0f72, 6, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
427 DEF_ASM_OP2(psllq
, 0x0ff3, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
428 ALT(DEF_ASM_OP2(psllq
, 0x0f73, 6, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
429 DEF_ASM_OP2(psraw
, 0x0fe1, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
430 ALT(DEF_ASM_OP2(psraw
, 0x0f71, 4, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
431 DEF_ASM_OP2(psrad
, 0x0fe2, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
432 ALT(DEF_ASM_OP2(psrad
, 0x0f72, 4, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
433 DEF_ASM_OP2(psrlw
, 0x0fd1, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
434 ALT(DEF_ASM_OP2(psrlw
, 0x0f71, 2, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
435 DEF_ASM_OP2(psrld
, 0x0fd2, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
436 ALT(DEF_ASM_OP2(psrld
, 0x0f72, 2, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
437 DEF_ASM_OP2(psrlq
, 0x0fd3, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
438 ALT(DEF_ASM_OP2(psrlq
, 0x0f73, 2, OPC_MODRM
, OPT_IM8
, OPT_MMXSSE
))
439 DEF_ASM_OP2(psubb
, 0x0ff8, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
440 DEF_ASM_OP2(psubw
, 0x0ff9, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
441 DEF_ASM_OP2(psubd
, 0x0ffa, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
442 DEF_ASM_OP2(psubsb
, 0x0fe8, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
443 DEF_ASM_OP2(psubsw
, 0x0fe9, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
444 DEF_ASM_OP2(psubusb
, 0x0fd8, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
445 DEF_ASM_OP2(psubusw
, 0x0fd9, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
446 DEF_ASM_OP2(punpckhbw
, 0x0f68, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
447 DEF_ASM_OP2(punpckhwd
, 0x0f69, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
448 DEF_ASM_OP2(punpckhdq
, 0x0f6a, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
449 DEF_ASM_OP2(punpcklbw
, 0x0f60, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
450 DEF_ASM_OP2(punpcklwd
, 0x0f61, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
451 DEF_ASM_OP2(punpckldq
, 0x0f62, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
452 DEF_ASM_OP2(pxor
, 0x0fef, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
455 DEF_ASM_OP1(ldmxcsr
, 0x0fae, 2, OPC_MODRM
, OPT_EA
)
456 DEF_ASM_OP1(stmxcsr
, 0x0fae, 3, OPC_MODRM
, OPT_EA
)
457 DEF_ASM_OP2(movups
, 0x0f10, 0, OPC_MODRM
, OPT_EA
| OPT_REG32
, OPT_SSE
)
458 ALT(DEF_ASM_OP2(movups
, 0x0f11, 0, OPC_MODRM
, OPT_SSE
, OPT_EA
| OPT_REG32
))
459 DEF_ASM_OP2(movaps
, 0x0f28, 0, OPC_MODRM
, OPT_EA
| OPT_REG32
, OPT_SSE
)
460 ALT(DEF_ASM_OP2(movaps
, 0x0f29, 0, OPC_MODRM
, OPT_SSE
, OPT_EA
| OPT_REG32
))
461 DEF_ASM_OP2(movhps
, 0x0f16, 0, OPC_MODRM
, OPT_EA
| OPT_REG32
, OPT_SSE
)
462 ALT(DEF_ASM_OP2(movhps
, 0x0f17, 0, OPC_MODRM
, OPT_SSE
, OPT_EA
| OPT_REG32
))
463 DEF_ASM_OP2(addps
, 0x0f58, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
464 DEF_ASM_OP2(cvtpi2ps
, 0x0f2a, 0, OPC_MODRM
, OPT_EA
| OPT_MMX
, OPT_SSE
)
465 DEF_ASM_OP2(cvtps2pi
, 0x0f2d, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_MMX
)
466 DEF_ASM_OP2(cvttps2pi
, 0x0f2c, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_MMX
)
467 DEF_ASM_OP2(divps
, 0x0f5e, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
468 DEF_ASM_OP2(maxps
, 0x0f5f, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
469 DEF_ASM_OP2(minps
, 0x0f5d, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
470 DEF_ASM_OP2(mulps
, 0x0f59, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
471 DEF_ASM_OP2(pavgb
, 0x0fe0, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
472 DEF_ASM_OP2(pavgw
, 0x0fe3, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
473 DEF_ASM_OP2(pmaxsw
, 0x0fee, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
474 DEF_ASM_OP2(pmaxub
, 0x0fde, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
475 DEF_ASM_OP2(pminsw
, 0x0fea, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
476 DEF_ASM_OP2(pminub
, 0x0fda, 0, OPC_MODRM
, OPT_EA
| OPT_MMXSSE
, OPT_MMXSSE
)
477 DEF_ASM_OP2(rcpss
, 0x0f53, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
478 DEF_ASM_OP2(rsqrtps
, 0x0f52, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
479 DEF_ASM_OP2(sqrtps
, 0x0f51, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)
480 DEF_ASM_OP2(subps
, 0x0f5c, 0, OPC_MODRM
, OPT_EA
| OPT_SSE
, OPT_SSE
)