1*1424dfb3Schristos# Check instructions with encoding options 2*1424dfb3Schristos 3*1424dfb3Schristos .allow_index_reg 4*1424dfb3Schristos .text 5*1424dfb3Schristos_start: 6*1424dfb3Schristos 7*1424dfb3Schristos# Tests for op reg, reg 8*1424dfb3Schristos add %dl,%cl 9*1424dfb3Schristos add.s %dl,%cl 10*1424dfb3Schristos add %dx,%cx 11*1424dfb3Schristos add.s %dx,%cx 12*1424dfb3Schristos add %edx,%ecx 13*1424dfb3Schristos add.s %edx,%ecx 14*1424dfb3Schristos addb %dl,%cl 15*1424dfb3Schristos addb.s %dl,%cl 16*1424dfb3Schristos addw %dx,%cx 17*1424dfb3Schristos addw.s %dx,%cx 18*1424dfb3Schristos addl %edx,%ecx 19*1424dfb3Schristos addl.s %edx,%ecx 20*1424dfb3Schristos adc %dl,%cl 21*1424dfb3Schristos adc.s %dl,%cl 22*1424dfb3Schristos adc %dx,%cx 23*1424dfb3Schristos adc.s %dx,%cx 24*1424dfb3Schristos adc %edx,%ecx 25*1424dfb3Schristos adc.s %edx,%ecx 26*1424dfb3Schristos adcb %dl,%cl 27*1424dfb3Schristos adcb.s %dl,%cl 28*1424dfb3Schristos adcw %dx,%cx 29*1424dfb3Schristos adcw.s %dx,%cx 30*1424dfb3Schristos adcl %edx,%ecx 31*1424dfb3Schristos adcl.s %edx,%ecx 32*1424dfb3Schristos and %dl,%cl 33*1424dfb3Schristos and.s %dl,%cl 34*1424dfb3Schristos and %dx,%cx 35*1424dfb3Schristos and.s %dx,%cx 36*1424dfb3Schristos and %edx,%ecx 37*1424dfb3Schristos and.s %edx,%ecx 38*1424dfb3Schristos andb %dl,%cl 39*1424dfb3Schristos andb.s %dl,%cl 40*1424dfb3Schristos andw %dx,%cx 41*1424dfb3Schristos andw.s %dx,%cx 42*1424dfb3Schristos andl %edx,%ecx 43*1424dfb3Schristos andl.s %edx,%ecx 44*1424dfb3Schristos cmp %dl,%cl 45*1424dfb3Schristos cmp.s %dl,%cl 46*1424dfb3Schristos cmp %dx,%cx 47*1424dfb3Schristos cmp.s %dx,%cx 48*1424dfb3Schristos cmp %edx,%ecx 49*1424dfb3Schristos cmp.s %edx,%ecx 50*1424dfb3Schristos cmpb %dl,%cl 51*1424dfb3Schristos cmpb.s %dl,%cl 52*1424dfb3Schristos cmpw %dx,%cx 53*1424dfb3Schristos cmpw.s %dx,%cx 54*1424dfb3Schristos cmpl %edx,%ecx 55*1424dfb3Schristos cmpl.s %edx,%ecx 56*1424dfb3Schristos mov %dl,%cl 57*1424dfb3Schristos mov.s %dl,%cl 58*1424dfb3Schristos mov %dx,%cx 59*1424dfb3Schristos mov.s %dx,%cx 60*1424dfb3Schristos mov %edx,%ecx 61*1424dfb3Schristos mov.s %edx,%ecx 62*1424dfb3Schristos movb %dl,%cl 63*1424dfb3Schristos movb.s %dl,%cl 64*1424dfb3Schristos movw %dx,%cx 65*1424dfb3Schristos movw.s %dx,%cx 66*1424dfb3Schristos movl %edx,%ecx 67*1424dfb3Schristos movl.s %edx,%ecx 68*1424dfb3Schristos or %dl,%cl 69*1424dfb3Schristos or.s %dl,%cl 70*1424dfb3Schristos or %dx,%cx 71*1424dfb3Schristos or.s %dx,%cx 72*1424dfb3Schristos or %edx,%ecx 73*1424dfb3Schristos or.s %edx,%ecx 74*1424dfb3Schristos orb %dl,%cl 75*1424dfb3Schristos orb.s %dl,%cl 76*1424dfb3Schristos orw %dx,%cx 77*1424dfb3Schristos orw.s %dx,%cx 78*1424dfb3Schristos orl %edx,%ecx 79*1424dfb3Schristos orl.s %edx,%ecx 80*1424dfb3Schristos sbb %dl,%cl 81*1424dfb3Schristos sbb.s %dl,%cl 82*1424dfb3Schristos sbb %dx,%cx 83*1424dfb3Schristos sbb.s %dx,%cx 84*1424dfb3Schristos sbb %edx,%ecx 85*1424dfb3Schristos sbb.s %edx,%ecx 86*1424dfb3Schristos sbbb %dl,%cl 87*1424dfb3Schristos sbbb.s %dl,%cl 88*1424dfb3Schristos sbbw %dx,%cx 89*1424dfb3Schristos sbbw.s %dx,%cx 90*1424dfb3Schristos sbbl %edx,%ecx 91*1424dfb3Schristos sbbl.s %edx,%ecx 92*1424dfb3Schristos sub %dl,%cl 93*1424dfb3Schristos sub.s %dl,%cl 94*1424dfb3Schristos sub %dx,%cx 95*1424dfb3Schristos sub.s %dx,%cx 96*1424dfb3Schristos sub %edx,%ecx 97*1424dfb3Schristos sub.s %edx,%ecx 98*1424dfb3Schristos subb %dl,%cl 99*1424dfb3Schristos subb.s %dl,%cl 100*1424dfb3Schristos subw %dx,%cx 101*1424dfb3Schristos subw.s %dx,%cx 102*1424dfb3Schristos subl %edx,%ecx 103*1424dfb3Schristos subl.s %edx,%ecx 104*1424dfb3Schristos xor %dl,%cl 105*1424dfb3Schristos xor.s %dl,%cl 106*1424dfb3Schristos xor %dx,%cx 107*1424dfb3Schristos xor.s %dx,%cx 108*1424dfb3Schristos xor %edx,%ecx 109*1424dfb3Schristos xor.s %edx,%ecx 110*1424dfb3Schristos xorb %dl,%cl 111*1424dfb3Schristos xorb.s %dl,%cl 112*1424dfb3Schristos xorw %dx,%cx 113*1424dfb3Schristos xorw.s %dx,%cx 114*1424dfb3Schristos xorl %edx,%ecx 115*1424dfb3Schristos xorl.s %edx,%ecx 116*1424dfb3Schristos 117*1424dfb3Schristos# Tests for op ymm, ymm 118*1424dfb3Schristos vmovapd %ymm4,%ymm6 119*1424dfb3Schristos vmovapd.s %ymm4,%ymm6 120*1424dfb3Schristos vmovaps %ymm4,%ymm6 121*1424dfb3Schristos vmovaps.s %ymm4,%ymm6 122*1424dfb3Schristos vmovdqa %ymm4,%ymm6 123*1424dfb3Schristos vmovdqa.s %ymm4,%ymm6 124*1424dfb3Schristos vmovdqu %ymm4,%ymm6 125*1424dfb3Schristos vmovdqu.s %ymm4,%ymm6 126*1424dfb3Schristos vmovupd %ymm4,%ymm6 127*1424dfb3Schristos vmovupd.s %ymm4,%ymm6 128*1424dfb3Schristos vmovups %ymm4,%ymm6 129*1424dfb3Schristos vmovups.s %ymm4,%ymm6 130*1424dfb3Schristos 131*1424dfb3Schristos# Tests for op xmm, xmm 132*1424dfb3Schristos movapd %xmm4,%xmm6 133*1424dfb3Schristos movapd.s %xmm4,%xmm6 134*1424dfb3Schristos movaps %xmm4,%xmm6 135*1424dfb3Schristos movaps.s %xmm4,%xmm6 136*1424dfb3Schristos movdqa %xmm4,%xmm6 137*1424dfb3Schristos movdqa.s %xmm4,%xmm6 138*1424dfb3Schristos movdqu %xmm4,%xmm6 139*1424dfb3Schristos movdqu.s %xmm4,%xmm6 140*1424dfb3Schristos movq %xmm4,%xmm6 141*1424dfb3Schristos movq.s %xmm4,%xmm6 142*1424dfb3Schristos movsd %xmm4,%xmm6 143*1424dfb3Schristos movsd.s %xmm4,%xmm6 144*1424dfb3Schristos movss %xmm4,%xmm6 145*1424dfb3Schristos movss.s %xmm4,%xmm6 146*1424dfb3Schristos movupd %xmm4,%xmm6 147*1424dfb3Schristos movupd.s %xmm4,%xmm6 148*1424dfb3Schristos movups %xmm4,%xmm6 149*1424dfb3Schristos movups.s %xmm4,%xmm6 150*1424dfb3Schristos vmovapd %xmm4,%xmm6 151*1424dfb3Schristos vmovapd.s %xmm4,%xmm6 152*1424dfb3Schristos vmovaps %xmm4,%xmm6 153*1424dfb3Schristos vmovaps.s %xmm4,%xmm6 154*1424dfb3Schristos vmovdqa %xmm4,%xmm6 155*1424dfb3Schristos vmovdqa.s %xmm4,%xmm6 156*1424dfb3Schristos vmovdqu %xmm4,%xmm6 157*1424dfb3Schristos vmovdqu.s %xmm4,%xmm6 158*1424dfb3Schristos vmovq %xmm4,%xmm6 159*1424dfb3Schristos vmovq.s %xmm4,%xmm6 160*1424dfb3Schristos vmovupd %xmm4,%xmm6 161*1424dfb3Schristos vmovupd.s %xmm4,%xmm6 162*1424dfb3Schristos vmovups %xmm4,%xmm6 163*1424dfb3Schristos vmovups.s %xmm4,%xmm6 164*1424dfb3Schristos 165*1424dfb3Schristos# Tests for op xmm, xmm, xmm 166*1424dfb3Schristos vmovsd %xmm4,%xmm6,%xmm2 167*1424dfb3Schristos vmovsd.s %xmm4,%xmm6,%xmm2 168*1424dfb3Schristos vmovss %xmm4,%xmm6,%xmm2 169*1424dfb3Schristos vmovss.s %xmm4,%xmm6,%xmm2 170*1424dfb3Schristos 171*1424dfb3Schristos# Tests for op mm, mm 172*1424dfb3Schristos movq %mm0,%mm4 173*1424dfb3Schristos movq.s %mm0,%mm4 174*1424dfb3Schristos 175*1424dfb3Schristos# Tests for op bnd, bnd 176*1424dfb3Schristos bndmov %bnd1,%bnd2 177*1424dfb3Schristos bndmov.s %bnd1,%bnd2 178*1424dfb3Schristos 179*1424dfb3Schristos .intel_syntax noprefix 180*1424dfb3Schristos 181*1424dfb3Schristos# Tests for op reg, reg 182*1424dfb3Schristos add cl,dl 183*1424dfb3Schristos add.s cl,dl 184*1424dfb3Schristos add cx,dx 185*1424dfb3Schristos add.s cx,dx 186*1424dfb3Schristos add ecx,edx 187*1424dfb3Schristos add.s ecx,edx 188*1424dfb3Schristos adc cl,dl 189*1424dfb3Schristos adc.s cl,dl 190*1424dfb3Schristos adc cx,dx 191*1424dfb3Schristos adc.s cx,dx 192*1424dfb3Schristos adc ecx,edx 193*1424dfb3Schristos adc.s ecx,edx 194*1424dfb3Schristos and cl,dl 195*1424dfb3Schristos and.s cl,dl 196*1424dfb3Schristos and cx,dx 197*1424dfb3Schristos and.s cx,dx 198*1424dfb3Schristos and ecx,edx 199*1424dfb3Schristos and.s ecx,edx 200*1424dfb3Schristos cmp cl,dl 201*1424dfb3Schristos cmp.s cl,dl 202*1424dfb3Schristos cmp cx,dx 203*1424dfb3Schristos cmp.s cx,dx 204*1424dfb3Schristos cmp ecx,edx 205*1424dfb3Schristos cmp.s ecx,edx 206*1424dfb3Schristos mov cl,dl 207*1424dfb3Schristos mov.s cl,dl 208*1424dfb3Schristos mov cx,dx 209*1424dfb3Schristos mov.s cx,dx 210*1424dfb3Schristos mov ecx,edx 211*1424dfb3Schristos mov.s ecx,edx 212*1424dfb3Schristos or cl,dl 213*1424dfb3Schristos or.s cl,dl 214*1424dfb3Schristos or cx,dx 215*1424dfb3Schristos or.s cx,dx 216*1424dfb3Schristos or ecx,edx 217*1424dfb3Schristos or.s ecx,edx 218*1424dfb3Schristos sbb cl,dl 219*1424dfb3Schristos sbb.s cl,dl 220*1424dfb3Schristos sbb cx,dx 221*1424dfb3Schristos sbb.s cx,dx 222*1424dfb3Schristos sbb ecx,edx 223*1424dfb3Schristos sbb.s ecx,edx 224*1424dfb3Schristos sub cl,dl 225*1424dfb3Schristos sub.s cl,dl 226*1424dfb3Schristos sub cx,dx 227*1424dfb3Schristos sub.s cx,dx 228*1424dfb3Schristos sub ecx,edx 229*1424dfb3Schristos sub.s ecx,edx 230*1424dfb3Schristos xor cl,dl 231*1424dfb3Schristos xor.s cl,dl 232*1424dfb3Schristos xor cx,dx 233*1424dfb3Schristos xor.s cx,dx 234*1424dfb3Schristos xor ecx,edx 235*1424dfb3Schristos xor.s ecx,edx 236*1424dfb3Schristos 237*1424dfb3Schristos# Tests for op ymm, ymm 238*1424dfb3Schristos vmovapd ymm6,ymm4 239*1424dfb3Schristos vmovapd.s ymm6,ymm4 240*1424dfb3Schristos vmovaps ymm6,ymm4 241*1424dfb3Schristos vmovaps.s ymm6,ymm4 242*1424dfb3Schristos vmovdqa ymm6,ymm4 243*1424dfb3Schristos vmovdqa.s ymm6,ymm4 244*1424dfb3Schristos vmovdqu ymm6,ymm4 245*1424dfb3Schristos vmovdqu.s ymm6,ymm4 246*1424dfb3Schristos vmovupd ymm6,ymm4 247*1424dfb3Schristos vmovupd.s ymm6,ymm4 248*1424dfb3Schristos vmovups ymm6,ymm4 249*1424dfb3Schristos vmovups.s ymm6,ymm4 250*1424dfb3Schristos 251*1424dfb3Schristos# Tests for op xmm, xmm 252*1424dfb3Schristos movapd xmm6,xmm4 253*1424dfb3Schristos movapd.s xmm6,xmm4 254*1424dfb3Schristos movaps xmm6,xmm4 255*1424dfb3Schristos movaps.s xmm6,xmm4 256*1424dfb3Schristos movdqa xmm6,xmm4 257*1424dfb3Schristos movdqa.s xmm6,xmm4 258*1424dfb3Schristos movdqu xmm6,xmm4 259*1424dfb3Schristos movdqu.s xmm6,xmm4 260*1424dfb3Schristos movq xmm6,xmm4 261*1424dfb3Schristos movq.s xmm6,xmm4 262*1424dfb3Schristos movsd xmm6,xmm4 263*1424dfb3Schristos movsd.s xmm6,xmm4 264*1424dfb3Schristos movss xmm6,xmm4 265*1424dfb3Schristos movss.s xmm6,xmm4 266*1424dfb3Schristos movupd xmm6,xmm4 267*1424dfb3Schristos movupd.s xmm6,xmm4 268*1424dfb3Schristos movups xmm6,xmm4 269*1424dfb3Schristos movups.s xmm6,xmm4 270*1424dfb3Schristos vmovapd xmm6,xmm4 271*1424dfb3Schristos vmovapd.s xmm6,xmm4 272*1424dfb3Schristos vmovaps xmm6,xmm4 273*1424dfb3Schristos vmovaps.s xmm6,xmm4 274*1424dfb3Schristos vmovdqa xmm6,xmm4 275*1424dfb3Schristos vmovdqa.s xmm6,xmm4 276*1424dfb3Schristos vmovdqu xmm6,xmm4 277*1424dfb3Schristos vmovdqu.s xmm6,xmm4 278*1424dfb3Schristos vmovq xmm6,xmm4 279*1424dfb3Schristos vmovq.s xmm6,xmm4 280*1424dfb3Schristos vmovupd xmm6,xmm4 281*1424dfb3Schristos vmovupd.s xmm6,xmm4 282*1424dfb3Schristos vmovups xmm6,xmm4 283*1424dfb3Schristos vmovups.s xmm6,xmm4 284*1424dfb3Schristos 285*1424dfb3Schristos# Tests for op xmm, xmm, xmm 286*1424dfb3Schristos vmovsd xmm2,xmm6,xmm4 287*1424dfb3Schristos vmovsd.s xmm2,xmm6,xmm4 288*1424dfb3Schristos vmovss xmm2,xmm6,xmm4 289*1424dfb3Schristos vmovss.s xmm2,xmm6,xmm4 290*1424dfb3Schristos 291*1424dfb3Schristos# Tests for op mm, mm 292*1424dfb3Schristos movq mm4,mm0 293*1424dfb3Schristos movq.s mm4,mm0 294*1424dfb3Schristos 295*1424dfb3Schristos# Tests for op bnd, bnd 296*1424dfb3Schristos bndmov bnd1,bnd2 297*1424dfb3Schristos bndmov.s bnd1,bnd2 298