Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 1 | %mask {s} 1 |
| 2 | %mask {w} 1 |
| 3 | %mask {w1} 1 |
| 4 | dnl floating point reg suffix |
| 5 | %mask {D} 1 |
| 6 | %mask {imm8} 8 |
| 7 | %mask {imms8} 8 |
| 8 | %mask {imm16} 16 |
| 9 | %mask {reg} 3 |
| 10 | %mask {reg16} 3 |
| 11 | %mask {tttn} 4 |
| 12 | %mask {gg} 2 |
| 13 | %mask {mod} 2 |
| 14 | %mask {moda} 2 |
| 15 | %mask {MOD} 2 |
| 16 | %mask {r_m} 3 |
| 17 | dnl like {r_m} but referencing byte register |
| 18 | %mask {8r_m} 3 |
| 19 | dnl like {r_m} but referencing 16-bit register |
| 20 | %mask {16r_m} 3 |
| 21 | %mask {disp8} 8 |
| 22 | dnl imm really is 8/16/32 bit depending on the situation. |
| 23 | %mask {imm} 8 |
| 24 | %mask {imms} 8 |
| 25 | %mask {rel} 32 |
| 26 | %mask {abs} 32 |
| 27 | %mask {absval} 32 |
| 28 | %mask {sel} 16 |
| 29 | %mask {imm32} 32 |
| 30 | %mask {ccc} 3 |
| 31 | %mask {ddd} 3 |
| 32 | %mask {sreg3} 3 |
| 33 | %mask {sreg2} 2 |
| 34 | %mask {mmxreg} 3 |
| 35 | %mask {mmxreg2} 3 |
| 36 | %mask {R_M} 3 |
| 37 | %mask {0g} 2 |
| 38 | %mask {GG} 2 |
| 39 | %mask {gG} 2 |
| 40 | %mask {Mod} 2 |
| 41 | %mask {xmmreg} 3 |
| 42 | %mask {R_m} 3 |
| 43 | %mask {mmreg} 3 |
| 44 | %mask {xmmreg1} 3 |
| 45 | %mask {xmmreg2} 3 |
| 46 | %mask {predpd} 8 |
| 47 | %mask {predps} 8 |
| 48 | %mask {predsd} 8 |
| 49 | %mask {predss} 8 |
| 50 | %mask {freg} 3 |
| 51 | %mask {fmod} 2 |
| 52 | %mask {fr_m} 3 |
| 53 | %prefix {R} |
| 54 | %prefix {RE} |
| 55 | %suffix {W} |
| 56 | %suffix {w0} |
| 57 | %synonym {xmmreg1} {xmmreg} |
| 58 | %synonym {xmmreg2} {xmmreg} |
| 59 | |
| 60 | %% |
| 61 | ifdef(`i386', |
| 62 | `00110111:aaa |
| 63 | 11010101,00001010:aad |
| 64 | 11010100,00001010:aam |
| 65 | 00111111:aas |
| 66 | ')dnl |
| 67 | 0001010{w},{imm}:adc {imm}{w},{ax}{w} |
| 68 | 1000000{w},{mod}010{r_m},{imm}:adc{w} {imm}{w},{mod}{r_m}{w} |
| 69 | 1000001{w},{mod}010{r_m},{imms8}:adc{w} {imms8},{mod}{r_m} |
| 70 | 0001000{w},{mod}{reg}{r_m}:adc {reg}{w},{mod}{r_m} |
| 71 | 0001001{w},{mod}{reg}{r_m}:adc {mod}{r_m},{reg}{w} |
| 72 | 0000010{w},{imm}:add {imm}{w},{ax}{w} |
| 73 | 1000000{w},{mod}000{r_m},{imm}:add{w} {imm}{w},{mod}{r_m}{w} |
| 74 | 10000011,{mod}000{r_m},{imms8}:add{w0} {imms8},{mod}{r_m} |
| 75 | 0000000{w},{mod}{reg}{r_m}:add {reg}{w},{mod}{r_m} |
| 76 | 0000001{w},{mod}{reg}{r_m}:add {mod}{r_m},{reg}{w} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 77 | 01100110,00001111,11010000,{Mod}{xmmreg}{R_m}:addsubpd {Mod}{R_m},{xmmreg} |
| 78 | 11110010,00001111,11010000,{Mod}{xmmreg}{R_m}:addsubps {Mod}{R_m},{xmmreg} |
| 79 | 0010010{w},{imm}:and {imm}{w},{ax}{w} |
| 80 | 1000000{w},{mod}100{r_m},{imm}:and{w} {imm}{w},{mod}{r_m}{w} |
| 81 | 1000001{w},{mod}100{r_m},{imms}:and{w} {imms},{mod}{r_m} |
| 82 | 0010000{w},{mod}{reg}{r_m}:and {reg}{w},{mod}{r_m}{w} |
| 83 | 0010001{w},{mod}{reg}{r_m}:and {mod}{r_m}{w},{reg}{w} |
| 84 | 01100110,00001111,01010100,{Mod}{xmmreg}{R_m}:andpd {Mod}{R_m},{xmmreg} |
| 85 | 00001111,01010100,{Mod}{xmmreg}{R_m}:andps {Mod}{R_m},{xmmreg} |
| 86 | 01100110,00001111,01010101,{Mod}{xmmreg}{R_m}:andnpd {Mod}{R_m},{xmmreg} |
| 87 | 00001111,01010101,{Mod}{xmmreg}{R_m}:andnps {Mod}{R_m},{xmmreg} |
| 88 | ifdef(`i386', |
| 89 | `01100011,{mod}{reg16}{r_m}:arpl {reg16},{mod}{r_m} |
| 90 | 01100010,{moda}{reg}{r_m}:bound {reg},{moda}{r_m} |
| 91 | ')dnl |
| 92 | 00001111,10111100,{mod}{reg}{r_m}:bsf {reg},{mod}{r_m} |
| 93 | 00001111,10111101,{mod}{reg}{r_m}:bsr {reg},{mod}{r_m} |
| 94 | 00001111,11001{reg}:bswap {reg} |
| 95 | 00001111,10100011,{mod}{reg}{r_m}:bt {reg},{mod}{r_m} |
| 96 | 00001111,10111010,{mod}100{r_m},{imm8}:bt {imm8},{mod}{r_m} |
| 97 | 00001111,10111011,{mod}{reg}{r_m}:btc {reg},{mod}{r_m} |
| 98 | 00001111,10111010,{mod}111{r_m},{imm8}:btc {imm8},{mod}{r_m} |
| 99 | 00001111,10110011,{mod}{reg}{r_m}:btr {reg},{mod}{r_m} |
| 100 | 00001111,10111010,{mod}110{r_m},{imm8}:btr {imm8},{mod}{r_m} |
| 101 | 00001111,10101011,{mod}{reg}{r_m}:bts {reg},{mod}{r_m} |
| 102 | 00001111,10111010,{mod}101{r_m},{imm8}:bts {imm8},{mod}{r_m} |
| 103 | 11101000,{rel}:call {rel} |
| 104 | 11111111,{mod}010{r_m}:call *{mod}{r_m} |
| 105 | ifdef(`i386', |
| 106 | `10011010,{absval},{sel}:lcall {sel},{absval} |
| 107 | ')dnl |
| 108 | 11111111,{mod}011{r_m}:lcall *{mod}{r_m} |
| 109 | # SPECIAL 10011000:[{rex.w}?cltq:{dpfx}?cbtw:cwtl] |
| 110 | 10011000:INVALID |
| 111 | # SPECIAL 10011001:[{rew.w}?cqto:{dpfx}?cltd:cwtd] |
| 112 | 10011001:INVALID |
| 113 | 11111000:clc |
| 114 | 11111100:cld |
| 115 | 00001111,10101110,{mod}111{r_m}:clflush {mod}{r_m} |
| 116 | 11111010:cli |
| 117 | 00001111,00000101:syscall |
| 118 | 00001111,00000110:clts |
| 119 | 00001111,00000111:sysret |
| 120 | 00001111,00110100:sysenter |
| 121 | 00001111,00110101:sysexit |
| 122 | 11110101:cmc |
| 123 | 00001111,0100{tttn},{mod}{reg}{r_m}:cmov{tttn} {mod}{r_m},{reg} |
| 124 | 0011110{w},{imm}:cmp {imm}{w},{ax}{w} |
| 125 | 1000000{w},{mod}111{r_m},{imm}:cmp{w} {imm}{w},{mod}{r_m}{w} |
| 126 | 10000011,{mod}111{r_m},{imms8}:cmp{w0} {imms8},{mod}{r_m} |
| 127 | 0011100{w},{mod}{reg}{r_m}:cmp {reg}{w},{mod}{r_m}{w} |
| 128 | 0011101{w},{mod}{reg}{r_m}:cmp {mod}{r_m}{w},{reg}{w} |
| 129 | 01100110,00001111,11000010,{Mod}{xmmreg}{R_m},{predpd}:cmpl{predpd} {Mod}{R_m},{xmmreg} |
| 130 | ifdef(`ASSEMBLER', |
| 131 | `01100110,00001111,11000010,{Mod}{xmmreg}{R_m},{imm8}:cmppd {imm8},{Mod}{R_m},{xmmreg |
| 132 | }')dnl |
| 133 | 00001111,11000010,{Mod}{xmmreg}{R_m},{predps}:cmpl{predps} {Mod}{R_m},{xmmreg} |
| 134 | ifdef(`ASSEMBLER', |
| 135 | `00001111,11000010,{Mod}{xmmreg}{R_m},{imm8}:cmpps {imm8},{Mod}{R_m},{xmmreg} |
| 136 | ')dnl |
| 137 | 1010011{w}:{RE}cmps{w} {es_di},{ds_si} |
| 138 | 11110010,00001111,11000010,{Mod}{xmmreg}{R_m},{predsd}:cmpl{predsd} {Mod}{R_m},{xmmreg} |
| 139 | ifdef(`ASSEMBLER', |
| 140 | `11110010,00001111,11000010,{Mod}{xmmreg}{R_m},{imm8}:cmpsd {imm8},{Mod}{R_m},{xmmreg} |
| 141 | ')dnl |
| 142 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},{predss}:cmpl{predss} {Mod}{R_m},{xmmreg} |
| 143 | ifdef(`ASSEMBLER', |
| 144 | `11110011,00001111,11000010,{Mod}{xmmreg}{R_m},{imm8}:cmpss {imm8},{Mod}{R_m},{xmmreg} |
| 145 | ')dnl |
| 146 | 00001111,1011000{w},{mod}{reg}{r_m}:cmpxchg{w} {reg},{mod}{r_m} |
| 147 | # SPECIAL 00001111,11000111,{mod}001{r_m}:[{rex.w}?cmpxchg16b:cmpxchg8b] {reg},{mod}{r_m} |
| 148 | 00001111,10100010:cpuid |
| 149 | 11110011,00001111,11100110,{Mod}{xmmreg}{R_m}:cvtdq2pd {Mod}{R_m},{xmmreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 150 | 11110010,00001111,11100110,{Mod}{xmmreg}{R_m}:cvtpd2dq {Mod}{R_m},{xmmreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 151 | 01100110,00001111,11100110,{Mod}{xmmreg}{R_m}:cvttpd2dq {Mod}{R_m},{xmmreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 152 | ifdef(`i386', |
| 153 | `00100111:daa |
| 154 | 00101111:das |
| 155 | ')dnl |
| 156 | 1111111{w},{mod}001{r_m}:dec{w} {mod}{r_m}{w} |
| 157 | ifdef(`i386', |
| 158 | `01001{reg}:dec {reg} |
| 159 | ')dnl |
| 160 | 1111011{w},{mod}110{r_m}:div{w} {mod}{r_m}{w} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 161 | 00001111,01110111:emms |
| 162 | 11001000,{imm16},{imm8}:enter {imm16},{imm8} |
| 163 | 11011001,11010000:fnop |
| 164 | 11011001,11100000:fchs |
| 165 | 11011001,11100001:fabs |
| 166 | 11011001,11100100:ftst |
| 167 | 11011001,11100101:fxam |
| 168 | 11011001,11101000:fld1 |
| 169 | 11011001,11101001:fldl2t |
| 170 | 11011001,11101010:fldl2e |
| 171 | 11011001,11101011:fldpi |
| 172 | 11011001,11101100:fldlg2 |
| 173 | 11011001,11101101:fldln2 |
| 174 | 11011001,11101110:fldz |
| 175 | 11011001,11110000:f2xm1 |
| 176 | 11011001,11110001:fyl2x |
| 177 | 11011001,11110010:fptan |
| 178 | 11011001,11110011:fpatan |
| 179 | 11011001,11110100:fxtract |
| 180 | 11011001,11110101:fprem1 |
| 181 | 11011001,11110110:fdecstp |
| 182 | 11011001,11110111:fincstp |
| 183 | 11011001,11111000:fprem |
| 184 | 11011001,11111001:fyl2xp1 |
| 185 | 11011001,11111010:fsqrt |
| 186 | 11011001,11111011:fsincos |
| 187 | 11011001,11111100:frndint |
| 188 | 11011001,11111101:fscale |
| 189 | 11011001,11111110:fsin |
| 190 | 11011001,11111111:fcos |
| 191 | # ORDER |
| 192 | 11011000,11000{freg}:fadd {freg},%st |
| 193 | 11011100,11000{freg}:fadd %st,{freg} |
| 194 | 11011{D}00,{mod}000{r_m}:fadd{D} {mod}{r_m} |
| 195 | # ORDER END |
| 196 | # ORDER |
| 197 | 11011000,11001{freg}:fmul {freg},%st |
| 198 | 11011100,11001{freg}:fmul %st,{freg} |
| 199 | 11011{D}00,{mod}001{r_m}:fmul{D} {mod}{r_m} |
| 200 | # ORDER END |
| 201 | # ORDER |
| 202 | 11011000,11100{freg}:fsub {freg},%st |
| 203 | 11011100,11100{freg}:fsub %st,{freg} |
| 204 | 11011{D}00,{mod}100{r_m}:fsub{D} {mod}{r_m} |
| 205 | # ORDER END |
| 206 | # ORDER |
| 207 | 11011000,11101{freg}:fsubr {freg},%st |
| 208 | 11011100,11101{freg}:fsubr %st,{freg} |
| 209 | 11011{D}00,{mod}101{r_m}:fsubr{D} {mod}{r_m} |
| 210 | # ORDER END |
| 211 | # ORDER |
| 212 | 11011101,11010{freg}:fst {freg} |
| 213 | 11011{D}01,{mod}010{r_m}:fst{D} {mod}{r_m} |
| 214 | # ORDER END |
| 215 | # ORDER |
| 216 | 11011101,11011{freg}:fstp {freg} |
| 217 | 11011{D}01,{mod}011{r_m}:fstp{D} {mod}{r_m} |
| 218 | # ORDER END |
| 219 | 11011001,{mod}100{r_m}:fldenv {mod}{r_m} |
| 220 | 11011001,{mod}101{r_m}:fldcw {mod}{r_m} |
| 221 | 11011001,{mod}110{r_m}:fnstenv {mod}{r_m} |
| 222 | 11011001,{mod}111{r_m}:fnstcw {mod}{r_m} |
| 223 | 11011001,11001{freg}:fxch {freg} |
| 224 | # ORDER |
| 225 | 11011110,11000{freg}:faddp %st,{freg} |
| 226 | ifdef(`ASSEMBLER', |
| 227 | `11011110,11000001:faddp |
| 228 | ')dnl |
| 229 | # ORDER |
| 230 | 11011010,11000{freg}:fcmovb {freg},%st |
| 231 | 11011{w1}10,{mod}000{r_m}:fiadd{w1} {mod}{r_m} |
| 232 | # ORDER END |
| 233 | # ORDER |
| 234 | 11011010,11001{freg}:fcmove {freg},%st |
| 235 | 11011110,11001{freg}:fmulp %st,{freg} |
| 236 | 11011{w1}10,{mod}001{r_m}:fimul{w1} {mod}{r_m} |
| 237 | # ORDER END |
| 238 | # ORDER |
| 239 | 11011110,11100{freg}:fsubp %st,{freg} |
| 240 | 11011{w1}10,{mod}100{r_m}:fisub{w1} {mod}{r_m} |
| 241 | # ORDER END |
| 242 | # ORDER |
| 243 | 11011110,11101{freg}:fsubrp %st,{freg} |
| 244 | 11011{w1}10,{mod}101{r_m}:fisubr{w1} {mod}{r_m} |
| 245 | # ORDER END |
| 246 | # ORDER |
| 247 | 11011111,11100000:fnstsw %ax |
| 248 | 11011111,{mod}100{r_m}:fbld {mod}{r_m} |
| 249 | # ORDER END |
| 250 | # ORDER |
| 251 | 11011111,11110{freg}:fcomip {freg},%st |
| 252 | 11011111,{mod}110{r_m}:fbstp {mod}{r_m} |
| 253 | # ORDER END |
| 254 | 11011001,11100000:fchs |
| 255 | # ORDER |
| 256 | 10011011,11011011,11100010:fclex |
| 257 | 10011011,11011011,11100011:finit |
| 258 | 10011011:fwait |
| 259 | # END ORDER |
| 260 | 11011011,11100010:fnclex |
| 261 | 11011010,11000{freg}:fcmovb {freg},%st |
| 262 | 11011010,11001{freg}:fcmove {freg},%st |
| 263 | 11011010,11010{freg}:fcmovbe {freg},%st |
| 264 | 11011010,11011{freg}:fcmovu {freg},%st |
| 265 | 11011011,11000{freg}:fcmovnb {freg},%st |
| 266 | 11011011,11001{freg}:fcmovne {freg},%st |
| 267 | 11011011,11010{freg}:fcmovnbe {freg},%st |
| 268 | 11011011,11011{freg}:fcmovnu {freg},%st |
| 269 | # ORDER |
| 270 | 11011000,11010{freg}:fcom {freg} |
| 271 | ifdef(`ASSEMBLER', |
| 272 | `11011000,11010001:fcom |
| 273 | ')dnl |
| 274 | 11011{D}00,{mod}010{r_m}:fcom{D} {mod}{r_m} |
| 275 | # END ORDER |
| 276 | # ORDER |
| 277 | 11011000,11011{freg}:fcomp {freg} |
| 278 | ifdef(`ASSEMBLER', |
| 279 | `11011000,11011001:fcomp |
| 280 | ')dnl |
| 281 | 11011{D}00,{mod}011{r_m}:fcomp{D} {mod}{r_m} |
| 282 | # END ORDER |
| 283 | 11011110,11011001:fcompp |
| 284 | 11011011,11110{freg}:fcomi {freg},%st |
| 285 | 11011111,11110{freg}:fcomip {freg},%st |
| 286 | 11011011,11101{freg}:fucomi {freg},%st |
| 287 | 11011111,11101{freg}:fucomip {freg},%st |
| 288 | 11011001,11111111:fcos |
| 289 | 11011001,11110110:fdecstp |
| 290 | # ORDER |
| 291 | 11011000,11110{freg}:fdiv {freg},%st |
| 292 | 11011100,11110{freg}:fdiv %st,{freg} |
| 293 | 11011{D}00,{mod}110{r_m}:fdiv{D} {mod}{r_m} |
| 294 | # END ORDER |
| 295 | 11011010,{mod}110{r_m}:fidivl {mod}{r_m} |
| 296 | # ORDER |
| 297 | 11011110,11110{freg}:fdivp %st,{freg} |
| 298 | 11011110,{mod}110{r_m}:fidiv {mod}{r_m} |
| 299 | # END ORDER |
| 300 | 11011110,11111{freg}:fdivrp %st,{freg} |
| 301 | ifdef(`ASSEMBLER', |
| 302 | `11011110,11111001:fdivp |
| 303 | ')dnl |
| 304 | # ORDER |
| 305 | 11011000,11111{freg}:fdivr {freg},%st |
| 306 | 11011100,11111{freg}:fdivr %st,{freg} |
| 307 | 11011{D}00,{mod}111{r_m}:fdivr{D} {mod}{r_m} |
| 308 | # END ORDER |
| 309 | 11011010,{mod}111{r_m}:fidivrl {mod}{r_m} |
| 310 | 11011110,{mod}111{r_m}:fidivr {mod}{r_m} |
| 311 | 11011110,11110{freg}:fdivrp %st,{freg} |
| 312 | ifdef(`ASSEMBLER', |
| 313 | `11011110,11110001:fdivrp |
| 314 | ')dnl |
| 315 | 11011101,11000{freg}:ffree {freg} |
| 316 | 11011010,11010{freg}:fcmovbe {freg} |
| 317 | 11011{w1}10,{mod}010{r_m}:ficom{w1} {mod}{r_m} |
| 318 | 11011010,11011{freg}:fcmovu {freg} |
| 319 | 11011{w1}10,{mod}011{r_m}:ficomp{w1} {mod}{r_m} |
| 320 | 11011111,{mod}000{r_m}:fild {mod}{r_m} |
| 321 | 11011011,{mod}000{r_m}:fildl {mod}{r_m} |
| 322 | 11011111,{mod}101{r_m}:fildll {mod}{r_m} |
| 323 | 11011001,11110111:fincstp |
| 324 | 11011011,11100011:fninit |
| 325 | 11011{w1}11,{mod}010{r_m}:fist{w1} {mod}{r_m} |
| 326 | 11011{w1}11,{mod}011{r_m}:fistp{w1} {mod}{r_m} |
| 327 | 11011111,{mod}111{r_m}:fistpll {mod}{r_m} |
| 328 | 11011{w1}11,{mod}001{r_m}:fisttp{w1} {mod}{r_m} |
| 329 | 11011101,{mod}001{r_m}:fisttpll {mod}{r_m} |
| 330 | 11011011,{mod}101{r_m}:fldt {mod}{r_m} |
| 331 | 11011011,{mod}111{r_m}:fstpt {mod}{r_m} |
| 332 | # ORDER |
| 333 | 11011001,11000{freg}:fld {freg} |
| 334 | 11011{D}01,{mod}000{r_m}:fld{D} {mod}{r_m} |
| 335 | # ORDER END |
| 336 | # ORDER |
| 337 | 11011101,11100{freg}:fucom {freg} |
| 338 | 11011101,{mod}100{r_m}:frstor {mod}{r_m} |
| 339 | # ORDER END |
| 340 | 11011101,11101{freg}:fucomp {freg} |
| 341 | 11011101,{mod}110{r_m}:fnsave {mod}{r_m} |
| 342 | 11011101,{mod}111{r_m}:fnstsw {mod}{r_m} |
| 343 | # |
| 344 | # |
| 345 | # |
| 346 | 11110100:hlt |
| 347 | 1111011{w},{mod}111{r_m}:idiv{w} {mod}{r_m}{w} |
| 348 | 1111011{w},{mod}101{r_m}:imul{w} {mod}{r_m}{w} |
| 349 | 00001111,10101111,{mod}{reg}{r_m}:imul {reg},{mod}{r_m} |
| 350 | 011010{s}1,{mod}{reg}{r_m},{imm}:imul {imm}{s},{mod}{r_m},{reg} |
| 351 | 1110010{w},{imm8}:in {imm8},{ax}{w} |
| 352 | 1110110{w}:in {dx},{ax}{w} |
| 353 | 1111111{w},{mod}000{r_m}:inc{w} {mod}{r_m}{w} |
| 354 | 01000{reg}:inc {reg} |
| 355 | 0110110{w}:{R}ins{w} {dx},{es_di} |
| 356 | 11001101,{imm8}:int {imm8} |
| 357 | 11001100:int3 |
| 358 | 11001110:into |
| 359 | 00001111,00001000:invd |
| 360 | # ORDER |
| 361 | 00001111,00000001,11111000:swapgs |
| 362 | 00001111,00000001,{mod}111{r_m}:invlpg {mod}{r_m} |
| 363 | # ORDER END |
| 364 | 11001111:iret{W} |
| 365 | 0111{tttn},{disp8}:j{tttn} {disp8} |
| 366 | 00001111,1000{tttn},{rel}:j{tttn} {rel} |
| 367 | 00001111,1001{tttn},{mod}000{8r_m}:set{tttn} {mod}{8r_m} |
| 368 | # SPECIAL 11100011,{disp8}:[{dpfx}?jcxz:jecxz] {disp8} |
| 369 | 11100011,{disp8}:INVALID {disp8} |
| 370 | 11101011,{disp8}:jmp {disp8} |
| 371 | 11101001,{rel}:jmp {rel} |
| 372 | 11111111,{mod}100{r_m}:jmp *{mod}{r_m} |
| 373 | 11101010,{absval},{sel}:ljmp {sel},{absval} |
| 374 | 11111111,{mod}101{r_m}:ljmp *{mod}{r_m} |
| 375 | 10011111:lahf |
| 376 | 00001111,00000010,{mod}{reg}{16r_m}:lar {mod}{16r_m},{reg} |
| 377 | 11000101,{mod}{reg}{r_m}:lds {mod}{r_m},{reg} |
| 378 | 10001101,{mod}{reg}{r_m}:lea {mod}{r_m},{reg} |
| 379 | 11001001:leave |
| 380 | 11000100,{mod}{reg}{r_m}:les {mod}{r_m},{reg} |
| 381 | 00001111,10110100,{mod}{reg}{r_m}:lfs {mod}{r_m},{reg} |
| 382 | 00001111,00000001,{mod}010{r_m}:lgdt{w0} {mod}{r_m} |
| 383 | 00001111,10110101,{mod}{reg}{r_m}:lgs {mod}{r_m},{reg} |
| 384 | 00001111,00000001,{mod}011{r_m}:lidt{w0} {mod}{r_m} |
| 385 | 00001111,00000000,{mod}010{16r_m}:lldt {mod}{16r_m} |
| 386 | 00001111,00000001,{mod}110{16r_m}:lmsw {mod}{16r_m} |
| 387 | 11110000:lock |
| 388 | 1010110{w}:{R}lods {ds_si},{ax}{w} |
| 389 | 11100010,{disp8}:loop {disp8} |
| 390 | 11100001,{disp8}:loope {disp8} |
| 391 | 11100000,{disp8}:loopne {disp8} |
| 392 | 00001111,00000011,{mod}{reg}{16r_m}:lsl {mod}{16r_m},{reg} |
| 393 | 00001111,10110010,{mod}{reg}{r_m}:lss {mod}{r_m},{reg} |
| 394 | 00001111,00000000,{mod}011{16r_m}:ltr {mod}{16r_m} |
| 395 | 1000100{w},{mod}{reg}{r_m}:mov {reg}{w},{mod}{r_m}{w} |
| 396 | 1000101{w},{mod}{reg}{r_m}:mov {mod}{r_m}{w},{reg}{w} |
| 397 | 1100011{w},{mod}000{r_m},{imm}:mov{w} {imm}{w},{mod}{r_m}{w} |
| 398 | 1011{w}{reg},{imm}:mov {imm}{w},{reg}{w} |
| 399 | 1010000{w},{abs}:mov {abs},{ax}{w} |
| 400 | 1010001{w},{abs}:mov {ax}{w},{abs} |
| 401 | 00001111,00100000,11{ccc}{reg}:mov {ccc},{reg} |
| 402 | 00001111,00100010,11{ccc}{reg}:mov {reg},{ccc} |
| 403 | 00001111,00100001,11{ddd}{reg}:mov {ddd},{reg} |
| 404 | 00001111,00100011,11{ddd}{reg}:mov {reg},{ddd} |
| 405 | 10001100,{mod}{sreg3}{r_m}:mov {sreg3},{mod}{r_m} |
| 406 | 10001110,{mod}{sreg3}{r_m}:mov {mod}{r_m},{sreg3} |
| 407 | 1010010{w}:{R}movs{w} {ds_si},{es_di} |
| 408 | 00001111,1011111{w},{mod}{reg}{r_m}:movsx{w} {mod}{r_m},{reg} |
| 409 | 00001111,1011011{w},{mod}{reg}{r_m}:movzx{w} {mod}{r_m},{reg} |
| 410 | 1111011{w},{mod}100{r_m}:mul{w} {mod}{r_m}{w} |
| 411 | 1111011{w},{mod}011{r_m}:neg{w} {mod}{r_m}{w} |
| 412 | ifdef(`ASSEMBLER', |
| 413 | `10010000:nop |
| 414 | 11110011,10010000:pause |
| 415 | ', |
| 416 | `10010000:{R}INVALID |
| 417 | ')dnl |
| 418 | 1111011{w},{mod}010{r_m}:not{w} {mod}{r_m}{w} |
| 419 | 0000100{w},{mod}{reg}{r_m}:or {reg}{w},{mod}{r_m}{w} |
| 420 | 0000101{w},{mod}{reg}{r_m}:or {mod}{r_m}{w},{reg}{w} |
| 421 | 1000000{w},{mod}001{r_m},{imm}:or{w} {imm}{w},{mod}{r_m}{w} |
| 422 | 100000{s}{w},{mod}001{r_m},{imm}:or{w} {imm}{s},{mod}{r_m}{w} |
| 423 | 0000110{w},{imm}:or {imm}{w},{ax}{w} |
| 424 | 1110011{w},{imm8}:out {ax}{w},{imm8} |
| 425 | 1110111{w}:out {ax}{w},{dx} |
| 426 | 0110111{w}:{R}outs{w} {ds_si},{dx} |
| 427 | 10001111,{mod}000{r_m}:pop{w} {mod}{r_m} |
| 428 | 01011{reg}:pop {reg} |
| 429 | 00001111,10{sreg3}001:pop {sreg3} |
| 430 | 01100001:popa{W} |
| 431 | 10011101:popf{W} |
| 432 | 11111111,{mod}110{r_m}:push{w} {mod}{r_m} |
| 433 | 01010{reg}:push {reg} |
| 434 | 011010{s}0,{imm}:push {imm}{s} |
| 435 | 000{sreg2}110:push {sreg2} |
| 436 | 00001111,10{sreg3}000:push {sreg3} |
| 437 | 01100000:pusha{W} |
| 438 | 10011100:pushf{W} |
| 439 | 1101000{w},{mod}010{r_m}:rcl{w} {mod}{r_m}{w} |
| 440 | 1101001{w},{mod}010{r_m}:rcl{w} %cl,{mod}{r_m}{w} |
| 441 | 1100000{w},{mod}010{r_m},{imm8}:rcl{w} {imm8},{mod}{r_m}{w} |
| 442 | 1101000{w},{mod}011{r_m}:rcr{w} {mod}{r_m}{w} |
| 443 | 1101001{w},{mod}011{r_m}:rcr{w} %cl,{mod}{r_m}{w} |
| 444 | 1100000{w},{mod}011{r_m},{imm8}:rcr{w} {imm8},{mod}{r_m}{w} |
| 445 | 00001111,00110010:rdmsr |
| 446 | 00001111,00110011:rdpmc |
| 447 | 00001111,00110001:rdtsc |
| 448 | 11000011:ret |
| 449 | 11000010,{imm16}:ret {imm16} |
| 450 | 11001011:lret |
| 451 | 11001010,{imm16}:lret {imm16} |
| 452 | 1101000{w},{mod}000{r_m}:rol{w} {mod}{r_m}{w} |
| 453 | 1101001{w},{mod}000{r_m}:rol{w} %cl,{mod}{r_m}{w} |
| 454 | 1100000{w},{mod}000{r_m},{imm8}:rol{w} {imm8},{mod}{r_m}{w} |
| 455 | 1101000{w},{mod}001{r_m}:ror{w} {mod}{r_m}{w} |
| 456 | 1101001{w},{mod}001{r_m}:ror{w} %cl,{mod}{r_m}{w} |
| 457 | 1100000{w},{mod}001{r_m},{imm8}:ror{w} {imm8},{mod}{r_m}{w} |
| 458 | 00001111,10101010:rsm |
| 459 | 10011110:sahf |
| 460 | 1101000{w},{mod}111{r_m}:sar{w} {mod}{r_m}{w} |
| 461 | 1101001{w},{mod}111{r_m}:sar{w} %cl,{mod}{r_m}{w} |
| 462 | 1100000{w},{mod}111{r_m},{imm8}:sar{w} {imm8},{mod}{r_m}{w} |
| 463 | 0001100{w},{mod}{reg}{r_m}:sbb {reg}{w},{mod}{r_m}{w} |
| 464 | 0001101{w},{mod}{reg}{r_m}:sbb {mod}{r_m}{w},{reg}{w} |
| 465 | 0001110{w},{imm}:sbb {imm}{w},{ax}{w} |
| 466 | 1000000{w},{mod}011{r_m},{imm}:sbb{w} {imm}{w},{mod}{r_m}{w} |
| 467 | 1000001{w},{mod}011{r_m},{imms}:sbb{w} {imms},{mod}{r_m} |
| 468 | 1010111{w}:{RE}scas {es_di},{ax}{w} |
| 469 | 00001111,1001{tttn},{mod}000{r_m}:set{tttn} {mod}{r_m} |
| 470 | 1101000{w},{mod}100{r_m}:shl{w} {mod}{r_m}{w} |
| 471 | 1101001{w},{mod}100{r_m}:shl{w} %cl,{mod}{r_m}{w} |
| 472 | 1100000{w},{mod}100{r_m},{imm8}:shl{w} {imm8},{mod}{r_m}{w} |
| 473 | 1101000{w},{mod}101{r_m}:shr{w} {mod}{r_m}{w} |
| 474 | 00001111,10100100,{mod}{reg}{r_m},{imm8}:shld {imm8},{reg},{mod}{r_m} |
| 475 | 00001111,10100101,{mod}{reg}{r_m}:shld %cl,{reg},{mod}{r_m} |
| 476 | 1101001{w},{mod}101{r_m}:shr{w} %cl,{mod}{r_m}{w} |
| 477 | 1100000{w},{mod}101{r_m},{imm8}:shr{w} {imm8},{mod}{r_m}{w} |
| 478 | 00001111,10101100,{mod}{reg}{r_m},{imm8}:shrd {imm8},{reg},{mod}{r_m} |
| 479 | 00001111,10101101,{mod}{reg}{r_m}:shrd %cl,{reg},{mod}{r_m} |
| 480 | # ORDER |
| 481 | 00001111,00000001,11000001:vmcall |
| 482 | 00001111,00000001,11000010:vmlaunch |
| 483 | 00001111,00000001,11000011:vmresume |
| 484 | 00001111,00000001,11000100:vmxoff |
Ulrich Drepper | fea4e9d | 2008-01-04 03:21:38 +0000 | [diff] [blame^] | 485 | 00001111,01111000,{mod}{reg}{r_m}:vmread {reg},{mod}{r_m} |
| 486 | 00001111,01111001,{mod}{reg}{r_m}:vmwrite {mod}{r_m},{reg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 487 | 00001111,00000001,{mod}000{r_m}:sgdtl {mod}{r_m} |
| 488 | # ORDER END |
| 489 | # ORDER |
| 490 | 00001111,00000001,11001000:monitor %eax,%ecx,%edx |
| 491 | 00001111,00000001,11001001:mwait %eax,%ecx |
| 492 | 00001111,00000001,{mod}001{r_m}:sidtl {mod}{r_m} |
| 493 | # ORDER END |
| 494 | 00001111,00000000,{mod}000{r_m}:sldt {mod}{r_m} |
| 495 | 00001111,00000001,{mod}100{r_m}:smsw {mod}{r_m} |
| 496 | 11111001:stc |
| 497 | 11111101:std |
| 498 | 11111011:sti |
| 499 | 1010101{w}:{R}stos {ax}{w},{es_di} |
| 500 | 00001111,00000000,{mod}001{r_m}:str {mod}{r_m} |
| 501 | 0010100{w},{mod}{reg}{r_m}:sub {reg}{w},{mod}{r_m}{w} |
| 502 | 0010101{w},{mod}{reg}{r_m}:sub {mod}{r_m}{w},{reg}{w} |
| 503 | 0010110{w},{imm}:sub {imm}{w},{ax}{w} |
| 504 | 1000000{w},{mod}101{r_m},{imm}:sub{w} {imm}{w},{mod}{r_m}{w} |
| 505 | 1000001{w},{mod}101{r_m},{imms}:sub{w} {imms},{mod}{r_m} |
| 506 | 1000010{w},{mod}{reg}{r_m}:test {reg}{w},{mod}{r_m}{w} |
| 507 | 1010100{w},{imm}:test {imm}{w},{ax}{w} |
| 508 | 1111011{w},{mod}000{r_m},{imm}:test{w} {imm}{w},{mod}{r_m}{w} |
| 509 | 00001111,00001011:ud2a |
| 510 | 00001111,00000000,{mod}100{16r_m}:verr {mod}{16r_m} |
| 511 | 00001111,00000000,{mod}101{16r_m}:verw {mod}{16r_m} |
| 512 | 00001111,00001001:wbinvd |
| 513 | 00001111,00001101,{mod}000{8r_m}:prefetch {mod}{8r_m} |
| 514 | 00001111,00001101,{mod}001{8r_m}:prefetchw {mod}{8r_m} |
| 515 | 00001111,00011000,{mod}000{r_m}:prefetchnta {mod}{r_m} |
| 516 | 00001111,00011000,{mod}001{r_m}:prefetcht0 {mod}{r_m} |
| 517 | 00001111,00011000,{mod}010{r_m}:prefetcht1 {mod}{r_m} |
| 518 | 00001111,00011000,{mod}011{r_m}:prefetcht2 {mod}{r_m} |
| 519 | 00001111,00011111,{mod}{reg}{r_m}:nop{w} {mod}{r_m} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 520 | 00001111,00110000:wrmsr |
| 521 | 00001111,1100000{w},{mod}{reg}{r_m}:xadd{w} {reg},{mod}{r_m} |
| 522 | 1000011{w},{mod}{reg}{r_m}:xchg {reg}{w},{mod}{r_m}{w} |
| 523 | 10010{reg}:xchg {ax},{reg} |
| 524 | 11010111:xlat {ds_bx} |
| 525 | 0011000{w},{mod}{reg}{r_m}:xor {reg}{w},{mod}{r_m}{w} |
| 526 | 0011001{w},{mod}{reg}{r_m}:xor {mod}{r_m}{w},{reg}{w} |
| 527 | 0011010{w},{imm}:xor {imm}{w},{ax}{w} |
| 528 | 1000000{w},{mod}110{r_m},{imm}:xor{w} {imm}{w},{mod}{r_m}{w} |
| 529 | 1000001{w},{mod}110{r_m},{imms}:xor{w} {imms},{mod}{r_m} |
| 530 | 00001111,01110111:emms |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 531 | 00001111,111111{gg},{MOD}{mmxreg}{R_M}:padd{gg} {MOD}{R_M},{mmxreg} |
| 532 | 00001111,111111{0g},{MOD}{mmxreg}{R_M}:padds{0g} {MOD}{R_M},{mmxreg} |
| 533 | 00001111,110111{0g},{MOD}{mmxreg}{R_M}:paddus{0g} {MOD}{R_M},{mmxreg} |
| 534 | 00001111,11011011,{MOD}{mmxreg}{R_M}:pand {MOD}{R_M},{mmxreg} |
| 535 | 00001111,11011111,{MOD}{mmxreg}{R_M}:pandn {MOD}{R_M},{mmxreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 536 | 00001111,11110101,{MOD}{mmxreg}{R_M}:pmaddwd {MOD}{R_M},{mmxreg} |
| 537 | 00001111,11100101,{MOD}{mmxreg}{R_M}:pmulhw {MOD}{R_M},{mmxreg} |
| 538 | 00001111,11010101,{MOD}{mmxreg}{R_M}:pmullw {MOD}{R_M},{mmxreg} |
| 539 | 00001111,11101011,{MOD}{mmxreg}{R_M}:por {MOD}{R_M},{mmxreg} |
| 540 | 00001111,111100{GG},{MOD}{mmxreg}{R_M}:psll{GG} {MOD}{R_M},{mmxreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 541 | 00001111,111000{gG},{MOD}{mmxreg}{R_M}:psra{gG} {MOD}{R_M},{mmxreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 542 | 00001111,110100{GG},{MOD}{mmxreg}{R_M}:psrl{GG} {MOD}{R_M},{mmxreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 543 | 00001111,111110{gg},{MOD}{mmxreg}{R_M}:psub{gg} {MOD}{R_M},{mmxreg} |
| 544 | 00001111,111010{0g},{MOD}{mmxreg}{R_M}:psubs{0g} {MOD}{R_M},{mmxreg} |
| 545 | 00001111,110110{0g},{MOD}{mmxreg}{R_M}:psubus{0g} {MOD}{R_M},{mmxreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 546 | 00001111,11101111,{MOD}{mmxreg}{R_M}:pxor {MOD}{R_M},{mmxreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 547 | 00001111,01010101,{Mod}{xmmreg}{R_m}:andnps {Mod}{R_m},{xmmreg} |
| 548 | 00001111,01010100,{Mod}{xmmreg}{R_m}:andps {Mod}{R_m},{xmmreg} |
| 549 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000000:cmpeqps {Mod}{R_m},{xmmreg} |
| 550 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000001:cmpltps {Mod}{R_m},{xmmreg} |
| 551 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000010:cmpleps {Mod}{R_m},{xmmreg} |
| 552 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000011:cmpunordps {Mod}{R_m},{xmmreg} |
| 553 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000100:cmpneqps {Mod}{R_m},{xmmreg} |
| 554 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000101:cmpnltps {Mod}{R_m},{xmmreg} |
| 555 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000110:cmpnleps {Mod}{R_m},{xmmreg} |
| 556 | 00001111,11000010,{Mod}{xmmreg}{R_m},00000111:cmpordps {Mod}{R_m},{xmmreg} |
| 557 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000000:cmpeqss {Mod}{R_m},{xmmreg} |
| 558 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000001:cmpltss {Mod}{R_m},{xmmreg} |
| 559 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000010:cmpless {Mod}{R_m},{xmmreg} |
| 560 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000011:cmpunordss {Mod}{R_m},{xmmreg} |
| 561 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000100:cmpneqss {Mod}{R_m},{xmmreg} |
| 562 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000101:cmpnltss {Mod}{R_m},{xmmreg} |
| 563 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000110:cmpnless {Mod}{R_m},{xmmreg} |
| 564 | 11110011,00001111,11000010,{Mod}{xmmreg}{R_m},00000111:cmpordss {Mod}{R_m},{xmmreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 565 | 00001111,10101110,{mod}001{r_m}:fxrstor {mod}{r_m} |
| 566 | 00001111,10101110,{mod}000{r_m}:fxsave {mod}{r_m} |
| 567 | 00001111,10101110,{mod}010{r_m}:ldmxcsr {mod}{r_m} |
Ulrich Drepper | 515d8d7 | 2008-01-03 07:41:03 +0000 | [diff] [blame] | 568 | 11110010,00001111,00010000,{Mod}{xmmreg}{R_m}:movsd {Mod}{R_m},{xmmreg} |
| 569 | 11110011,00001111,00010000,{Mod}{xmmreg}{R_m}:movss {Mod}{R_m},{xmmreg} |
| 570 | 01100110,00001111,00010000,{Mod}{xmmreg}{R_m}:movupd {Mod}{R_m},{xmmreg} |
| 571 | 00001111,00010000,{Mod}{xmmreg}{R_m}:movups {Mod}{R_m},{xmmreg} |
| 572 | 11110010,00001111,00010001,{Mod}{xmmreg}{R_m}:movsd {xmmreg},{Mod}{R_m} |
| 573 | 11110011,00001111,00010001,{Mod}{xmmreg}{R_m}:movss {xmmreg},{Mod}{R_m} |
| 574 | 01100110,00001111,00010001,{Mod}{xmmreg}{R_m}:movupd {xmmreg},{Mod}{R_m} |
| 575 | 00001111,00010001,{Mod}{xmmreg}{R_m}:movups {xmmreg},{Mod}{R_m} |
| 576 | 11110010,00001111,00010010,{Mod}{xmmreg}{R_m}:movddup {Mod}{R_m},{xmmreg} |
| 577 | 11110011,00001111,00010010,{Mod}{xmmreg}{R_m}:movsldup {Mod}{R_m},{xmmreg} |
| 578 | 01100110,00001111,00010010,{Mod}{xmmreg}{R_m}:movlpd {Mod}{R_m},{xmmreg} |
| 579 | 00001111,00010010,11{xmmreg1}{xmmreg2}:movhlps {xmmreg2},{xmmreg1} |
| 580 | 00001111,00010010,{Mod}{xmmreg}{R_m}:movlps {Mod}{R_m},{xmmreg} |
| 581 | 01100110,00001111,00010011,11{xmmreg1}{xmmreg2}:movhlpd {xmmreg1},{xmmreg2} |
| 582 | 00001111,00010011,11{xmmreg1}{xmmreg2}:movhlps {xmmreg1},{xmmreg2} |
| 583 | 01100110,00001111,00010011,{Mod}{xmmreg}{R_m}:movlpd {xmmreg},{Mod}{R_m} |
| 584 | 00001111,00010011,{Mod}{xmmreg}{R_m}:movlps {xmmreg},{Mod}{R_m} |
| 585 | 01100110,00001111,00010100,{Mod}{xmmreg}{R_m}:unpcklpd {Mod}{R_m},{xmmreg} |
| 586 | 00001111,00010100,{Mod}{xmmreg}{R_m}:unpcklps {Mod}{R_m},{xmmreg} |
| 587 | 01100110,00001111,00010101,{Mod}{xmmreg}{R_m}:unpckhpd {Mod}{R_m},{xmmreg} |
| 588 | 00001111,00010101,{Mod}{xmmreg}{R_m}:unpckhps {Mod}{R_m},{xmmreg} |
| 589 | 11110011,00001111,00010110,{Mod}{xmmreg}{R_m}:movshdup {Mod}{R_m},{xmmreg} |
| 590 | 01100110,00001111,00010110,{Mod}{xmmreg}{R_m}:movhpd {Mod}{R_m},{xmmreg} |
| 591 | 00001111,00010110,11{xmmreg1}{xmmreg2}:movlhps {xmmreg2},{xmmreg1} |
| 592 | 00001111,00010110,{Mod}{xmmreg}{R_m}:movhps {Mod}{R_m},{xmmreg} |
| 593 | 01100110,00001111,00010111,11{xmmreg1}{xmmreg2}:movlhpd {xmmreg1},{xmmreg2} |
| 594 | 00001111,00010111,11{xmmreg1}{xmmreg2}:movlhps {xmmreg1},{xmmreg2} |
| 595 | 01100110,00001111,00010111,{Mod}{xmmreg}{R_m}:movhpd {xmmreg},{Mod}{R_m} |
| 596 | 00001111,00010111,{Mod}{xmmreg}{R_m}:movhps {xmmreg},{Mod}{R_m} |
| 597 | 01100110,00001111,00101000,{Mod}{xmmreg}{R_m}:movapd {Mod}{R_m},{xmmreg} |
| 598 | 00001111,00101000,{Mod}{xmmreg}{R_m}:movaps {Mod}{R_m},{xmmreg} |
| 599 | 01100110,00001111,00101001,{Mod}{xmmreg}{R_m}:movapd {xmmreg},{Mod}{R_m} |
| 600 | 00001111,00101001,{Mod}{xmmreg}{R_m}:movaps {xmmreg},{Mod}{R_m} |
| 601 | 11110010,00001111,00101010,{mod}{xmmreg}{r_m}:cvtsi2sd {mod}{r_m},{xmmreg} |
| 602 | 11110011,00001111,00101010,{mod}{xmmreg}{r_m}:cvtsi2ss {mod}{r_m},{xmmreg} |
| 603 | 01100110,00001111,00101010,{MOD}{xmmreg}{R_M}:cvtpi2pd {MOD}{R_M},{xmmreg} |
| 604 | 00001111,00101010,{MOD}{xmmreg}{R_M}:cvtpi2ps {MOD}{R_M},{xmmreg} |
| 605 | 01100110,00001111,00101011,{mod}{xmmreg}{r_m}:movntpd {xmmreg},{mod}{r_m} |
| 606 | 00001111,00101011,{mod}{xmmreg}{r_m}:movntps {xmmreg},{mod}{r_m} |
| 607 | 11110010,00001111,00101100,{Mod}{reg}{R_m}:cvttsd2si {Mod}{R_m},{reg} |
| 608 | 11110011,00001111,00101100,{Mod}{reg}{R_m}:cvttss2si {Mod}{R_m},{reg} |
| 609 | 01100110,00001111,00101100,{Mod}{mmxreg}{R_m}:cvttpd2pi {Mod}{R_m},{mmxreg} |
| 610 | 00001111,00101100,{Mod}{mmxreg}{R_m}:cvttps2pi {Mod}{R_m},{mmxreg} |
| 611 | 01100110,00001111,00101101,{Mod}{mmxreg}{R_m}:cvtpd2pi {Mod}{R_m},{mmxreg} |
| 612 | 11110010,00001111,00101101,{Mod}{reg}{R_m}:cvtsd2si {Mod}{R_m},{reg} |
| 613 | 11110011,00001111,00101101,{Mod}{reg}{R_m}:cvtss2si {Mod}{R_m},{reg} |
| 614 | 00001111,00101101,{Mod}{mmxreg}{R_m}:cvtps2pi {Mod}{R_m},{mmxreg} |
| 615 | 01100110,00001111,00101110,{Mod}{xmmreg}{R_m}:ucomisd {Mod}{R_m},{xmmreg} |
| 616 | 00001111,00101110,{Mod}{xmmreg}{R_m}:ucomiss {Mod}{R_m},{xmmreg} |
| 617 | 01100110,00001111,00101111,{Mod}{xmmreg}{R_m}:comisd {Mod}{R_m},{xmmreg} |
| 618 | 00001111,00101111,{Mod}{xmmreg}{R_m}:comiss {Mod}{R_m},{xmmreg} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 619 | 00001111,00110111:getsec |
Ulrich Drepper | 515d8d7 | 2008-01-03 07:41:03 +0000 | [diff] [blame] | 620 | 01100110,00001111,01010000,11{reg}{xmmreg}:movmskpd {xmmreg},{reg} |
| 621 | 00001111,01010000,11{reg}{xmmreg}:movmskps {xmmreg},{reg} |
| 622 | 01100110,00001111,01010001,{Mod}{xmmreg}{R_m}:sqrtpd {Mod}{R_m},{xmmreg} |
| 623 | 11110010,00001111,01010001,{Mod}{xmmreg}{R_m}:sqrtsd {Mod}{R_m},{xmmreg} |
| 624 | 11110011,00001111,01010001,{Mod}{xmmreg}{R_m}:sqrtss {Mod}{R_m},{xmmreg} |
| 625 | 00001111,01010001,{Mod}{xmmreg}{R_m}:sqrtps {Mod}{R_m},{xmmreg} |
| 626 | 11110011,00001111,01010010,{Mod}{xmmreg}{R_m}:rsqrtss {Mod}{R_m},{xmmreg} |
| 627 | 00001111,01010010,{Mod}{xmmreg}{R_m}:rsqrtps {Mod}{R_m},{xmmreg} |
| 628 | 11110011,00001111,01010011,{Mod}{xmmreg}{R_m}:rcpss {Mod}{R_m},{xmmreg} |
| 629 | 00001111,01010011,{Mod}{xmmreg}{R_m}:rcpps {Mod}{R_m},{xmmreg} |
Ulrich Drepper | ee67b64 | 2008-01-03 08:45:10 +0000 | [diff] [blame] | 630 | 01100110,00001111,01010100,{Mod}{xmmreg}{R_m}:andpd {Mod}{R_m},{xmmreg} |
| 631 | 00001111,01010100,{Mod}{xmmreg}{R_m}:andps {Mod}{R_m},{xmmreg} |
| 632 | 01100110,00001111,01010101,{Mod}{xmmreg}{R_m}:andnpd {Mod}{R_m},{xmmreg} |
| 633 | 00001111,01010101,{Mod}{xmmreg}{R_m}:andnps {Mod}{R_m},{xmmreg} |
| 634 | 01100110,00001111,01010110,{Mod}{xmmreg}{R_m}:orpd {Mod}{R_m},{xmmreg} |
| 635 | 00001111,01010110,{Mod}{xmmreg}{R_m}:orps {Mod}{R_m},{xmmreg} |
| 636 | 01100110,00001111,01010111,{Mod}{xmmreg}{R_m}:xorpd {Mod}{R_m},{xmmreg} |
| 637 | 00001111,01010111,{Mod}{xmmreg}{R_m}:xorps {Mod}{R_m},{xmmreg} |
| 638 | 11110010,00001111,01011000,{Mod}{xmmreg}{R_m}:addsd {Mod}{R_m},{xmmreg} |
| 639 | 11110011,00001111,01011000,{Mod}{xmmreg}{R_m}:addss {Mod}{R_m},{xmmreg} |
| 640 | 01100110,00001111,01011000,{Mod}{xmmreg}{R_m}:addpd {Mod}{R_m},{xmmreg} |
| 641 | 00001111,01011000,{Mod}{xmmreg}{R_m}:addps {Mod}{R_m},{xmmreg} |
| 642 | 11110010,00001111,01011001,{Mod}{xmmreg}{R_m}:mulsd {Mod}{R_m},{xmmreg} |
| 643 | 11110011,00001111,01011001,{Mod}{xmmreg}{R_m}:mulss {Mod}{R_m},{xmmreg} |
| 644 | 01100110,00001111,01011001,{Mod}{xmmreg}{R_m}:mulpd {Mod}{R_m},{xmmreg} |
| 645 | 00001111,01011001,{Mod}{xmmreg}{R_m}:mulps {Mod}{R_m},{xmmreg} |
| 646 | 11110010,00001111,01011010,{Mod}{xmmreg}{R_m}:cvtsd2ss {Mod}{R_m},{xmmreg} |
| 647 | 11110011,00001111,01011010,{Mod}{xmmreg}{R_m}:cvtss2sd {Mod}{R_m},{xmmreg} |
| 648 | 01100110,00001111,01011010,{Mod}{xmmreg}{R_m}:cvtpd2ps {Mod}{R_m},{xmmreg} |
| 649 | 00001111,01011010,{Mod}{xmmreg}{R_m}:cvtps2pd {Mod}{R_m},{xmmreg} |
| 650 | 01100110,00001111,01011011,{Mod}{xmmreg}{R_m}:cvtps2dq {Mod}{R_m},{xmmreg} |
| 651 | 11110011,00001111,01011011,{Mod}{xmmreg}{R_m}:cvttps2dq {Mod}{R_m},{xmmreg} |
| 652 | 00001111,01011011,{Mod}{xmmreg}{R_m}:cvtdq2ps {Mod}{R_m},{xmmreg} |
| 653 | 11110010,00001111,01011100,{Mod}{xmmreg}{R_m}:subsd {Mod}{R_m},{xmmreg} |
| 654 | 11110011,00001111,01011100,{Mod}{xmmreg}{R_m}:subss {Mod}{R_m},{xmmreg} |
| 655 | 01100110,00001111,01011100,{Mod}{xmmreg}{R_m}:subpd {Mod}{R_m},{xmmreg} |
| 656 | 00001111,01011100,{Mod}{xmmreg}{R_m}:subps {Mod}{R_m},{xmmreg} |
| 657 | 11110010,00001111,01011101,{Mod}{xmmreg}{R_m}:minsd {Mod}{R_m},{xmmreg} |
| 658 | 11110011,00001111,01011101,{Mod}{xmmreg}{R_m}:minss {Mod}{R_m},{xmmreg} |
| 659 | 01100110,00001111,01011101,{Mod}{xmmreg}{R_m}:minpd {Mod}{R_m},{xmmreg} |
| 660 | 00001111,01011101,{Mod}{xmmreg}{R_m}:minps {Mod}{R_m},{xmmreg} |
| 661 | 11110010,00001111,01011110,{Mod}{xmmreg}{R_m}:divsd {Mod}{R_m},{xmmreg} |
| 662 | 11110011,00001111,01011110,{Mod}{xmmreg}{R_m}:divss {Mod}{R_m},{xmmreg} |
| 663 | 01100110,00001111,01011110,{Mod}{xmmreg}{R_m}:divpd {Mod}{R_m},{xmmreg} |
| 664 | 00001111,01011110,{Mod}{xmmreg}{R_m}:divps {Mod}{R_m},{xmmreg} |
| 665 | 11110010,00001111,01011111,{Mod}{xmmreg}{R_m}:maxsd {Mod}{R_m},{xmmreg} |
| 666 | 11110011,00001111,01011111,{Mod}{xmmreg}{R_m}:maxss {Mod}{R_m},{xmmreg} |
| 667 | 01100110,00001111,01011111,{Mod}{xmmreg}{R_m}:maxpd {Mod}{R_m},{xmmreg} |
| 668 | 00001111,01011111,{Mod}{xmmreg}{R_m}:maxps {Mod}{R_m},{xmmreg} |
Ulrich Drepper | fea4e9d | 2008-01-04 03:21:38 +0000 | [diff] [blame^] | 669 | 01100110,00001111,01100000,{Mod}{xmmreg}{R_m}:punpcklbw {Mod}{R_m},{xmmreg} |
| 670 | 00001111,01100000,{MOD}{mmxreg}{R_M}:punpcklbw {MOD}{R_M},{mmxreg} |
| 671 | 01100110,00001111,01100001,{Mod}{xmmreg}{R_m}:punpcklwd {Mod}{R_m},{xmmreg} |
| 672 | 00001111,01100001,{MOD}{mmxreg}{R_M}:punpcklwd {MOD}{R_M},{mmxreg} |
| 673 | 01100110,00001111,01100010,{Mod}{xmmreg}{R_m}:punpckldq {Mod}{R_m},{xmmreg} |
| 674 | 00001111,01100010,{MOD}{mmxreg}{R_M}:punpckldq {MOD}{R_M},{mmxreg} |
| 675 | 01100110,00001111,01100011,{Mod}{xmmreg}{R_m}:packsswb {Mod}{R_m},{xmmreg} |
| 676 | 00001111,01100011,{MOD}{mmxreg}{R_M}:packsswb {MOD}{R_M},{mmxreg} |
| 677 | 01100110,00001111,01100100,{Mod}{xmmreg}{R_m}:pcmpgtb {Mod}{R_m},{xmmreg} |
| 678 | 00001111,01100100,{MOD}{mmxreg}{R_M}:pcmpgtb {MOD}{R_M},{mmxreg} |
| 679 | 01100110,00001111,01100101,{Mod}{xmmreg}{R_m}:pcmpgtw {Mod}{R_m},{xmmreg} |
| 680 | 00001111,01100101,{MOD}{mmxreg}{R_M}:pcmpgtw {MOD}{R_M},{mmxreg} |
| 681 | 01100110,00001111,01100110,{Mod}{xmmreg}{R_m}:pcmpgtd {Mod}{R_m},{xmmreg} |
| 682 | 00001111,01100110,{MOD}{mmxreg}{R_M}:pcmpgtd {MOD}{R_M},{mmxreg} |
| 683 | 01100110,00001111,01100111,{Mod}{xmmreg}{R_m}:packuswb {Mod}{R_m},{xmmreg} |
| 684 | 00001111,01100111,{MOD}{mmxreg}{R_M}:packuswb {MOD}{R_M},{mmxreg} |
| 685 | 01100110,00001111,01101000,{Mod}{xmmreg}{R_m}:punpckhbw {Mod}{R_m},{xmmreg} |
| 686 | 00001111,01101000,{MOD}{mmxreg}{R_M}:punpckhbw {MOD}{R_M},{mmxreg} |
| 687 | 01100110,00001111,01101001,{Mod}{xmmreg}{R_m}:punpckhwd {Mod}{R_m},{xmmreg} |
| 688 | 00001111,01101001,{MOD}{mmxreg}{R_M}:punpckhwd {MOD}{R_M},{mmxreg} |
| 689 | 01100110,00001111,01101010,{Mod}{xmmreg}{R_m}:punpckhdq {Mod}{R_m},{xmmreg} |
| 690 | 00001111,01101010,{MOD}{mmxreg}{R_M}:punpckhdq {MOD}{R_M},{mmxreg} |
| 691 | 01100110,00001111,01101011,{Mod}{xmmreg}{R_m}:packssdw {Mod}{R_m},{xmmreg} |
| 692 | 00001111,01101011,{MOD}{mmxreg}{R_M}:packssdw {MOD}{R_M},{mmxreg} |
| 693 | 01100110,00001111,01101100,{Mod}{xmmreg}{R_m}:punpcklqdq {Mod}{R_m},{xmmreg} |
| 694 | 01100110,00001111,01101101,{Mod}{xmmreg}{R_m}:punpckhqdq {Mod}{R_m},{xmmreg} |
| 695 | 01100110,00001111,01101110,{mod}{xmmreg}{r_m}:movd {mod}{r_m},{xmmreg} |
| 696 | 00001111,01101110,{mod}{mmxreg}{r_m}:movd {mod}{r_m},{mmxreg} |
| 697 | 01100110,00001111,01101111,{Mod}{xmmreg}{R_m}:movdqa {Mod}{R_m},{xmmreg} |
| 698 | 11110011,00001111,01101111,{Mod}{xmmreg}{R_m}:movdqu {Mod}{R_m},{xmmreg} |
| 699 | 00001111,01101111,{MOD}{mmxreg}{R_M}:movq {MOD}{R_M},{mmxreg} |
| 700 | 01100110,00001111,01110000,{Mod}{xmmreg}{R_m},{imm8}:pshufd {imm8},{Mod}{R_m},{xmmreg} |
| 701 | 11110010,00001111,01110000,{Mod}{xmmreg}{R_m},{imm8}:pshuflw {imm8},{Mod}{R_m},{xmmreg} |
| 702 | 11110011,00001111,01110000,{Mod}{xmmreg}{R_m},{imm8}:pshufhw {imm8},{Mod}{R_m},{xmmreg} |
| 703 | 00001111,01110000,{MOD}{mmxreg}{R_M},{imm8}:pshufw {imm8},{MOD}{R_M},{mmxreg} |
| 704 | 01100110,00001111,01110100,{Mod}{xmmreg}{R_m}:pcmpeqb {Mod}{R_m},{xmmreg} |
| 705 | 00001111,01110100,{MOD}{mmxreg}{R_M}:pcmpeqb {MOD}{R_M},{mmxreg} |
| 706 | 01100110,00001111,01110101,{Mod}{xmmreg}{R_m}:pcmpeqw {Mod}{R_m},{xmmreg} |
| 707 | 00001111,01110101,{MOD}{mmxreg}{R_M}:pcmpeqw {MOD}{R_M},{mmxreg} |
| 708 | 01100110,00001111,01110110,{Mod}{xmmreg}{R_m}:pcmpeqd {Mod}{R_m},{xmmreg} |
| 709 | 00001111,01110110,{MOD}{mmxreg}{R_M}:pcmpeqd {MOD}{R_M},{mmxreg} |
| 710 | 01100110,00001111,01111100,{Mod}{xmmreg}{R_m}:haddpd {Mod}{R_m},{xmmreg} |
| 711 | 11110010,00001111,01111100,{Mod}{xmmreg}{R_m}:haddps {Mod}{R_m},{xmmreg} |
| 712 | 01100110,00001111,01111101,{Mod}{xmmreg}{R_m}:hsubpd {Mod}{R_m},{xmmreg} |
| 713 | 11110010,00001111,01111101,{Mod}{xmmreg}{R_m}:hsubps {Mod}{R_m},{xmmreg} |
| 714 | 01100110,00001111,01111110,{mod}{xmmreg}{r_m}:movd {xmmreg},{mod}{r_m} |
| 715 | 11110011,00001111,01111110,{Mod}{xmmreg}{R_m}:movq {Mod}{R_m},{xmmreg} |
| 716 | 00001111,01111110,{mod}{mmxreg}{r_m}:movd {mmxreg},{mod}{r_m} |
| 717 | 01100110,00001111,01111111,{Mod}{xmmreg}{R_m}:movdqa {xmmreg},{Mod}{R_m} |
| 718 | 11110011,00001111,01111111,{Mod}{xmmreg}{R_m}:movdqu {xmmreg},{Mod}{R_m} |
| 719 | 00001111,01111111,{MOD}{mmxreg}{R_M}:movq {mmxreg},{MOD}{R_M} |
Ulrich Drepper | 3cbdd38 | 2008-01-02 17:44:39 +0000 | [diff] [blame] | 720 | # ORDER: |
| 721 | dnl Many previous entries depend on this being last. |
| 722 | 000{sreg2}111:pop {sreg2} |
| 723 | # ORDER END: |