1*0a6a1f1dSLionel Sambuc// RUN: llvm-mc -triple i386-unknown-unknown-code16 --show-encoding %s | FileCheck %s 2*0a6a1f1dSLionel Sambuc 3*0a6a1f1dSLionel Sambuc movl $0x12345678, %ebx 4*0a6a1f1dSLionel Sambuc// CHECK: movl 5*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xbb,0x78,0x56,0x34,0x12] 6*0a6a1f1dSLionel Sambuc pause 7*0a6a1f1dSLionel Sambuc// CHECK: pause 8*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xf3,0x90] 9*0a6a1f1dSLionel Sambuc sfence 10*0a6a1f1dSLionel Sambuc// CHECK: sfence 11*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xae,0xf8] 12*0a6a1f1dSLionel Sambuc lfence 13*0a6a1f1dSLionel Sambuc// CHECK: lfence 14*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xae,0xe8] 15*0a6a1f1dSLionel Sambuc mfence 16*0a6a1f1dSLionel Sambuc stgi 17*0a6a1f1dSLionel Sambuc// CHECK: stgi 18*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x01,0xdc] 19*0a6a1f1dSLionel Sambuc clgi 20*0a6a1f1dSLionel Sambuc// CHECK: clgi 21*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x01,0xdd] 22*0a6a1f1dSLionel Sambuc 23*0a6a1f1dSLionel Sambuc rdtscp 24*0a6a1f1dSLionel Sambuc// CHECK: rdtscp 25*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x01,0xf9] 26*0a6a1f1dSLionel Sambuc 27*0a6a1f1dSLionel Sambuc 28*0a6a1f1dSLionel Sambuc// CHECK: movl %eax, 16(%ebp) # encoding: [0x67,0x66,0x89,0x45,0x10] 29*0a6a1f1dSLionel Sambuc movl %eax, 16(%ebp) 30*0a6a1f1dSLionel Sambuc// CHECK: movl %eax, -16(%ebp) # encoding: [0x67,0x66,0x89,0x45,0xf0] 31*0a6a1f1dSLionel Sambuc movl %eax, -16(%ebp) 32*0a6a1f1dSLionel Sambuc 33*0a6a1f1dSLionel Sambuc// CHECK: testb %bl, %cl # encoding: [0x84,0xcb] 34*0a6a1f1dSLionel Sambuc testb %bl, %cl 35*0a6a1f1dSLionel Sambuc 36*0a6a1f1dSLionel Sambuc// CHECK: cmpl %eax, %ebx # encoding: [0x66,0x39,0xc3] 37*0a6a1f1dSLionel Sambuc cmpl %eax, %ebx 38*0a6a1f1dSLionel Sambuc 39*0a6a1f1dSLionel Sambuc// CHECK: addw %ax, %ax # encoding: [0x01,0xc0] 40*0a6a1f1dSLionel Sambuc addw %ax, %ax 41*0a6a1f1dSLionel Sambuc 42*0a6a1f1dSLionel Sambuc// CHECK: shrl %eax # encoding: [0x66,0xd1,0xe8] 43*0a6a1f1dSLionel Sambuc shrl $1, %eax 44*0a6a1f1dSLionel Sambuc 45*0a6a1f1dSLionel Sambuc// CHECK: shll %eax # encoding: [0x66,0xd1,0xe0] 46*0a6a1f1dSLionel Sambuc sall $1, %eax 47*0a6a1f1dSLionel Sambuc// CHECK: shll %eax # encoding: [0x66,0xd1,0xe0] 48*0a6a1f1dSLionel Sambuc sal $1, %eax 49*0a6a1f1dSLionel Sambuc 50*0a6a1f1dSLionel Sambuc// moffset forms of moves 51*0a6a1f1dSLionel Sambuc 52*0a6a1f1dSLionel Sambuc// CHECK: movb 0, %al # encoding: [0xa0,0x00,0x00] 53*0a6a1f1dSLionel Sambucmovb 0, %al 54*0a6a1f1dSLionel Sambuc 55*0a6a1f1dSLionel Sambuc// CHECK: movw 0, %ax # encoding: [0xa1,0x00,0x00] 56*0a6a1f1dSLionel Sambucmovw 0, %ax 57*0a6a1f1dSLionel Sambuc 58*0a6a1f1dSLionel Sambuc// CHECK: movl 0, %eax # encoding: [0x66,0xa1,0x00,0x00] 59*0a6a1f1dSLionel Sambucmovl 0, %eax 60*0a6a1f1dSLionel Sambuc 61*0a6a1f1dSLionel Sambucinto 62*0a6a1f1dSLionel Sambuc// CHECK: into 63*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xce] 64*0a6a1f1dSLionel Sambucint3 65*0a6a1f1dSLionel Sambuc// CHECK: int3 66*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xcc] 67*0a6a1f1dSLionel Sambucint $4 68*0a6a1f1dSLionel Sambuc// CHECK: int $4 69*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xcd,0x04] 70*0a6a1f1dSLionel Sambucint $255 71*0a6a1f1dSLionel Sambuc// CHECK: int $255 72*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xcd,0xff] 73*0a6a1f1dSLionel Sambuc 74*0a6a1f1dSLionel Sambuc// CHECK: pushfw # encoding: [0x9c] 75*0a6a1f1dSLionel Sambuc pushf 76*0a6a1f1dSLionel Sambuc// CHECK: pushfl # encoding: [0x66,0x9c] 77*0a6a1f1dSLionel Sambuc pushfl 78*0a6a1f1dSLionel Sambuc// CHECK: popfw # encoding: [0x9d] 79*0a6a1f1dSLionel Sambuc popf 80*0a6a1f1dSLionel Sambuc// CHECK: popfl # encoding: [0x66,0x9d] 81*0a6a1f1dSLionel Sambuc popfl 82*0a6a1f1dSLionel Sambuc 83*0a6a1f1dSLionel Sambucretl 84*0a6a1f1dSLionel Sambuc// CHECK: ret 85*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xc3] 86*0a6a1f1dSLionel Sambuc 87*0a6a1f1dSLionel Sambuc// CHECK: cmoval %eax, %edx 88*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x47,0xd0] 89*0a6a1f1dSLionel Sambuc cmoval %eax,%edx 90*0a6a1f1dSLionel Sambuc 91*0a6a1f1dSLionel Sambuc// CHECK: cmovael %eax, %edx 92*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x43,0xd0] 93*0a6a1f1dSLionel Sambuc cmovael %eax,%edx 94*0a6a1f1dSLionel Sambuc 95*0a6a1f1dSLionel Sambuc// CHECK: cmovbel %eax, %edx 96*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x46,0xd0] 97*0a6a1f1dSLionel Sambuc cmovbel %eax,%edx 98*0a6a1f1dSLionel Sambuc 99*0a6a1f1dSLionel Sambuc// CHECK: cmovbl %eax, %edx 100*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x42,0xd0] 101*0a6a1f1dSLionel Sambuc cmovbl %eax,%edx 102*0a6a1f1dSLionel Sambuc 103*0a6a1f1dSLionel Sambuc// CHECK: cmovbw %bx, %bx 104*0a6a1f1dSLionel Sambuccmovnae %bx,%bx 105*0a6a1f1dSLionel Sambuc 106*0a6a1f1dSLionel Sambuc 107*0a6a1f1dSLionel Sambuc// CHECK: cmovbel %eax, %edx 108*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x46,0xd0] 109*0a6a1f1dSLionel Sambuc cmovbel %eax,%edx 110*0a6a1f1dSLionel Sambuc 111*0a6a1f1dSLionel Sambuc// CHECK: cmovbl %eax, %edx 112*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x42,0xd0] 113*0a6a1f1dSLionel Sambuc cmovcl %eax,%edx 114*0a6a1f1dSLionel Sambuc 115*0a6a1f1dSLionel Sambuc// CHECK: cmovel %eax, %edx 116*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x44,0xd0] 117*0a6a1f1dSLionel Sambuc cmovel %eax,%edx 118*0a6a1f1dSLionel Sambuc 119*0a6a1f1dSLionel Sambuc// CHECK: cmovgl %eax, %edx 120*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4f,0xd0] 121*0a6a1f1dSLionel Sambuc cmovgl %eax,%edx 122*0a6a1f1dSLionel Sambuc 123*0a6a1f1dSLionel Sambuc// CHECK: cmovgel %eax, %edx 124*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4d,0xd0] 125*0a6a1f1dSLionel Sambuc cmovgel %eax,%edx 126*0a6a1f1dSLionel Sambuc 127*0a6a1f1dSLionel Sambuc// CHECK: cmovll %eax, %edx 128*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4c,0xd0] 129*0a6a1f1dSLionel Sambuc cmovll %eax,%edx 130*0a6a1f1dSLionel Sambuc 131*0a6a1f1dSLionel Sambuc// CHECK: cmovlel %eax, %edx 132*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4e,0xd0] 133*0a6a1f1dSLionel Sambuc cmovlel %eax,%edx 134*0a6a1f1dSLionel Sambuc 135*0a6a1f1dSLionel Sambuc// CHECK: cmovbel %eax, %edx 136*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x46,0xd0] 137*0a6a1f1dSLionel Sambuc cmovnal %eax,%edx 138*0a6a1f1dSLionel Sambuc 139*0a6a1f1dSLionel Sambuc// CHECK: cmovnel %eax, %edx 140*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x45,0xd0] 141*0a6a1f1dSLionel Sambuc cmovnel %eax,%edx 142*0a6a1f1dSLionel Sambuc 143*0a6a1f1dSLionel Sambuc// CHECK: cmovael %eax, %edx 144*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x43,0xd0] 145*0a6a1f1dSLionel Sambuc cmovnbl %eax,%edx 146*0a6a1f1dSLionel Sambuc 147*0a6a1f1dSLionel Sambuc// CHECK: cmoval %eax, %edx 148*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x47,0xd0] 149*0a6a1f1dSLionel Sambuc cmovnbel %eax,%edx 150*0a6a1f1dSLionel Sambuc 151*0a6a1f1dSLionel Sambuc// CHECK: cmovael %eax, %edx 152*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x43,0xd0] 153*0a6a1f1dSLionel Sambuc cmovncl %eax,%edx 154*0a6a1f1dSLionel Sambuc 155*0a6a1f1dSLionel Sambuc// CHECK: cmovnel %eax, %edx 156*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x45,0xd0] 157*0a6a1f1dSLionel Sambuc cmovnel %eax,%edx 158*0a6a1f1dSLionel Sambuc 159*0a6a1f1dSLionel Sambuc// CHECK: cmovlel %eax, %edx 160*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4e,0xd0] 161*0a6a1f1dSLionel Sambuc cmovngl %eax,%edx 162*0a6a1f1dSLionel Sambuc 163*0a6a1f1dSLionel Sambuc// CHECK: cmovgel %eax, %edx 164*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4d,0xd0] 165*0a6a1f1dSLionel Sambuc cmovnl %eax,%edx 166*0a6a1f1dSLionel Sambuc 167*0a6a1f1dSLionel Sambuc// CHECK: cmovnel %eax, %edx 168*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x45,0xd0] 169*0a6a1f1dSLionel Sambuc cmovnel %eax,%edx 170*0a6a1f1dSLionel Sambuc 171*0a6a1f1dSLionel Sambuc// CHECK: cmovlel %eax, %edx 172*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4e,0xd0] 173*0a6a1f1dSLionel Sambuc cmovngl %eax,%edx 174*0a6a1f1dSLionel Sambuc 175*0a6a1f1dSLionel Sambuc// CHECK: cmovll %eax, %edx 176*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4c,0xd0] 177*0a6a1f1dSLionel Sambuc cmovngel %eax,%edx 178*0a6a1f1dSLionel Sambuc 179*0a6a1f1dSLionel Sambuc// CHECK: cmovgel %eax, %edx 180*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4d,0xd0] 181*0a6a1f1dSLionel Sambuc cmovnll %eax,%edx 182*0a6a1f1dSLionel Sambuc 183*0a6a1f1dSLionel Sambuc// CHECK: cmovgl %eax, %edx 184*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4f,0xd0] 185*0a6a1f1dSLionel Sambuc cmovnlel %eax,%edx 186*0a6a1f1dSLionel Sambuc 187*0a6a1f1dSLionel Sambuc// CHECK: cmovnol %eax, %edx 188*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x41,0xd0] 189*0a6a1f1dSLionel Sambuc cmovnol %eax,%edx 190*0a6a1f1dSLionel Sambuc 191*0a6a1f1dSLionel Sambuc// CHECK: cmovnpl %eax, %edx 192*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4b,0xd0] 193*0a6a1f1dSLionel Sambuc cmovnpl %eax,%edx 194*0a6a1f1dSLionel Sambuc 195*0a6a1f1dSLionel Sambuc// CHECK: cmovnsl %eax, %edx 196*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x49,0xd0] 197*0a6a1f1dSLionel Sambuc cmovnsl %eax,%edx 198*0a6a1f1dSLionel Sambuc 199*0a6a1f1dSLionel Sambuc// CHECK: cmovnel %eax, %edx 200*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x45,0xd0] 201*0a6a1f1dSLionel Sambuc cmovnzl %eax,%edx 202*0a6a1f1dSLionel Sambuc 203*0a6a1f1dSLionel Sambuc// CHECK: cmovol %eax, %edx 204*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x40,0xd0] 205*0a6a1f1dSLionel Sambuc cmovol %eax,%edx 206*0a6a1f1dSLionel Sambuc 207*0a6a1f1dSLionel Sambuc// CHECK: cmovpl %eax, %edx 208*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x4a,0xd0] 209*0a6a1f1dSLionel Sambuc cmovpl %eax,%edx 210*0a6a1f1dSLionel Sambuc 211*0a6a1f1dSLionel Sambuc// CHECK: cmovsl %eax, %edx 212*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x48,0xd0] 213*0a6a1f1dSLionel Sambuc cmovsl %eax,%edx 214*0a6a1f1dSLionel Sambuc 215*0a6a1f1dSLionel Sambuc// CHECK: cmovel %eax, %edx 216*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x44,0xd0] 217*0a6a1f1dSLionel Sambuc cmovzl %eax,%edx 218*0a6a1f1dSLionel Sambuc 219*0a6a1f1dSLionel Sambuc// CHECK: fmul %st(0) 220*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd8,0xc8] 221*0a6a1f1dSLionel Sambuc fmul %st(0), %st 222*0a6a1f1dSLionel Sambuc 223*0a6a1f1dSLionel Sambuc// CHECK: fadd %st(0) 224*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd8,0xc0] 225*0a6a1f1dSLionel Sambuc fadd %st(0), %st 226*0a6a1f1dSLionel Sambuc 227*0a6a1f1dSLionel Sambuc// CHECK: fsub %st(0) 228*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd8,0xe0] 229*0a6a1f1dSLionel Sambuc fsub %st(0), %st 230*0a6a1f1dSLionel Sambuc 231*0a6a1f1dSLionel Sambuc// CHECK: fsubr %st(0) 232*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd8,0xe8] 233*0a6a1f1dSLionel Sambuc fsubr %st(0), %st 234*0a6a1f1dSLionel Sambuc 235*0a6a1f1dSLionel Sambuc// CHECK: fdivr %st(0) 236*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd8,0xf8] 237*0a6a1f1dSLionel Sambuc fdivr %st(0), %st 238*0a6a1f1dSLionel Sambuc 239*0a6a1f1dSLionel Sambuc// CHECK: fdiv %st(0) 240*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd8,0xf0] 241*0a6a1f1dSLionel Sambuc fdiv %st(0), %st 242*0a6a1f1dSLionel Sambuc 243*0a6a1f1dSLionel Sambuc// CHECK: movl %cs, %eax 244*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x8c,0xc8] 245*0a6a1f1dSLionel Sambuc movl %cs, %eax 246*0a6a1f1dSLionel Sambuc 247*0a6a1f1dSLionel Sambuc// CHECK: movw %cs, %ax 248*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x8c,0xc8] 249*0a6a1f1dSLionel Sambuc movw %cs, %ax 250*0a6a1f1dSLionel Sambuc 251*0a6a1f1dSLionel Sambuc// CHECK: movl %cs, (%eax) 252*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x8c,0x08] 253*0a6a1f1dSLionel Sambuc movl %cs, (%eax) 254*0a6a1f1dSLionel Sambuc 255*0a6a1f1dSLionel Sambuc// CHECK: movw %cs, (%eax) 256*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x8c,0x08] 257*0a6a1f1dSLionel Sambuc movw %cs, (%eax) 258*0a6a1f1dSLionel Sambuc 259*0a6a1f1dSLionel Sambuc// CHECK: movl %eax, %cs 260*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x8e,0xc8] 261*0a6a1f1dSLionel Sambuc movl %eax, %cs 262*0a6a1f1dSLionel Sambuc 263*0a6a1f1dSLionel Sambuc// CHECK: movl (%eax), %cs 264*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x8e,0x08] 265*0a6a1f1dSLionel Sambuc movl (%eax), %cs 266*0a6a1f1dSLionel Sambuc 267*0a6a1f1dSLionel Sambuc// CHECK: movw (%eax), %cs 268*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x8e,0x08] 269*0a6a1f1dSLionel Sambuc movw (%eax), %cs 270*0a6a1f1dSLionel Sambuc 271*0a6a1f1dSLionel Sambuc// CHECK: movl %cr0, %eax 272*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x20,0xc0] 273*0a6a1f1dSLionel Sambuc movl %cr0,%eax 274*0a6a1f1dSLionel Sambuc 275*0a6a1f1dSLionel Sambuc// CHECK: movl %cr1, %eax 276*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x20,0xc8] 277*0a6a1f1dSLionel Sambuc movl %cr1,%eax 278*0a6a1f1dSLionel Sambuc 279*0a6a1f1dSLionel Sambuc// CHECK: movl %cr2, %eax 280*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x20,0xd0] 281*0a6a1f1dSLionel Sambuc movl %cr2,%eax 282*0a6a1f1dSLionel Sambuc 283*0a6a1f1dSLionel Sambuc// CHECK: movl %cr3, %eax 284*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x20,0xd8] 285*0a6a1f1dSLionel Sambuc movl %cr3,%eax 286*0a6a1f1dSLionel Sambuc 287*0a6a1f1dSLionel Sambuc// CHECK: movl %cr4, %eax 288*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x20,0xe0] 289*0a6a1f1dSLionel Sambuc movl %cr4,%eax 290*0a6a1f1dSLionel Sambuc 291*0a6a1f1dSLionel Sambuc// CHECK: movl %dr0, %eax 292*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xc0] 293*0a6a1f1dSLionel Sambuc movl %dr0,%eax 294*0a6a1f1dSLionel Sambuc 295*0a6a1f1dSLionel Sambuc// CHECK: movl %dr1, %eax 296*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xc8] 297*0a6a1f1dSLionel Sambuc movl %dr1,%eax 298*0a6a1f1dSLionel Sambuc 299*0a6a1f1dSLionel Sambuc// CHECK: movl %dr1, %eax 300*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xc8] 301*0a6a1f1dSLionel Sambuc movl %dr1,%eax 302*0a6a1f1dSLionel Sambuc 303*0a6a1f1dSLionel Sambuc// CHECK: movl %dr2, %eax 304*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xd0] 305*0a6a1f1dSLionel Sambuc movl %dr2,%eax 306*0a6a1f1dSLionel Sambuc 307*0a6a1f1dSLionel Sambuc// CHECK: movl %dr3, %eax 308*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xd8] 309*0a6a1f1dSLionel Sambuc movl %dr3,%eax 310*0a6a1f1dSLionel Sambuc 311*0a6a1f1dSLionel Sambuc// CHECK: movl %dr4, %eax 312*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xe0] 313*0a6a1f1dSLionel Sambuc movl %dr4,%eax 314*0a6a1f1dSLionel Sambuc 315*0a6a1f1dSLionel Sambuc// CHECK: movl %dr5, %eax 316*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xe8] 317*0a6a1f1dSLionel Sambuc movl %dr5,%eax 318*0a6a1f1dSLionel Sambuc 319*0a6a1f1dSLionel Sambuc// CHECK: movl %dr6, %eax 320*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xf0] 321*0a6a1f1dSLionel Sambuc movl %dr6,%eax 322*0a6a1f1dSLionel Sambuc 323*0a6a1f1dSLionel Sambuc// CHECK: movl %dr7, %eax 324*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x21,0xf8] 325*0a6a1f1dSLionel Sambuc movl %dr7,%eax 326*0a6a1f1dSLionel Sambuc 327*0a6a1f1dSLionel Sambuc// CHECK: wait 328*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x9b] 329*0a6a1f1dSLionel Sambuc fwait 330*0a6a1f1dSLionel Sambuc 331*0a6a1f1dSLionel Sambuc// CHECK: [0x66,0x65,0xa1,0x7c,0x00] 332*0a6a1f1dSLionel Sambuc movl %gs:124, %eax 333*0a6a1f1dSLionel Sambuc 334*0a6a1f1dSLionel Sambuc// CHECK: pusha 335*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x60] 336*0a6a1f1dSLionel Sambuc pusha 337*0a6a1f1dSLionel Sambuc 338*0a6a1f1dSLionel Sambuc// CHECK: popa 339*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x61] 340*0a6a1f1dSLionel Sambuc popa 341*0a6a1f1dSLionel Sambuc 342*0a6a1f1dSLionel Sambuc// CHECK: pushaw 343*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x60] 344*0a6a1f1dSLionel Sambuc pushaw 345*0a6a1f1dSLionel Sambuc 346*0a6a1f1dSLionel Sambuc// CHECK: popaw 347*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x61] 348*0a6a1f1dSLionel Sambuc popaw 349*0a6a1f1dSLionel Sambuc 350*0a6a1f1dSLionel Sambuc// CHECK: pushal 351*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x60] 352*0a6a1f1dSLionel Sambuc pushal 353*0a6a1f1dSLionel Sambuc 354*0a6a1f1dSLionel Sambuc// CHECK: popal 355*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x61] 356*0a6a1f1dSLionel Sambuc popal 357*0a6a1f1dSLionel Sambuc 358*0a6a1f1dSLionel Sambuc// CHECK: jmpw *8(%eax) 359*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0xff,0x60,0x08] 360*0a6a1f1dSLionel Sambuc jmp *8(%eax) 361*0a6a1f1dSLionel Sambuc 362*0a6a1f1dSLionel Sambuc// CHECK: jmpl *8(%eax) 363*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0xff,0x60,0x08] 364*0a6a1f1dSLionel Sambuc jmpl *8(%eax) 365*0a6a1f1dSLionel Sambuc 366*0a6a1f1dSLionel Sambuc// CHECK: lcalll $2, $4660 367*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x9a,0x34,0x12,0x00,0x00,0x02,0x00] 368*0a6a1f1dSLionel Sambuclcalll $0x2, $0x1234 369*0a6a1f1dSLionel Sambuc 370*0a6a1f1dSLionel Sambuc 371*0a6a1f1dSLionel SambucL1: 372*0a6a1f1dSLionel Sambuc jcxz L1 373*0a6a1f1dSLionel Sambuc// CHECK: jcxz L1 374*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xe3,A] 375*0a6a1f1dSLionel Sambuc jecxz L1 376*0a6a1f1dSLionel Sambuc// CHECK: jecxz L1 377*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0xe3,A] 378*0a6a1f1dSLionel Sambuc 379*0a6a1f1dSLionel Sambuciret 380*0a6a1f1dSLionel Sambuc// CHECK: iretw 381*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xcf] 382*0a6a1f1dSLionel Sambuciretw 383*0a6a1f1dSLionel Sambuc// CHECK: iretw 384*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xcf] 385*0a6a1f1dSLionel Sambuciretl 386*0a6a1f1dSLionel Sambuc// CHECK: iretl 387*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xcf] 388*0a6a1f1dSLionel Sambuc 389*0a6a1f1dSLionel Sambucsysret 390*0a6a1f1dSLionel Sambuc// CHECK: sysretl 391*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x07] 392*0a6a1f1dSLionel Sambucsysretl 393*0a6a1f1dSLionel Sambuc// CHECK: sysretl 394*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x07] 395*0a6a1f1dSLionel Sambuc 396*0a6a1f1dSLionel Sambuctestl %ecx, -24(%ebp) 397*0a6a1f1dSLionel Sambuc// CHECK: testl -24(%ebp), %ecx 398*0a6a1f1dSLionel Sambuctestl -24(%ebp), %ecx 399*0a6a1f1dSLionel Sambuc// CHECK: testl -24(%ebp), %ecx 400*0a6a1f1dSLionel Sambuc 401*0a6a1f1dSLionel Sambuc 402*0a6a1f1dSLionel Sambucpush %cs 403*0a6a1f1dSLionel Sambuc// CHECK: pushw %cs 404*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0e] 405*0a6a1f1dSLionel Sambucpush %ds 406*0a6a1f1dSLionel Sambuc// CHECK: pushw %ds 407*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x1e] 408*0a6a1f1dSLionel Sambucpush %ss 409*0a6a1f1dSLionel Sambuc// CHECK: pushw %ss 410*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x16] 411*0a6a1f1dSLionel Sambucpush %es 412*0a6a1f1dSLionel Sambuc// CHECK: pushw %es 413*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x06] 414*0a6a1f1dSLionel Sambucpush %fs 415*0a6a1f1dSLionel Sambuc// CHECK: pushw %fs 416*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xa0] 417*0a6a1f1dSLionel Sambucpush %gs 418*0a6a1f1dSLionel Sambuc// CHECK: pushw %gs 419*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xa8] 420*0a6a1f1dSLionel Sambuc 421*0a6a1f1dSLionel Sambucpushw %cs 422*0a6a1f1dSLionel Sambuc// CHECK: pushw %cs 423*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0e] 424*0a6a1f1dSLionel Sambucpushw %ds 425*0a6a1f1dSLionel Sambuc// CHECK: pushw %ds 426*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x1e] 427*0a6a1f1dSLionel Sambucpushw %ss 428*0a6a1f1dSLionel Sambuc// CHECK: pushw %ss 429*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x16] 430*0a6a1f1dSLionel Sambucpushw %es 431*0a6a1f1dSLionel Sambuc// CHECK: pushw %es 432*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x06] 433*0a6a1f1dSLionel Sambucpushw %fs 434*0a6a1f1dSLionel Sambuc// CHECK: pushw %fs 435*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xa0] 436*0a6a1f1dSLionel Sambucpushw %gs 437*0a6a1f1dSLionel Sambuc// CHECK: pushw %gs 438*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xa8] 439*0a6a1f1dSLionel Sambuc 440*0a6a1f1dSLionel Sambucpushl %cs 441*0a6a1f1dSLionel Sambuc// CHECK: pushl %cs 442*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0e] 443*0a6a1f1dSLionel Sambucpushl %ds 444*0a6a1f1dSLionel Sambuc// CHECK: pushl %ds 445*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x1e] 446*0a6a1f1dSLionel Sambucpushl %ss 447*0a6a1f1dSLionel Sambuc// CHECK: pushl %ss 448*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x16] 449*0a6a1f1dSLionel Sambucpushl %es 450*0a6a1f1dSLionel Sambuc// CHECK: pushl %es 451*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x06] 452*0a6a1f1dSLionel Sambucpushl %fs 453*0a6a1f1dSLionel Sambuc// CHECK: pushl %fs 454*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0xa0] 455*0a6a1f1dSLionel Sambucpushl %gs 456*0a6a1f1dSLionel Sambuc// CHECK: pushl %gs 457*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0xa8] 458*0a6a1f1dSLionel Sambuc 459*0a6a1f1dSLionel Sambucpop %ss 460*0a6a1f1dSLionel Sambuc// CHECK: popw %ss 461*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x17] 462*0a6a1f1dSLionel Sambucpop %ds 463*0a6a1f1dSLionel Sambuc// CHECK: popw %ds 464*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x1f] 465*0a6a1f1dSLionel Sambucpop %es 466*0a6a1f1dSLionel Sambuc// CHECK: popw %es 467*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x07] 468*0a6a1f1dSLionel Sambuc 469*0a6a1f1dSLionel Sambucpopl %ss 470*0a6a1f1dSLionel Sambuc// CHECK: popl %ss 471*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x17] 472*0a6a1f1dSLionel Sambucpopl %ds 473*0a6a1f1dSLionel Sambuc// CHECK: popl %ds 474*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x1f] 475*0a6a1f1dSLionel Sambucpopl %es 476*0a6a1f1dSLionel Sambuc// CHECK: popl %es 477*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x07] 478*0a6a1f1dSLionel Sambuc 479*0a6a1f1dSLionel Sambucpushfd 480*0a6a1f1dSLionel Sambuc// CHECK: pushfl 481*0a6a1f1dSLionel Sambucpopfd 482*0a6a1f1dSLionel Sambuc// CHECK: popfl 483*0a6a1f1dSLionel Sambucpushfl 484*0a6a1f1dSLionel Sambuc// CHECK: pushfl 485*0a6a1f1dSLionel Sambucpopfl 486*0a6a1f1dSLionel Sambuc// CHECK: popfl 487*0a6a1f1dSLionel Sambuc 488*0a6a1f1dSLionel Sambuc 489*0a6a1f1dSLionel Sambuc setc %bl 490*0a6a1f1dSLionel Sambuc setnae %bl 491*0a6a1f1dSLionel Sambuc setnb %bl 492*0a6a1f1dSLionel Sambuc setnc %bl 493*0a6a1f1dSLionel Sambuc setna %bl 494*0a6a1f1dSLionel Sambuc setnbe %bl 495*0a6a1f1dSLionel Sambuc setpe %bl 496*0a6a1f1dSLionel Sambuc setpo %bl 497*0a6a1f1dSLionel Sambuc setnge %bl 498*0a6a1f1dSLionel Sambuc setnl %bl 499*0a6a1f1dSLionel Sambuc setng %bl 500*0a6a1f1dSLionel Sambuc setnle %bl 501*0a6a1f1dSLionel Sambuc 502*0a6a1f1dSLionel Sambuc setneb %cl // CHECK: setne %cl 503*0a6a1f1dSLionel Sambuc setcb %bl // CHECK: setb %bl 504*0a6a1f1dSLionel Sambuc setnaeb %bl // CHECK: setb %bl 505*0a6a1f1dSLionel Sambuc 506*0a6a1f1dSLionel Sambuc 507*0a6a1f1dSLionel Sambuc// CHECK: lcalll $31438, $31438 508*0a6a1f1dSLionel Sambuc// CHECK: lcalll $31438, $31438 509*0a6a1f1dSLionel Sambuc// CHECK: ljmpl $31438, $31438 510*0a6a1f1dSLionel Sambuc// CHECK: ljmpl $31438, $31438 511*0a6a1f1dSLionel Sambuc 512*0a6a1f1dSLionel Sambuccalll $0x7ace,$0x7ace 513*0a6a1f1dSLionel Sambuclcalll $0x7ace,$0x7ace 514*0a6a1f1dSLionel Sambucjmpl $0x7ace,$0x7ace 515*0a6a1f1dSLionel Sambucljmpl $0x7ace,$0x7ace 516*0a6a1f1dSLionel Sambuc 517*0a6a1f1dSLionel Sambuc// CHECK: lcallw $31438, $31438 518*0a6a1f1dSLionel Sambuc// CHECK: lcallw $31438, $31438 519*0a6a1f1dSLionel Sambuc// CHECK: ljmpw $31438, $31438 520*0a6a1f1dSLionel Sambuc// CHECK: ljmpw $31438, $31438 521*0a6a1f1dSLionel Sambuc 522*0a6a1f1dSLionel Sambuccallw $0x7ace,$0x7ace 523*0a6a1f1dSLionel Sambuclcallw $0x7ace,$0x7ace 524*0a6a1f1dSLionel Sambucjmpw $0x7ace,$0x7ace 525*0a6a1f1dSLionel Sambucljmpw $0x7ace,$0x7ace 526*0a6a1f1dSLionel Sambuc 527*0a6a1f1dSLionel Sambuc// CHECK: lcallw $31438, $31438 528*0a6a1f1dSLionel Sambuc// CHECK: lcallw $31438, $31438 529*0a6a1f1dSLionel Sambuc// CHECK: ljmpw $31438, $31438 530*0a6a1f1dSLionel Sambuc// CHECK: ljmpw $31438, $31438 531*0a6a1f1dSLionel Sambuc 532*0a6a1f1dSLionel Sambuccall $0x7ace,$0x7ace 533*0a6a1f1dSLionel Sambuclcall $0x7ace,$0x7ace 534*0a6a1f1dSLionel Sambucjmp $0x7ace,$0x7ace 535*0a6a1f1dSLionel Sambucljmp $0x7ace,$0x7ace 536*0a6a1f1dSLionel Sambuc 537*0a6a1f1dSLionel Sambuc// CHECK: calll a 538*0a6a1f1dSLionel Sambuc calll a 539*0a6a1f1dSLionel Sambuc 540*0a6a1f1dSLionel Sambuc// CHECK: incb %al # encoding: [0xfe,0xc0] 541*0a6a1f1dSLionel Sambuc incb %al 542*0a6a1f1dSLionel Sambuc 543*0a6a1f1dSLionel Sambuc// CHECK: incw %ax # encoding: [0x40] 544*0a6a1f1dSLionel Sambuc incw %ax 545*0a6a1f1dSLionel Sambuc 546*0a6a1f1dSLionel Sambuc// CHECK: incl %eax # encoding: [0x66,0x40] 547*0a6a1f1dSLionel Sambuc incl %eax 548*0a6a1f1dSLionel Sambuc 549*0a6a1f1dSLionel Sambuc// CHECK: decb %al # encoding: [0xfe,0xc8] 550*0a6a1f1dSLionel Sambuc decb %al 551*0a6a1f1dSLionel Sambuc 552*0a6a1f1dSLionel Sambuc// CHECK: decw %ax # encoding: [0x48] 553*0a6a1f1dSLionel Sambuc decw %ax 554*0a6a1f1dSLionel Sambuc 555*0a6a1f1dSLionel Sambuc// CHECK: decl %eax # encoding: [0x66,0x48] 556*0a6a1f1dSLionel Sambuc decl %eax 557*0a6a1f1dSLionel Sambuc 558*0a6a1f1dSLionel Sambuc// CHECK: pshufw $14, %mm4, %mm0 # encoding: [0x0f,0x70,0xc4,0x0e] 559*0a6a1f1dSLionel Sambucpshufw $14, %mm4, %mm0 560*0a6a1f1dSLionel Sambuc 561*0a6a1f1dSLionel Sambuc// CHECK: pshufw $90, %mm4, %mm0 # encoding: [0x0f,0x70,0xc4,0x5a] 562*0a6a1f1dSLionel Sambucpshufw $90, %mm4, %mm0 563*0a6a1f1dSLionel Sambuc 564*0a6a1f1dSLionel Sambuc// CHECK: aaa 565*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x37] 566*0a6a1f1dSLionel Sambuc aaa 567*0a6a1f1dSLionel Sambuc 568*0a6a1f1dSLionel Sambuc// CHECK: aad $1 569*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd5,0x01] 570*0a6a1f1dSLionel Sambuc aad $1 571*0a6a1f1dSLionel Sambuc 572*0a6a1f1dSLionel Sambuc// CHECK: aad 573*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd5,0x0a] 574*0a6a1f1dSLionel Sambuc aad $0xA 575*0a6a1f1dSLionel Sambuc 576*0a6a1f1dSLionel Sambuc// CHECK: aad 577*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd5,0x0a] 578*0a6a1f1dSLionel Sambuc aad 579*0a6a1f1dSLionel Sambuc 580*0a6a1f1dSLionel Sambuc// CHECK: aam $2 581*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd4,0x02] 582*0a6a1f1dSLionel Sambuc aam $2 583*0a6a1f1dSLionel Sambuc 584*0a6a1f1dSLionel Sambuc// CHECK: aam 585*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd4,0x0a] 586*0a6a1f1dSLionel Sambuc aam $0xA 587*0a6a1f1dSLionel Sambuc 588*0a6a1f1dSLionel Sambuc// CHECK: aam 589*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd4,0x0a] 590*0a6a1f1dSLionel Sambuc aam 591*0a6a1f1dSLionel Sambuc 592*0a6a1f1dSLionel Sambuc// CHECK: aas 593*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x3f] 594*0a6a1f1dSLionel Sambuc aas 595*0a6a1f1dSLionel Sambuc 596*0a6a1f1dSLionel Sambuc// CHECK: daa 597*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x27] 598*0a6a1f1dSLionel Sambuc daa 599*0a6a1f1dSLionel Sambuc 600*0a6a1f1dSLionel Sambuc// CHECK: das 601*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x2f] 602*0a6a1f1dSLionel Sambuc das 603*0a6a1f1dSLionel Sambuc 604*0a6a1f1dSLionel Sambuc// CHECK: retw $31438 605*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xc2,0xce,0x7a] 606*0a6a1f1dSLionel Sambuc retw $0x7ace 607*0a6a1f1dSLionel Sambuc 608*0a6a1f1dSLionel Sambuc// CHECK: lretw $31438 609*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xca,0xce,0x7a] 610*0a6a1f1dSLionel Sambuc lretw $0x7ace 611*0a6a1f1dSLionel Sambuc 612*0a6a1f1dSLionel Sambuc// CHECK: retw $31438 613*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xc2,0xce,0x7a] 614*0a6a1f1dSLionel Sambuc ret $0x7ace 615*0a6a1f1dSLionel Sambuc 616*0a6a1f1dSLionel Sambuc// CHECK: lretw $31438 617*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xca,0xce,0x7a] 618*0a6a1f1dSLionel Sambuc lret $0x7ace 619*0a6a1f1dSLionel Sambuc 620*0a6a1f1dSLionel Sambuc// CHECK: retl $31438 621*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xc2,0xce,0x7a] 622*0a6a1f1dSLionel Sambuc retl $0x7ace 623*0a6a1f1dSLionel Sambuc 624*0a6a1f1dSLionel Sambuc// CHECK: lretl $31438 625*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xca,0xce,0x7a] 626*0a6a1f1dSLionel Sambuc lretl $0x7ace 627*0a6a1f1dSLionel Sambuc 628*0a6a1f1dSLionel Sambuc// CHECK: bound 2(%eax), %bx 629*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x62,0x58,0x02] 630*0a6a1f1dSLionel Sambuc bound 2(%eax),%bx 631*0a6a1f1dSLionel Sambuc 632*0a6a1f1dSLionel Sambuc// CHECK: bound 4(%ebx), %ecx 633*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x62,0x4b,0x04] 634*0a6a1f1dSLionel Sambuc bound 4(%ebx),%ecx 635*0a6a1f1dSLionel Sambuc 636*0a6a1f1dSLionel Sambuc// CHECK: arpl %bx, %bx 637*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x63,0xdb] 638*0a6a1f1dSLionel Sambuc arpl %bx,%bx 639*0a6a1f1dSLionel Sambuc 640*0a6a1f1dSLionel Sambuc// CHECK: arpl %bx, 6(%ecx) 641*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x63,0x59,0x06] 642*0a6a1f1dSLionel Sambuc arpl %bx,6(%ecx) 643*0a6a1f1dSLionel Sambuc 644*0a6a1f1dSLionel Sambuc// CHECK: lgdtw 4(%eax) 645*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x50,0x04] 646*0a6a1f1dSLionel Sambuc lgdtw 4(%eax) 647*0a6a1f1dSLionel Sambuc 648*0a6a1f1dSLionel Sambuc// CHECK: lgdtw 4(%eax) 649*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x50,0x04] 650*0a6a1f1dSLionel Sambuc lgdt 4(%eax) 651*0a6a1f1dSLionel Sambuc 652*0a6a1f1dSLionel Sambuc// CHECK: lgdtl 4(%eax) 653*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x0f,0x01,0x50,0x04] 654*0a6a1f1dSLionel Sambuc lgdtl 4(%eax) 655*0a6a1f1dSLionel Sambuc 656*0a6a1f1dSLionel Sambuc// CHECK: lidtw 4(%eax) 657*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x58,0x04] 658*0a6a1f1dSLionel Sambuc lidtw 4(%eax) 659*0a6a1f1dSLionel Sambuc 660*0a6a1f1dSLionel Sambuc// CHECK: lidtw 4(%eax) 661*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x58,0x04] 662*0a6a1f1dSLionel Sambuc lidt 4(%eax) 663*0a6a1f1dSLionel Sambuc 664*0a6a1f1dSLionel Sambuc// CHECK: lidtl 4(%eax) 665*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x0f,0x01,0x58,0x04] 666*0a6a1f1dSLionel Sambuc lidtl 4(%eax) 667*0a6a1f1dSLionel Sambuc 668*0a6a1f1dSLionel Sambuc// CHECK: sgdtw 4(%eax) 669*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x40,0x04] 670*0a6a1f1dSLionel Sambuc sgdtw 4(%eax) 671*0a6a1f1dSLionel Sambuc 672*0a6a1f1dSLionel Sambuc// CHECK: sgdtw 4(%eax) 673*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x40,0x04] 674*0a6a1f1dSLionel Sambuc sgdt 4(%eax) 675*0a6a1f1dSLionel Sambuc 676*0a6a1f1dSLionel Sambuc// CHECK: sgdtl 4(%eax) 677*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x0f,0x01,0x40,0x04] 678*0a6a1f1dSLionel Sambuc sgdtl 4(%eax) 679*0a6a1f1dSLionel Sambuc 680*0a6a1f1dSLionel Sambuc// CHECK: sidtw 4(%eax) 681*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x48,0x04] 682*0a6a1f1dSLionel Sambuc sidtw 4(%eax) 683*0a6a1f1dSLionel Sambuc 684*0a6a1f1dSLionel Sambuc// CHECK: sidtw 4(%eax) 685*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x0f,0x01,0x48,0x04] 686*0a6a1f1dSLionel Sambuc sidt 4(%eax) 687*0a6a1f1dSLionel Sambuc 688*0a6a1f1dSLionel Sambuc// CHECK: sidtl 4(%eax) 689*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x67,0x66,0x0f,0x01,0x48,0x04] 690*0a6a1f1dSLionel Sambuc sidtl 4(%eax) 691*0a6a1f1dSLionel Sambuc 692*0a6a1f1dSLionel Sambuc// CHECK: fcompi %st(2) 693*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdf,0xf2] 694*0a6a1f1dSLionel Sambuc fcompi %st(2), %st 695*0a6a1f1dSLionel Sambuc 696*0a6a1f1dSLionel Sambuc// CHECK: fcompi %st(2) 697*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdf,0xf2] 698*0a6a1f1dSLionel Sambuc fcompi %st(2) 699*0a6a1f1dSLionel Sambuc 700*0a6a1f1dSLionel Sambuc// CHECK: fcompi 701*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdf,0xf1] 702*0a6a1f1dSLionel Sambuc fcompi 703*0a6a1f1dSLionel Sambuc 704*0a6a1f1dSLionel Sambuc// CHECK: fucompi %st(2) 705*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdf,0xea] 706*0a6a1f1dSLionel Sambuc fucompi %st(2),%st 707*0a6a1f1dSLionel Sambuc 708*0a6a1f1dSLionel Sambuc// CHECK: fucompi %st(2) 709*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdf,0xea] 710*0a6a1f1dSLionel Sambuc fucompi %st(2) 711*0a6a1f1dSLionel Sambuc 712*0a6a1f1dSLionel Sambuc// CHECK: fucompi 713*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdf,0xe9] 714*0a6a1f1dSLionel Sambuc fucompi 715*0a6a1f1dSLionel Sambuc 716*0a6a1f1dSLionel Sambuc// CHECK: fldcw 32493 717*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd9,0x2e,0xed,0x7e] 718*0a6a1f1dSLionel Sambuc fldcww 0x7eed 719*0a6a1f1dSLionel Sambuc 720*0a6a1f1dSLionel Sambuc// CHECK: fldcw 32493 721*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd9,0x2e,0xed,0x7e] 722*0a6a1f1dSLionel Sambuc fldcw 0x7eed 723*0a6a1f1dSLionel Sambuc 724*0a6a1f1dSLionel Sambuc// CHECK: fnstcw 32493 725*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd9,0x3e,0xed,0x7e] 726*0a6a1f1dSLionel Sambuc fnstcww 0x7eed 727*0a6a1f1dSLionel Sambuc 728*0a6a1f1dSLionel Sambuc// CHECK: fnstcw 32493 729*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xd9,0x3e,0xed,0x7e] 730*0a6a1f1dSLionel Sambuc fnstcw 0x7eed 731*0a6a1f1dSLionel Sambuc 732*0a6a1f1dSLionel Sambuc// CHECK: wait 733*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x9b] 734*0a6a1f1dSLionel Sambuc fstcww 0x7eed 735*0a6a1f1dSLionel Sambuc 736*0a6a1f1dSLionel Sambuc// CHECK: wait 737*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x9b] 738*0a6a1f1dSLionel Sambuc fstcw 0x7eed 739*0a6a1f1dSLionel Sambuc 740*0a6a1f1dSLionel Sambuc// CHECK: fnstsw 32493 741*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdd,0x3e,0xed,0x7e] 742*0a6a1f1dSLionel Sambuc fnstsww 0x7eed 743*0a6a1f1dSLionel Sambuc 744*0a6a1f1dSLionel Sambuc// CHECK: fnstsw 32493 745*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdd,0x3e,0xed,0x7e] 746*0a6a1f1dSLionel Sambuc fnstsw 0x7eed 747*0a6a1f1dSLionel Sambuc 748*0a6a1f1dSLionel Sambuc// CHECK: wait 749*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x9b] 750*0a6a1f1dSLionel Sambuc fstsww 0x7eed 751*0a6a1f1dSLionel Sambuc 752*0a6a1f1dSLionel Sambuc// CHECK: wait 753*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x9b] 754*0a6a1f1dSLionel Sambuc fstsw 0x7eed 755*0a6a1f1dSLionel Sambuc 756*0a6a1f1dSLionel Sambuc// CHECK: verr 32493 757*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x00,0x26,0xed,0x7e] 758*0a6a1f1dSLionel Sambuc verrw 0x7eed 759*0a6a1f1dSLionel Sambuc 760*0a6a1f1dSLionel Sambuc// CHECK: verr 32493 761*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x00,0x26,0xed,0x7e] 762*0a6a1f1dSLionel Sambuc verr 0x7eed 763*0a6a1f1dSLionel Sambuc 764*0a6a1f1dSLionel Sambuc// CHECK: wait 765*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x9b] 766*0a6a1f1dSLionel Sambuc fclex 767*0a6a1f1dSLionel Sambuc 768*0a6a1f1dSLionel Sambuc// CHECK: fnclex 769*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xdb,0xe2] 770*0a6a1f1dSLionel Sambuc fnclex 771*0a6a1f1dSLionel Sambuc 772*0a6a1f1dSLionel Sambuc// CHECK: ud2 773*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x0b] 774*0a6a1f1dSLionel Sambuc ud2 775*0a6a1f1dSLionel Sambuc 776*0a6a1f1dSLionel Sambuc// CHECK: ud2 777*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x0b] 778*0a6a1f1dSLionel Sambuc ud2a 779*0a6a1f1dSLionel Sambuc 780*0a6a1f1dSLionel Sambuc// CHECK: ud2b 781*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0xb9] 782*0a6a1f1dSLionel Sambuc ud2b 783*0a6a1f1dSLionel Sambuc 784*0a6a1f1dSLionel Sambuc// CHECK: loope 0 785*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xe1,A] 786*0a6a1f1dSLionel Sambuc loopz 0 787*0a6a1f1dSLionel Sambuc 788*0a6a1f1dSLionel Sambuc// CHECK: loopne 0 789*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xe0,A] 790*0a6a1f1dSLionel Sambuc loopnz 0 791*0a6a1f1dSLionel Sambuc 792*0a6a1f1dSLionel Sambuc// CHECK: outsb (%si), %dx # encoding: [0x6e] 793*0a6a1f1dSLionel Sambuc// CHECK: outsb 794*0a6a1f1dSLionel Sambuc// CHECK: outsb 795*0a6a1f1dSLionel Sambuc outsb 796*0a6a1f1dSLionel Sambuc outsb %ds:(%si), %dx 797*0a6a1f1dSLionel Sambuc outsb (%si), %dx 798*0a6a1f1dSLionel Sambuc 799*0a6a1f1dSLionel Sambuc// CHECK: outsw (%si), %dx # encoding: [0x6f] 800*0a6a1f1dSLionel Sambuc// CHECK: outsw 801*0a6a1f1dSLionel Sambuc// CHECK: outsw 802*0a6a1f1dSLionel Sambuc outsw 803*0a6a1f1dSLionel Sambuc outsw %ds:(%si), %dx 804*0a6a1f1dSLionel Sambuc outsw (%si), %dx 805*0a6a1f1dSLionel Sambuc 806*0a6a1f1dSLionel Sambuc// CHECK: outsl (%si), %dx # encoding: [0x66,0x6f] 807*0a6a1f1dSLionel Sambuc// CHECK: outsl 808*0a6a1f1dSLionel Sambuc outsl 809*0a6a1f1dSLionel Sambuc outsl %ds:(%si), %dx 810*0a6a1f1dSLionel Sambuc outsl (%si), %dx 811*0a6a1f1dSLionel Sambuc 812*0a6a1f1dSLionel Sambuc// CHECK: insb %dx, %es:(%di) # encoding: [0x6c] 813*0a6a1f1dSLionel Sambuc// CHECK: insb 814*0a6a1f1dSLionel Sambuc insb 815*0a6a1f1dSLionel Sambuc insb %dx, %es:(%di) 816*0a6a1f1dSLionel Sambuc 817*0a6a1f1dSLionel Sambuc// CHECK: insw %dx, %es:(%di) # encoding: [0x6d] 818*0a6a1f1dSLionel Sambuc// CHECK: insw 819*0a6a1f1dSLionel Sambuc insw 820*0a6a1f1dSLionel Sambuc insw %dx, %es:(%di) 821*0a6a1f1dSLionel Sambuc 822*0a6a1f1dSLionel Sambuc// CHECK: insl %dx, %es:(%di) # encoding: [0x66,0x6d] 823*0a6a1f1dSLionel Sambuc// CHECK: insl 824*0a6a1f1dSLionel Sambuc insl 825*0a6a1f1dSLionel Sambuc insl %dx, %es:(%di) 826*0a6a1f1dSLionel Sambuc 827*0a6a1f1dSLionel Sambuc// CHECK: movsb (%si), %es:(%di) # encoding: [0xa4] 828*0a6a1f1dSLionel Sambuc// CHECK: movsb 829*0a6a1f1dSLionel Sambuc// CHECK: movsb 830*0a6a1f1dSLionel Sambuc movsb 831*0a6a1f1dSLionel Sambuc movsb %ds:(%si), %es:(%di) 832*0a6a1f1dSLionel Sambuc movsb (%si), %es:(%di) 833*0a6a1f1dSLionel Sambuc 834*0a6a1f1dSLionel Sambuc// CHECK: movsw (%si), %es:(%di) # encoding: [0xa5] 835*0a6a1f1dSLionel Sambuc// CHECK: movsw 836*0a6a1f1dSLionel Sambuc// CHECK: movsw 837*0a6a1f1dSLionel Sambuc movsw 838*0a6a1f1dSLionel Sambuc movsw %ds:(%si), %es:(%di) 839*0a6a1f1dSLionel Sambuc movsw (%si), %es:(%di) 840*0a6a1f1dSLionel Sambuc 841*0a6a1f1dSLionel Sambuc// CHECK: movsl (%si), %es:(%di) # encoding: [0x66,0xa5] 842*0a6a1f1dSLionel Sambuc// CHECK: movsl 843*0a6a1f1dSLionel Sambuc// CHECK: movsl 844*0a6a1f1dSLionel Sambuc movsl 845*0a6a1f1dSLionel Sambuc movsl %ds:(%si), %es:(%di) 846*0a6a1f1dSLionel Sambuc movsl (%si), %es:(%di) 847*0a6a1f1dSLionel Sambuc 848*0a6a1f1dSLionel Sambuc// CHECK: lodsb (%si), %al # encoding: [0xac] 849*0a6a1f1dSLionel Sambuc// CHECK: lodsb 850*0a6a1f1dSLionel Sambuc// CHECK: lodsb 851*0a6a1f1dSLionel Sambuc// CHECK: lodsb 852*0a6a1f1dSLionel Sambuc// CHECK: lodsb 853*0a6a1f1dSLionel Sambuc lodsb 854*0a6a1f1dSLionel Sambuc lodsb %ds:(%si), %al 855*0a6a1f1dSLionel Sambuc lodsb (%si), %al 856*0a6a1f1dSLionel Sambuc lods %ds:(%si), %al 857*0a6a1f1dSLionel Sambuc lods (%si), %al 858*0a6a1f1dSLionel Sambuc 859*0a6a1f1dSLionel Sambuc// CHECK: lodsw (%si), %ax # encoding: [0xad] 860*0a6a1f1dSLionel Sambuc// CHECK: lodsw 861*0a6a1f1dSLionel Sambuc// CHECK: lodsw 862*0a6a1f1dSLionel Sambuc// CHECK: lodsw 863*0a6a1f1dSLionel Sambuc// CHECK: lodsw 864*0a6a1f1dSLionel Sambuc lodsw 865*0a6a1f1dSLionel Sambuc lodsw %ds:(%si), %ax 866*0a6a1f1dSLionel Sambuc lodsw (%si), %ax 867*0a6a1f1dSLionel Sambuc lods %ds:(%si), %ax 868*0a6a1f1dSLionel Sambuc lods (%si), %ax 869*0a6a1f1dSLionel Sambuc 870*0a6a1f1dSLionel Sambuc// CHECK: lodsl (%si), %eax # encoding: [0x66,0xad] 871*0a6a1f1dSLionel Sambuc// CHECK: lodsl 872*0a6a1f1dSLionel Sambuc// CHECK: lodsl 873*0a6a1f1dSLionel Sambuc// CHECK: lodsl 874*0a6a1f1dSLionel Sambuc// CHECK: lodsl 875*0a6a1f1dSLionel Sambuc lodsl 876*0a6a1f1dSLionel Sambuc lodsl %ds:(%si), %eax 877*0a6a1f1dSLionel Sambuc lodsl (%si), %eax 878*0a6a1f1dSLionel Sambuc lods %ds:(%si), %eax 879*0a6a1f1dSLionel Sambuc lods (%si), %eax 880*0a6a1f1dSLionel Sambuc 881*0a6a1f1dSLionel Sambuc// CHECK: stosb %al, %es:(%di) # encoding: [0xaa] 882*0a6a1f1dSLionel Sambuc// CHECK: stosb 883*0a6a1f1dSLionel Sambuc// CHECK: stosb 884*0a6a1f1dSLionel Sambuc stosb 885*0a6a1f1dSLionel Sambuc stosb %al, %es:(%di) 886*0a6a1f1dSLionel Sambuc stos %al, %es:(%di) 887*0a6a1f1dSLionel Sambuc 888*0a6a1f1dSLionel Sambuc// CHECK: stosw %ax, %es:(%di) # encoding: [0xab] 889*0a6a1f1dSLionel Sambuc// CHECK: stosw 890*0a6a1f1dSLionel Sambuc// CHECK: stosw 891*0a6a1f1dSLionel Sambuc stosw 892*0a6a1f1dSLionel Sambuc stosw %ax, %es:(%di) 893*0a6a1f1dSLionel Sambuc stos %ax, %es:(%di) 894*0a6a1f1dSLionel Sambuc 895*0a6a1f1dSLionel Sambuc// CHECK: stosl %eax, %es:(%di) # encoding: [0x66,0xab] 896*0a6a1f1dSLionel Sambuc// CHECK: stosl 897*0a6a1f1dSLionel Sambuc// CHECK: stosl 898*0a6a1f1dSLionel Sambuc stosl 899*0a6a1f1dSLionel Sambuc stosl %eax, %es:(%di) 900*0a6a1f1dSLionel Sambuc stos %eax, %es:(%di) 901*0a6a1f1dSLionel Sambuc 902*0a6a1f1dSLionel Sambuc// CHECK: strw 903*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x0f,0x00,0xc8] 904*0a6a1f1dSLionel Sambuc str %ax 905*0a6a1f1dSLionel Sambuc 906*0a6a1f1dSLionel Sambuc// CHECK: strl 907*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x0f,0x00,0xc8] 908*0a6a1f1dSLionel Sambuc str %eax 909*0a6a1f1dSLionel Sambuc 910*0a6a1f1dSLionel Sambuc 911*0a6a1f1dSLionel Sambuc// CHECK: fsubp 912*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xde,0xe1] 913*0a6a1f1dSLionel Sambucfsubp %st,%st(1) 914*0a6a1f1dSLionel Sambuc 915*0a6a1f1dSLionel Sambuc// CHECK: fsubp %st(2) 916*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xde,0xe2] 917*0a6a1f1dSLionel Sambucfsubp %st, %st(2) 918*0a6a1f1dSLionel Sambuc 919*0a6a1f1dSLionel Sambuc// CHECK: xchgl %eax, %eax 920*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x90] 921*0a6a1f1dSLionel Sambucxchgl %eax, %eax 922*0a6a1f1dSLionel Sambuc 923*0a6a1f1dSLionel Sambuc// CHECK: xchgw %ax, %ax 924*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x90] 925*0a6a1f1dSLionel Sambucxchgw %ax, %ax 926*0a6a1f1dSLionel Sambuc 927*0a6a1f1dSLionel Sambuc// CHECK: xchgl %ecx, %eax 928*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x91] 929*0a6a1f1dSLionel Sambucxchgl %ecx, %eax 930*0a6a1f1dSLionel Sambuc 931*0a6a1f1dSLionel Sambuc// CHECK: xchgl %ecx, %eax 932*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0x91] 933*0a6a1f1dSLionel Sambucxchgl %eax, %ecx 934*0a6a1f1dSLionel Sambuc 935*0a6a1f1dSLionel Sambuc// CHECK: retw 936*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xc3] 937*0a6a1f1dSLionel Sambucretw 938*0a6a1f1dSLionel Sambuc 939*0a6a1f1dSLionel Sambuc// CHECK: retl 940*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xc3] 941*0a6a1f1dSLionel Sambucretl 942*0a6a1f1dSLionel Sambuc 943*0a6a1f1dSLionel Sambuc// CHECK: lretw 944*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0xcb] 945*0a6a1f1dSLionel Sambuclretw 946*0a6a1f1dSLionel Sambuc 947*0a6a1f1dSLionel Sambuc// CHECK: lretl 948*0a6a1f1dSLionel Sambuc// CHECK: encoding: [0x66,0xcb] 949*0a6a1f1dSLionel Sambuclretl 950