873 lines · plain
1# RUN: llvm-mc -triple x86_64 -show-encoding -x86-asm-syntax=intel -output-asm-variant=1 %s | FileCheck %s2 3# CHECK: ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], 1234# CHECK: encoding: [0x62,0xd4,0x44,0x02,0xf6,0x44,0x80,0x7b,0x7b]5 ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], 1236# CHECK: ctestb {dfv=of} word ptr [r8 + 4*rax + 123], 12347# CHECK: encoding: [0x62,0xd4,0x45,0x02,0xf7,0x44,0x80,0x7b,0xd2,0x04]8 ctestb {dfv=of} word ptr [r8 + 4*rax + 123], 12349# CHECK: ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], 12345610# CHECK: encoding: [0x62,0xd4,0xc4,0x02,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]11 ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], 12345612# CHECK: ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], 12345613# CHECK: encoding: [0x62,0xd4,0x44,0x02,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]14 ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], 12345615# CHECK: ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], bl16# CHECK: encoding: [0x62,0xd4,0x44,0x02,0x84,0x5c,0x80,0x7b]17 ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], bl18# CHECK: ctestb {dfv=of} word ptr [r8 + 4*rax + 123], dx19# CHECK: encoding: [0x62,0xd4,0x45,0x02,0x85,0x54,0x80,0x7b]20 ctestb {dfv=of} word ptr [r8 + 4*rax + 123], dx21# CHECK: ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], ecx22# CHECK: encoding: [0x62,0xd4,0x44,0x02,0x85,0x4c,0x80,0x7b]23 ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], ecx24# CHECK: ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], r925# CHECK: encoding: [0x62,0x54,0xc4,0x02,0x85,0x4c,0x80,0x7b]26 ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], r927# CHECK: ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], bl28# CHECK: encoding: [0x62,0xd4,0x44,0x02,0x84,0x5c,0x80,0x7b]29 ctestb {dfv=of} bl, byte ptr [r8 + 4*rax + 123]30# CHECK: ctestb {dfv=of} word ptr [r8 + 4*rax + 123], dx31# CHECK: encoding: [0x62,0xd4,0x45,0x02,0x85,0x54,0x80,0x7b]32 ctestb {dfv=of} dx, word ptr [r8 + 4*rax + 123]33# CHECK: ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], ecx34# CHECK: encoding: [0x62,0xd4,0x44,0x02,0x85,0x4c,0x80,0x7b]35 ctestb {dfv=of} ecx, dword ptr [r8 + 4*rax + 123]36# CHECK: ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], r937# CHECK: encoding: [0x62,0x54,0xc4,0x02,0x85,0x4c,0x80,0x7b]38 ctestb {dfv=of} r9, qword ptr [r8 + 4*rax + 123]39# CHECK: ctestb {dfv=of} bl, 12340# CHECK: encoding: [0x62,0xf4,0x44,0x02,0xf6,0xc3,0x7b]41 ctestb {dfv=of} bl, 12342# CHECK: ctestb {dfv=of} dx, 123443# CHECK: encoding: [0x62,0xf4,0x45,0x02,0xf7,0xc2,0xd2,0x04]44 ctestb {dfv=of} dx, 123445# CHECK: ctestb {dfv=of} ecx, 12345646# CHECK: encoding: [0x62,0xf4,0x44,0x02,0xf7,0xc1,0x40,0xe2,0x01,0x00]47 ctestb {dfv=of} ecx, 12345648# CHECK: ctestb {dfv=of} r9, 12345649# CHECK: encoding: [0x62,0xd4,0xc4,0x02,0xf7,0xc1,0x40,0xe2,0x01,0x00]50 ctestb {dfv=of} r9, 12345651# CHECK: ctestb {dfv=of} dl, bl52# CHECK: encoding: [0x62,0xf4,0x44,0x02,0x84,0xda]53 ctestb {dfv=of} dl, bl54# CHECK: ctestb {dfv=of} ax, dx55# CHECK: encoding: [0x62,0xf4,0x45,0x02,0x85,0xd0]56 ctestb {dfv=of} ax, dx57# CHECK: ctestb {dfv=of} edx, ecx58# CHECK: encoding: [0x62,0xf4,0x44,0x02,0x85,0xca]59 ctestb {dfv=of} edx, ecx60# CHECK: ctestb {dfv=of} r15, r961# CHECK: encoding: [0x62,0x54,0xc4,0x02,0x85,0xcf]62 ctestb {dfv=of} r15, r963# CHECK: ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], 12364# CHECK: encoding: [0x62,0xd4,0x44,0x06,0xf6,0x44,0x80,0x7b,0x7b]65 ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], 12366# CHECK: ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], 123467# CHECK: encoding: [0x62,0xd4,0x45,0x06,0xf7,0x44,0x80,0x7b,0xd2,0x04]68 ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], 123469# CHECK: ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], 12345670# CHECK: encoding: [0x62,0xd4,0xc4,0x06,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]71 ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], 12345672# CHECK: ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], 12345673# CHECK: encoding: [0x62,0xd4,0x44,0x06,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]74 ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], 12345675# CHECK: ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], bl76# CHECK: encoding: [0x62,0xd4,0x44,0x06,0x84,0x5c,0x80,0x7b]77 ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], bl78# CHECK: ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], dx79# CHECK: encoding: [0x62,0xd4,0x45,0x06,0x85,0x54,0x80,0x7b]80 ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], dx81# CHECK: ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], ecx82# CHECK: encoding: [0x62,0xd4,0x44,0x06,0x85,0x4c,0x80,0x7b]83 ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], ecx84# CHECK: ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], r985# CHECK: encoding: [0x62,0x54,0xc4,0x06,0x85,0x4c,0x80,0x7b]86 ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], r987# CHECK: ctestbe {dfv=of} bl, 12388# CHECK: encoding: [0x62,0xf4,0x44,0x06,0xf6,0xc3,0x7b]89 ctestbe {dfv=of} bl, 12390# CHECK: ctestbe {dfv=of} dx, 123491# CHECK: encoding: [0x62,0xf4,0x45,0x06,0xf7,0xc2,0xd2,0x04]92 ctestbe {dfv=of} dx, 123493# CHECK: ctestbe {dfv=of} ecx, 12345694# CHECK: encoding: [0x62,0xf4,0x44,0x06,0xf7,0xc1,0x40,0xe2,0x01,0x00]95 ctestbe {dfv=of} ecx, 12345696# CHECK: ctestbe {dfv=of} r9, 12345697# CHECK: encoding: [0x62,0xd4,0xc4,0x06,0xf7,0xc1,0x40,0xe2,0x01,0x00]98 ctestbe {dfv=of} r9, 12345699# CHECK: ctestbe {dfv=of} dl, bl100# CHECK: encoding: [0x62,0xf4,0x44,0x06,0x84,0xda]101 ctestbe {dfv=of} dl, bl102# CHECK: ctestbe {dfv=of} ax, dx103# CHECK: encoding: [0x62,0xf4,0x45,0x06,0x85,0xd0]104 ctestbe {dfv=of} ax, dx105# CHECK: ctestbe {dfv=of} edx, ecx106# CHECK: encoding: [0x62,0xf4,0x44,0x06,0x85,0xca]107 ctestbe {dfv=of} edx, ecx108# CHECK: ctestbe {dfv=of} r15, r9109# CHECK: encoding: [0x62,0x54,0xc4,0x06,0x85,0xcf]110 ctestbe {dfv=of} r15, r9111# CHECK: ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], 123112# CHECK: encoding: [0x62,0xd4,0x44,0x0b,0xf6,0x44,0x80,0x7b,0x7b]113 ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], 123114# CHECK: ctestf {dfv=of} word ptr [r8 + 4*rax + 123], 1234115# CHECK: encoding: [0x62,0xd4,0x45,0x0b,0xf7,0x44,0x80,0x7b,0xd2,0x04]116 ctestf {dfv=of} word ptr [r8 + 4*rax + 123], 1234117# CHECK: ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], 123456118# CHECK: encoding: [0x62,0xd4,0xc4,0x0b,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]119 ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], 123456120# CHECK: ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], 123456121# CHECK: encoding: [0x62,0xd4,0x44,0x0b,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]122 ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], 123456123# CHECK: ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], bl124# CHECK: encoding: [0x62,0xd4,0x44,0x0b,0x84,0x5c,0x80,0x7b]125 ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], bl126# CHECK: ctestf {dfv=of} word ptr [r8 + 4*rax + 123], dx127# CHECK: encoding: [0x62,0xd4,0x45,0x0b,0x85,0x54,0x80,0x7b]128 ctestf {dfv=of} word ptr [r8 + 4*rax + 123], dx129# CHECK: ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], ecx130# CHECK: encoding: [0x62,0xd4,0x44,0x0b,0x85,0x4c,0x80,0x7b]131 ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], ecx132# CHECK: ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], r9133# CHECK: encoding: [0x62,0x54,0xc4,0x0b,0x85,0x4c,0x80,0x7b]134 ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], r9135# CHECK: ctestf {dfv=of} bl, 123136# CHECK: encoding: [0x62,0xf4,0x44,0x0b,0xf6,0xc3,0x7b]137 ctestf {dfv=of} bl, 123138# CHECK: ctestf {dfv=of} dx, 1234139# CHECK: encoding: [0x62,0xf4,0x45,0x0b,0xf7,0xc2,0xd2,0x04]140 ctestf {dfv=of} dx, 1234141# CHECK: ctestf {dfv=of} ecx, 123456142# CHECK: encoding: [0x62,0xf4,0x44,0x0b,0xf7,0xc1,0x40,0xe2,0x01,0x00]143 ctestf {dfv=of} ecx, 123456144# CHECK: ctestf {dfv=of} r9, 123456145# CHECK: encoding: [0x62,0xd4,0xc4,0x0b,0xf7,0xc1,0x40,0xe2,0x01,0x00]146 ctestf {dfv=of} r9, 123456147# CHECK: ctestf {dfv=of} dl, bl148# CHECK: encoding: [0x62,0xf4,0x44,0x0b,0x84,0xda]149 ctestf {dfv=of} dl, bl150# CHECK: ctestf {dfv=of} ax, dx151# CHECK: encoding: [0x62,0xf4,0x45,0x0b,0x85,0xd0]152 ctestf {dfv=of} ax, dx153# CHECK: ctestf {dfv=of} edx, ecx154# CHECK: encoding: [0x62,0xf4,0x44,0x0b,0x85,0xca]155 ctestf {dfv=of} edx, ecx156# CHECK: ctestf {dfv=of} r15, r9157# CHECK: encoding: [0x62,0x54,0xc4,0x0b,0x85,0xcf]158 ctestf {dfv=of} r15, r9159# CHECK: ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], 123160# CHECK: encoding: [0x62,0xd4,0x44,0x0c,0xf6,0x44,0x80,0x7b,0x7b]161 ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], 123162# CHECK: ctestl {dfv=of} word ptr [r8 + 4*rax + 123], 1234163# CHECK: encoding: [0x62,0xd4,0x45,0x0c,0xf7,0x44,0x80,0x7b,0xd2,0x04]164 ctestl {dfv=of} word ptr [r8 + 4*rax + 123], 1234165# CHECK: ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], 123456166# CHECK: encoding: [0x62,0xd4,0xc4,0x0c,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]167 ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], 123456168# CHECK: ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], 123456169# CHECK: encoding: [0x62,0xd4,0x44,0x0c,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]170 ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], 123456171# CHECK: ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], bl172# CHECK: encoding: [0x62,0xd4,0x44,0x0c,0x84,0x5c,0x80,0x7b]173 ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], bl174# CHECK: ctestl {dfv=of} word ptr [r8 + 4*rax + 123], dx175# CHECK: encoding: [0x62,0xd4,0x45,0x0c,0x85,0x54,0x80,0x7b]176 ctestl {dfv=of} word ptr [r8 + 4*rax + 123], dx177# CHECK: ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], ecx178# CHECK: encoding: [0x62,0xd4,0x44,0x0c,0x85,0x4c,0x80,0x7b]179 ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], ecx180# CHECK: ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], r9181# CHECK: encoding: [0x62,0x54,0xc4,0x0c,0x85,0x4c,0x80,0x7b]182 ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], r9183# CHECK: ctestl {dfv=of} bl, 123184# CHECK: encoding: [0x62,0xf4,0x44,0x0c,0xf6,0xc3,0x7b]185 ctestl {dfv=of} bl, 123186# CHECK: ctestl {dfv=of} dx, 1234187# CHECK: encoding: [0x62,0xf4,0x45,0x0c,0xf7,0xc2,0xd2,0x04]188 ctestl {dfv=of} dx, 1234189# CHECK: ctestl {dfv=of} ecx, 123456190# CHECK: encoding: [0x62,0xf4,0x44,0x0c,0xf7,0xc1,0x40,0xe2,0x01,0x00]191 ctestl {dfv=of} ecx, 123456192# CHECK: ctestl {dfv=of} r9, 123456193# CHECK: encoding: [0x62,0xd4,0xc4,0x0c,0xf7,0xc1,0x40,0xe2,0x01,0x00]194 ctestl {dfv=of} r9, 123456195# CHECK: ctestl {dfv=of} dl, bl196# CHECK: encoding: [0x62,0xf4,0x44,0x0c,0x84,0xda]197 ctestl {dfv=of} dl, bl198# CHECK: ctestl {dfv=of} ax, dx199# CHECK: encoding: [0x62,0xf4,0x45,0x0c,0x85,0xd0]200 ctestl {dfv=of} ax, dx201# CHECK: ctestl {dfv=of} edx, ecx202# CHECK: encoding: [0x62,0xf4,0x44,0x0c,0x85,0xca]203 ctestl {dfv=of} edx, ecx204# CHECK: ctestl {dfv=of} r15, r9205# CHECK: encoding: [0x62,0x54,0xc4,0x0c,0x85,0xcf]206 ctestl {dfv=of} r15, r9207# CHECK: ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], 123208# CHECK: encoding: [0x62,0xd4,0x44,0x0e,0xf6,0x44,0x80,0x7b,0x7b]209 ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], 123210# CHECK: ctestle {dfv=of} word ptr [r8 + 4*rax + 123], 1234211# CHECK: encoding: [0x62,0xd4,0x45,0x0e,0xf7,0x44,0x80,0x7b,0xd2,0x04]212 ctestle {dfv=of} word ptr [r8 + 4*rax + 123], 1234213# CHECK: ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], 123456214# CHECK: encoding: [0x62,0xd4,0xc4,0x0e,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]215 ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], 123456216# CHECK: ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], 123456217# CHECK: encoding: [0x62,0xd4,0x44,0x0e,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]218 ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], 123456219# CHECK: ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], bl220# CHECK: encoding: [0x62,0xd4,0x44,0x0e,0x84,0x5c,0x80,0x7b]221 ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], bl222# CHECK: ctestle {dfv=of} word ptr [r8 + 4*rax + 123], dx223# CHECK: encoding: [0x62,0xd4,0x45,0x0e,0x85,0x54,0x80,0x7b]224 ctestle {dfv=of} word ptr [r8 + 4*rax + 123], dx225# CHECK: ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], ecx226# CHECK: encoding: [0x62,0xd4,0x44,0x0e,0x85,0x4c,0x80,0x7b]227 ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], ecx228# CHECK: ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], r9229# CHECK: encoding: [0x62,0x54,0xc4,0x0e,0x85,0x4c,0x80,0x7b]230 ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], r9231# CHECK: ctestle {dfv=of} bl, 123232# CHECK: encoding: [0x62,0xf4,0x44,0x0e,0xf6,0xc3,0x7b]233 ctestle {dfv=of} bl, 123234# CHECK: ctestle {dfv=of} dx, 1234235# CHECK: encoding: [0x62,0xf4,0x45,0x0e,0xf7,0xc2,0xd2,0x04]236 ctestle {dfv=of} dx, 1234237# CHECK: ctestle {dfv=of} ecx, 123456238# CHECK: encoding: [0x62,0xf4,0x44,0x0e,0xf7,0xc1,0x40,0xe2,0x01,0x00]239 ctestle {dfv=of} ecx, 123456240# CHECK: ctestle {dfv=of} r9, 123456241# CHECK: encoding: [0x62,0xd4,0xc4,0x0e,0xf7,0xc1,0x40,0xe2,0x01,0x00]242 ctestle {dfv=of} r9, 123456243# CHECK: ctestle {dfv=of} dl, bl244# CHECK: encoding: [0x62,0xf4,0x44,0x0e,0x84,0xda]245 ctestle {dfv=of} dl, bl246# CHECK: ctestle {dfv=of} ax, dx247# CHECK: encoding: [0x62,0xf4,0x45,0x0e,0x85,0xd0]248 ctestle {dfv=of} ax, dx249# CHECK: ctestle {dfv=of} edx, ecx250# CHECK: encoding: [0x62,0xf4,0x44,0x0e,0x85,0xca]251 ctestle {dfv=of} edx, ecx252# CHECK: ctestle {dfv=of} r15, r9253# CHECK: encoding: [0x62,0x54,0xc4,0x0e,0x85,0xcf]254 ctestle {dfv=of} r15, r9255# CHECK: ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], 123256# CHECK: encoding: [0x62,0xd4,0x44,0x03,0xf6,0x44,0x80,0x7b,0x7b]257 ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], 123258# CHECK: ctestae {dfv=of} word ptr [r8 + 4*rax + 123], 1234259# CHECK: encoding: [0x62,0xd4,0x45,0x03,0xf7,0x44,0x80,0x7b,0xd2,0x04]260 ctestae {dfv=of} word ptr [r8 + 4*rax + 123], 1234261# CHECK: ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], 123456262# CHECK: encoding: [0x62,0xd4,0xc4,0x03,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]263 ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], 123456264# CHECK: ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], 123456265# CHECK: encoding: [0x62,0xd4,0x44,0x03,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]266 ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], 123456267# CHECK: ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], bl268# CHECK: encoding: [0x62,0xd4,0x44,0x03,0x84,0x5c,0x80,0x7b]269 ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], bl270# CHECK: ctestae {dfv=of} word ptr [r8 + 4*rax + 123], dx271# CHECK: encoding: [0x62,0xd4,0x45,0x03,0x85,0x54,0x80,0x7b]272 ctestae {dfv=of} word ptr [r8 + 4*rax + 123], dx273# CHECK: ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], ecx274# CHECK: encoding: [0x62,0xd4,0x44,0x03,0x85,0x4c,0x80,0x7b]275 ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], ecx276# CHECK: ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], r9277# CHECK: encoding: [0x62,0x54,0xc4,0x03,0x85,0x4c,0x80,0x7b]278 ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], r9279# CHECK: ctestae {dfv=of} bl, 123280# CHECK: encoding: [0x62,0xf4,0x44,0x03,0xf6,0xc3,0x7b]281 ctestae {dfv=of} bl, 123282# CHECK: ctestae {dfv=of} dx, 1234283# CHECK: encoding: [0x62,0xf4,0x45,0x03,0xf7,0xc2,0xd2,0x04]284 ctestae {dfv=of} dx, 1234285# CHECK: ctestae {dfv=of} ecx, 123456286# CHECK: encoding: [0x62,0xf4,0x44,0x03,0xf7,0xc1,0x40,0xe2,0x01,0x00]287 ctestae {dfv=of} ecx, 123456288# CHECK: ctestae {dfv=of} r9, 123456289# CHECK: encoding: [0x62,0xd4,0xc4,0x03,0xf7,0xc1,0x40,0xe2,0x01,0x00]290 ctestae {dfv=of} r9, 123456291# CHECK: ctestae {dfv=of} dl, bl292# CHECK: encoding: [0x62,0xf4,0x44,0x03,0x84,0xda]293 ctestae {dfv=of} dl, bl294# CHECK: ctestae {dfv=of} ax, dx295# CHECK: encoding: [0x62,0xf4,0x45,0x03,0x85,0xd0]296 ctestae {dfv=of} ax, dx297# CHECK: ctestae {dfv=of} edx, ecx298# CHECK: encoding: [0x62,0xf4,0x44,0x03,0x85,0xca]299 ctestae {dfv=of} edx, ecx300# CHECK: ctestae {dfv=of} r15, r9301# CHECK: encoding: [0x62,0x54,0xc4,0x03,0x85,0xcf]302 ctestae {dfv=of} r15, r9303# CHECK: ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], 123304# CHECK: encoding: [0x62,0xd4,0x44,0x07,0xf6,0x44,0x80,0x7b,0x7b]305 ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], 123306# CHECK: ctesta {dfv=of} word ptr [r8 + 4*rax + 123], 1234307# CHECK: encoding: [0x62,0xd4,0x45,0x07,0xf7,0x44,0x80,0x7b,0xd2,0x04]308 ctesta {dfv=of} word ptr [r8 + 4*rax + 123], 1234309# CHECK: ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], 123456310# CHECK: encoding: [0x62,0xd4,0xc4,0x07,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]311 ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], 123456312# CHECK: ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], 123456313# CHECK: encoding: [0x62,0xd4,0x44,0x07,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]314 ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], 123456315# CHECK: ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], bl316# CHECK: encoding: [0x62,0xd4,0x44,0x07,0x84,0x5c,0x80,0x7b]317 ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], bl318# CHECK: ctesta {dfv=of} word ptr [r8 + 4*rax + 123], dx319# CHECK: encoding: [0x62,0xd4,0x45,0x07,0x85,0x54,0x80,0x7b]320 ctesta {dfv=of} word ptr [r8 + 4*rax + 123], dx321# CHECK: ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], ecx322# CHECK: encoding: [0x62,0xd4,0x44,0x07,0x85,0x4c,0x80,0x7b]323 ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], ecx324# CHECK: ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], r9325# CHECK: encoding: [0x62,0x54,0xc4,0x07,0x85,0x4c,0x80,0x7b]326 ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], r9327# CHECK: ctesta {dfv=of} bl, 123328# CHECK: encoding: [0x62,0xf4,0x44,0x07,0xf6,0xc3,0x7b]329 ctesta {dfv=of} bl, 123330# CHECK: ctesta {dfv=of} dx, 1234331# CHECK: encoding: [0x62,0xf4,0x45,0x07,0xf7,0xc2,0xd2,0x04]332 ctesta {dfv=of} dx, 1234333# CHECK: ctesta {dfv=of} ecx, 123456334# CHECK: encoding: [0x62,0xf4,0x44,0x07,0xf7,0xc1,0x40,0xe2,0x01,0x00]335 ctesta {dfv=of} ecx, 123456336# CHECK: ctesta {dfv=of} r9, 123456337# CHECK: encoding: [0x62,0xd4,0xc4,0x07,0xf7,0xc1,0x40,0xe2,0x01,0x00]338 ctesta {dfv=of} r9, 123456339# CHECK: ctesta {dfv=of} dl, bl340# CHECK: encoding: [0x62,0xf4,0x44,0x07,0x84,0xda]341 ctesta {dfv=of} dl, bl342# CHECK: ctesta {dfv=of} ax, dx343# CHECK: encoding: [0x62,0xf4,0x45,0x07,0x85,0xd0]344 ctesta {dfv=of} ax, dx345# CHECK: ctesta {dfv=of} edx, ecx346# CHECK: encoding: [0x62,0xf4,0x44,0x07,0x85,0xca]347 ctesta {dfv=of} edx, ecx348# CHECK: ctesta {dfv=of} r15, r9349# CHECK: encoding: [0x62,0x54,0xc4,0x07,0x85,0xcf]350 ctesta {dfv=of} r15, r9351# CHECK: ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], 123352# CHECK: encoding: [0x62,0xd4,0x44,0x0d,0xf6,0x44,0x80,0x7b,0x7b]353 ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], 123354# CHECK: ctestge {dfv=of} word ptr [r8 + 4*rax + 123], 1234355# CHECK: encoding: [0x62,0xd4,0x45,0x0d,0xf7,0x44,0x80,0x7b,0xd2,0x04]356 ctestge {dfv=of} word ptr [r8 + 4*rax + 123], 1234357# CHECK: ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], 123456358# CHECK: encoding: [0x62,0xd4,0xc4,0x0d,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]359 ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], 123456360# CHECK: ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], 123456361# CHECK: encoding: [0x62,0xd4,0x44,0x0d,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]362 ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], 123456363# CHECK: ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], bl364# CHECK: encoding: [0x62,0xd4,0x44,0x0d,0x84,0x5c,0x80,0x7b]365 ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], bl366# CHECK: ctestge {dfv=of} word ptr [r8 + 4*rax + 123], dx367# CHECK: encoding: [0x62,0xd4,0x45,0x0d,0x85,0x54,0x80,0x7b]368 ctestge {dfv=of} word ptr [r8 + 4*rax + 123], dx369# CHECK: ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], ecx370# CHECK: encoding: [0x62,0xd4,0x44,0x0d,0x85,0x4c,0x80,0x7b]371 ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], ecx372# CHECK: ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], r9373# CHECK: encoding: [0x62,0x54,0xc4,0x0d,0x85,0x4c,0x80,0x7b]374 ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], r9375# CHECK: ctestge {dfv=of} bl, 123376# CHECK: encoding: [0x62,0xf4,0x44,0x0d,0xf6,0xc3,0x7b]377 ctestge {dfv=of} bl, 123378# CHECK: ctestge {dfv=of} dx, 1234379# CHECK: encoding: [0x62,0xf4,0x45,0x0d,0xf7,0xc2,0xd2,0x04]380 ctestge {dfv=of} dx, 1234381# CHECK: ctestge {dfv=of} ecx, 123456382# CHECK: encoding: [0x62,0xf4,0x44,0x0d,0xf7,0xc1,0x40,0xe2,0x01,0x00]383 ctestge {dfv=of} ecx, 123456384# CHECK: ctestge {dfv=of} r9, 123456385# CHECK: encoding: [0x62,0xd4,0xc4,0x0d,0xf7,0xc1,0x40,0xe2,0x01,0x00]386 ctestge {dfv=of} r9, 123456387# CHECK: ctestge {dfv=of} dl, bl388# CHECK: encoding: [0x62,0xf4,0x44,0x0d,0x84,0xda]389 ctestge {dfv=of} dl, bl390# CHECK: ctestge {dfv=of} ax, dx391# CHECK: encoding: [0x62,0xf4,0x45,0x0d,0x85,0xd0]392 ctestge {dfv=of} ax, dx393# CHECK: ctestge {dfv=of} edx, ecx394# CHECK: encoding: [0x62,0xf4,0x44,0x0d,0x85,0xca]395 ctestge {dfv=of} edx, ecx396# CHECK: ctestge {dfv=of} r15, r9397# CHECK: encoding: [0x62,0x54,0xc4,0x0d,0x85,0xcf]398 ctestge {dfv=of} r15, r9399# CHECK: ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], 123400# CHECK: encoding: [0x62,0xd4,0x44,0x0f,0xf6,0x44,0x80,0x7b,0x7b]401 ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], 123402# CHECK: ctestg {dfv=of} word ptr [r8 + 4*rax + 123], 1234403# CHECK: encoding: [0x62,0xd4,0x45,0x0f,0xf7,0x44,0x80,0x7b,0xd2,0x04]404 ctestg {dfv=of} word ptr [r8 + 4*rax + 123], 1234405# CHECK: ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], 123456406# CHECK: encoding: [0x62,0xd4,0xc4,0x0f,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]407 ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], 123456408# CHECK: ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], 123456409# CHECK: encoding: [0x62,0xd4,0x44,0x0f,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]410 ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], 123456411# CHECK: ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], bl412# CHECK: encoding: [0x62,0xd4,0x44,0x0f,0x84,0x5c,0x80,0x7b]413 ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], bl414# CHECK: ctestg {dfv=of} word ptr [r8 + 4*rax + 123], dx415# CHECK: encoding: [0x62,0xd4,0x45,0x0f,0x85,0x54,0x80,0x7b]416 ctestg {dfv=of} word ptr [r8 + 4*rax + 123], dx417# CHECK: ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], ecx418# CHECK: encoding: [0x62,0xd4,0x44,0x0f,0x85,0x4c,0x80,0x7b]419 ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], ecx420# CHECK: ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], r9421# CHECK: encoding: [0x62,0x54,0xc4,0x0f,0x85,0x4c,0x80,0x7b]422 ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], r9423# CHECK: ctestg {dfv=of} bl, 123424# CHECK: encoding: [0x62,0xf4,0x44,0x0f,0xf6,0xc3,0x7b]425 ctestg {dfv=of} bl, 123426# CHECK: ctestg {dfv=of} dx, 1234427# CHECK: encoding: [0x62,0xf4,0x45,0x0f,0xf7,0xc2,0xd2,0x04]428 ctestg {dfv=of} dx, 1234429# CHECK: ctestg {dfv=of} ecx, 123456430# CHECK: encoding: [0x62,0xf4,0x44,0x0f,0xf7,0xc1,0x40,0xe2,0x01,0x00]431 ctestg {dfv=of} ecx, 123456432# CHECK: ctestg {dfv=of} r9, 123456433# CHECK: encoding: [0x62,0xd4,0xc4,0x0f,0xf7,0xc1,0x40,0xe2,0x01,0x00]434 ctestg {dfv=of} r9, 123456435# CHECK: ctestg {dfv=of} dl, bl436# CHECK: encoding: [0x62,0xf4,0x44,0x0f,0x84,0xda]437 ctestg {dfv=of} dl, bl438# CHECK: ctestg {dfv=of} ax, dx439# CHECK: encoding: [0x62,0xf4,0x45,0x0f,0x85,0xd0]440 ctestg {dfv=of} ax, dx441# CHECK: ctestg {dfv=of} edx, ecx442# CHECK: encoding: [0x62,0xf4,0x44,0x0f,0x85,0xca]443 ctestg {dfv=of} edx, ecx444# CHECK: ctestg {dfv=of} r15, r9445# CHECK: encoding: [0x62,0x54,0xc4,0x0f,0x85,0xcf]446 ctestg {dfv=of} r15, r9447# CHECK: ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], 123448# CHECK: encoding: [0x62,0xd4,0x44,0x01,0xf6,0x44,0x80,0x7b,0x7b]449 ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], 123450# CHECK: ctestno {dfv=of} word ptr [r8 + 4*rax + 123], 1234451# CHECK: encoding: [0x62,0xd4,0x45,0x01,0xf7,0x44,0x80,0x7b,0xd2,0x04]452 ctestno {dfv=of} word ptr [r8 + 4*rax + 123], 1234453# CHECK: ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], 123456454# CHECK: encoding: [0x62,0xd4,0xc4,0x01,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]455 ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], 123456456# CHECK: ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], 123456457# CHECK: encoding: [0x62,0xd4,0x44,0x01,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]458 ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], 123456459# CHECK: ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], bl460# CHECK: encoding: [0x62,0xd4,0x44,0x01,0x84,0x5c,0x80,0x7b]461 ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], bl462# CHECK: ctestno {dfv=of} word ptr [r8 + 4*rax + 123], dx463# CHECK: encoding: [0x62,0xd4,0x45,0x01,0x85,0x54,0x80,0x7b]464 ctestno {dfv=of} word ptr [r8 + 4*rax + 123], dx465# CHECK: ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], ecx466# CHECK: encoding: [0x62,0xd4,0x44,0x01,0x85,0x4c,0x80,0x7b]467 ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], ecx468# CHECK: ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], r9469# CHECK: encoding: [0x62,0x54,0xc4,0x01,0x85,0x4c,0x80,0x7b]470 ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], r9471# CHECK: ctestno {dfv=of} bl, 123472# CHECK: encoding: [0x62,0xf4,0x44,0x01,0xf6,0xc3,0x7b]473 ctestno {dfv=of} bl, 123474# CHECK: ctestno {dfv=of} dx, 1234475# CHECK: encoding: [0x62,0xf4,0x45,0x01,0xf7,0xc2,0xd2,0x04]476 ctestno {dfv=of} dx, 1234477# CHECK: ctestno {dfv=of} ecx, 123456478# CHECK: encoding: [0x62,0xf4,0x44,0x01,0xf7,0xc1,0x40,0xe2,0x01,0x00]479 ctestno {dfv=of} ecx, 123456480# CHECK: ctestno {dfv=of} r9, 123456481# CHECK: encoding: [0x62,0xd4,0xc4,0x01,0xf7,0xc1,0x40,0xe2,0x01,0x00]482 ctestno {dfv=of} r9, 123456483# CHECK: ctestno {dfv=of} dl, bl484# CHECK: encoding: [0x62,0xf4,0x44,0x01,0x84,0xda]485 ctestno {dfv=of} dl, bl486# CHECK: ctestno {dfv=of} ax, dx487# CHECK: encoding: [0x62,0xf4,0x45,0x01,0x85,0xd0]488 ctestno {dfv=of} ax, dx489# CHECK: ctestno {dfv=of} edx, ecx490# CHECK: encoding: [0x62,0xf4,0x44,0x01,0x85,0xca]491 ctestno {dfv=of} edx, ecx492# CHECK: ctestno {dfv=of} r15, r9493# CHECK: encoding: [0x62,0x54,0xc4,0x01,0x85,0xcf]494 ctestno {dfv=of} r15, r9495# CHECK: ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], 123496# CHECK: encoding: [0x62,0xd4,0x44,0x09,0xf6,0x44,0x80,0x7b,0x7b]497 ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], 123498# CHECK: ctestns {dfv=of} word ptr [r8 + 4*rax + 123], 1234499# CHECK: encoding: [0x62,0xd4,0x45,0x09,0xf7,0x44,0x80,0x7b,0xd2,0x04]500 ctestns {dfv=of} word ptr [r8 + 4*rax + 123], 1234501# CHECK: ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], 123456502# CHECK: encoding: [0x62,0xd4,0xc4,0x09,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]503 ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], 123456504# CHECK: ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], 123456505# CHECK: encoding: [0x62,0xd4,0x44,0x09,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]506 ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], 123456507# CHECK: ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], bl508# CHECK: encoding: [0x62,0xd4,0x44,0x09,0x84,0x5c,0x80,0x7b]509 ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], bl510# CHECK: ctestns {dfv=of} word ptr [r8 + 4*rax + 123], dx511# CHECK: encoding: [0x62,0xd4,0x45,0x09,0x85,0x54,0x80,0x7b]512 ctestns {dfv=of} word ptr [r8 + 4*rax + 123], dx513# CHECK: ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], ecx514# CHECK: encoding: [0x62,0xd4,0x44,0x09,0x85,0x4c,0x80,0x7b]515 ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], ecx516# CHECK: ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], r9517# CHECK: encoding: [0x62,0x54,0xc4,0x09,0x85,0x4c,0x80,0x7b]518 ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], r9519# CHECK: ctestns {dfv=of} bl, 123520# CHECK: encoding: [0x62,0xf4,0x44,0x09,0xf6,0xc3,0x7b]521 ctestns {dfv=of} bl, 123522# CHECK: ctestns {dfv=of} dx, 1234523# CHECK: encoding: [0x62,0xf4,0x45,0x09,0xf7,0xc2,0xd2,0x04]524 ctestns {dfv=of} dx, 1234525# CHECK: ctestns {dfv=of} ecx, 123456526# CHECK: encoding: [0x62,0xf4,0x44,0x09,0xf7,0xc1,0x40,0xe2,0x01,0x00]527 ctestns {dfv=of} ecx, 123456528# CHECK: ctestns {dfv=of} r9, 123456529# CHECK: encoding: [0x62,0xd4,0xc4,0x09,0xf7,0xc1,0x40,0xe2,0x01,0x00]530 ctestns {dfv=of} r9, 123456531# CHECK: ctestns {dfv=of} dl, bl532# CHECK: encoding: [0x62,0xf4,0x44,0x09,0x84,0xda]533 ctestns {dfv=of} dl, bl534# CHECK: ctestns {dfv=of} ax, dx535# CHECK: encoding: [0x62,0xf4,0x45,0x09,0x85,0xd0]536 ctestns {dfv=of} ax, dx537# CHECK: ctestns {dfv=of} edx, ecx538# CHECK: encoding: [0x62,0xf4,0x44,0x09,0x85,0xca]539 ctestns {dfv=of} edx, ecx540# CHECK: ctestns {dfv=of} r15, r9541# CHECK: encoding: [0x62,0x54,0xc4,0x09,0x85,0xcf]542 ctestns {dfv=of} r15, r9543# CHECK: ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], 123544# CHECK: encoding: [0x62,0xd4,0x44,0x05,0xf6,0x44,0x80,0x7b,0x7b]545 ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], 123546# CHECK: ctestne {dfv=of} word ptr [r8 + 4*rax + 123], 1234547# CHECK: encoding: [0x62,0xd4,0x45,0x05,0xf7,0x44,0x80,0x7b,0xd2,0x04]548 ctestne {dfv=of} word ptr [r8 + 4*rax + 123], 1234549# CHECK: ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], 123456550# CHECK: encoding: [0x62,0xd4,0xc4,0x05,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]551 ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], 123456552# CHECK: ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], 123456553# CHECK: encoding: [0x62,0xd4,0x44,0x05,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]554 ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], 123456555# CHECK: ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], bl556# CHECK: encoding: [0x62,0xd4,0x44,0x05,0x84,0x5c,0x80,0x7b]557 ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], bl558# CHECK: ctestne {dfv=of} word ptr [r8 + 4*rax + 123], dx559# CHECK: encoding: [0x62,0xd4,0x45,0x05,0x85,0x54,0x80,0x7b]560 ctestne {dfv=of} word ptr [r8 + 4*rax + 123], dx561# CHECK: ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], ecx562# CHECK: encoding: [0x62,0xd4,0x44,0x05,0x85,0x4c,0x80,0x7b]563 ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], ecx564# CHECK: ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], r9565# CHECK: encoding: [0x62,0x54,0xc4,0x05,0x85,0x4c,0x80,0x7b]566 ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], r9567# CHECK: ctestne {dfv=of} bl, 123568# CHECK: encoding: [0x62,0xf4,0x44,0x05,0xf6,0xc3,0x7b]569 ctestne {dfv=of} bl, 123570# CHECK: ctestne {dfv=of} dx, 1234571# CHECK: encoding: [0x62,0xf4,0x45,0x05,0xf7,0xc2,0xd2,0x04]572 ctestne {dfv=of} dx, 1234573# CHECK: ctestne {dfv=of} ecx, 123456574# CHECK: encoding: [0x62,0xf4,0x44,0x05,0xf7,0xc1,0x40,0xe2,0x01,0x00]575 ctestne {dfv=of} ecx, 123456576# CHECK: ctestne {dfv=of} r9, 123456577# CHECK: encoding: [0x62,0xd4,0xc4,0x05,0xf7,0xc1,0x40,0xe2,0x01,0x00]578 ctestne {dfv=of} r9, 123456579# CHECK: ctestne {dfv=of} dl, bl580# CHECK: encoding: [0x62,0xf4,0x44,0x05,0x84,0xda]581 ctestne {dfv=of} dl, bl582# CHECK: ctestne {dfv=of} ax, dx583# CHECK: encoding: [0x62,0xf4,0x45,0x05,0x85,0xd0]584 ctestne {dfv=of} ax, dx585# CHECK: ctestne {dfv=of} edx, ecx586# CHECK: encoding: [0x62,0xf4,0x44,0x05,0x85,0xca]587 ctestne {dfv=of} edx, ecx588# CHECK: ctestne {dfv=of} r15, r9589# CHECK: encoding: [0x62,0x54,0xc4,0x05,0x85,0xcf]590 ctestne {dfv=of} r15, r9591# CHECK: ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], 123592# CHECK: encoding: [0x62,0xd4,0x44,0x00,0xf6,0x44,0x80,0x7b,0x7b]593 ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], 123594# CHECK: ctesto {dfv=of} word ptr [r8 + 4*rax + 123], 1234595# CHECK: encoding: [0x62,0xd4,0x45,0x00,0xf7,0x44,0x80,0x7b,0xd2,0x04]596 ctesto {dfv=of} word ptr [r8 + 4*rax + 123], 1234597# CHECK: ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], 123456598# CHECK: encoding: [0x62,0xd4,0xc4,0x00,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]599 ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], 123456600# CHECK: ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], 123456601# CHECK: encoding: [0x62,0xd4,0x44,0x00,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]602 ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], 123456603# CHECK: ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], bl604# CHECK: encoding: [0x62,0xd4,0x44,0x00,0x84,0x5c,0x80,0x7b]605 ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], bl606# CHECK: ctesto {dfv=of} word ptr [r8 + 4*rax + 123], dx607# CHECK: encoding: [0x62,0xd4,0x45,0x00,0x85,0x54,0x80,0x7b]608 ctesto {dfv=of} word ptr [r8 + 4*rax + 123], dx609# CHECK: ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], ecx610# CHECK: encoding: [0x62,0xd4,0x44,0x00,0x85,0x4c,0x80,0x7b]611 ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], ecx612# CHECK: ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], r9613# CHECK: encoding: [0x62,0x54,0xc4,0x00,0x85,0x4c,0x80,0x7b]614 ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], r9615# CHECK: ctesto {dfv=of} bl, 123616# CHECK: encoding: [0x62,0xf4,0x44,0x00,0xf6,0xc3,0x7b]617 ctesto {dfv=of} bl, 123618# CHECK: ctesto {dfv=of} dx, 1234619# CHECK: encoding: [0x62,0xf4,0x45,0x00,0xf7,0xc2,0xd2,0x04]620 ctesto {dfv=of} dx, 1234621# CHECK: ctesto {dfv=of} ecx, 123456622# CHECK: encoding: [0x62,0xf4,0x44,0x00,0xf7,0xc1,0x40,0xe2,0x01,0x00]623 ctesto {dfv=of} ecx, 123456624# CHECK: ctesto {dfv=of} r9, 123456625# CHECK: encoding: [0x62,0xd4,0xc4,0x00,0xf7,0xc1,0x40,0xe2,0x01,0x00]626 ctesto {dfv=of} r9, 123456627# CHECK: ctesto {dfv=of} dl, bl628# CHECK: encoding: [0x62,0xf4,0x44,0x00,0x84,0xda]629 ctesto {dfv=of} dl, bl630# CHECK: ctesto {dfv=of} ax, dx631# CHECK: encoding: [0x62,0xf4,0x45,0x00,0x85,0xd0]632 ctesto {dfv=of} ax, dx633# CHECK: ctesto {dfv=of} edx, ecx634# CHECK: encoding: [0x62,0xf4,0x44,0x00,0x85,0xca]635 ctesto {dfv=of} edx, ecx636# CHECK: ctesto {dfv=of} r15, r9637# CHECK: encoding: [0x62,0x54,0xc4,0x00,0x85,0xcf]638 ctesto {dfv=of} r15, r9639# CHECK: ctests {dfv=of} byte ptr [r8 + 4*rax + 123], 123640# CHECK: encoding: [0x62,0xd4,0x44,0x08,0xf6,0x44,0x80,0x7b,0x7b]641 ctests {dfv=of} byte ptr [r8 + 4*rax + 123], 123642# CHECK: ctests {dfv=of} word ptr [r8 + 4*rax + 123], 1234643# CHECK: encoding: [0x62,0xd4,0x45,0x08,0xf7,0x44,0x80,0x7b,0xd2,0x04]644 ctests {dfv=of} word ptr [r8 + 4*rax + 123], 1234645# CHECK: ctests {dfv=of} qword ptr [r8 + 4*rax + 123], 123456646# CHECK: encoding: [0x62,0xd4,0xc4,0x08,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]647 ctests {dfv=of} qword ptr [r8 + 4*rax + 123], 123456648# CHECK: ctests {dfv=of} dword ptr [r8 + 4*rax + 123], 123456649# CHECK: encoding: [0x62,0xd4,0x44,0x08,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]650 ctests {dfv=of} dword ptr [r8 + 4*rax + 123], 123456651# CHECK: ctests {dfv=of} byte ptr [r8 + 4*rax + 123], bl652# CHECK: encoding: [0x62,0xd4,0x44,0x08,0x84,0x5c,0x80,0x7b]653 ctests {dfv=of} byte ptr [r8 + 4*rax + 123], bl654# CHECK: ctests {dfv=of} word ptr [r8 + 4*rax + 123], dx655# CHECK: encoding: [0x62,0xd4,0x45,0x08,0x85,0x54,0x80,0x7b]656 ctests {dfv=of} word ptr [r8 + 4*rax + 123], dx657# CHECK: ctests {dfv=of} dword ptr [r8 + 4*rax + 123], ecx658# CHECK: encoding: [0x62,0xd4,0x44,0x08,0x85,0x4c,0x80,0x7b]659 ctests {dfv=of} dword ptr [r8 + 4*rax + 123], ecx660# CHECK: ctests {dfv=of} qword ptr [r8 + 4*rax + 123], r9661# CHECK: encoding: [0x62,0x54,0xc4,0x08,0x85,0x4c,0x80,0x7b]662 ctests {dfv=of} qword ptr [r8 + 4*rax + 123], r9663# CHECK: ctests {dfv=of} bl, 123664# CHECK: encoding: [0x62,0xf4,0x44,0x08,0xf6,0xc3,0x7b]665 ctests {dfv=of} bl, 123666# CHECK: ctests {dfv=of} dx, 1234667# CHECK: encoding: [0x62,0xf4,0x45,0x08,0xf7,0xc2,0xd2,0x04]668 ctests {dfv=of} dx, 1234669# CHECK: ctests {dfv=of} ecx, 123456670# CHECK: encoding: [0x62,0xf4,0x44,0x08,0xf7,0xc1,0x40,0xe2,0x01,0x00]671 ctests {dfv=of} ecx, 123456672# CHECK: ctests {dfv=of} r9, 123456673# CHECK: encoding: [0x62,0xd4,0xc4,0x08,0xf7,0xc1,0x40,0xe2,0x01,0x00]674 ctests {dfv=of} r9, 123456675# CHECK: ctests {dfv=of} dl, bl676# CHECK: encoding: [0x62,0xf4,0x44,0x08,0x84,0xda]677 ctests {dfv=of} dl, bl678# CHECK: ctests {dfv=of} ax, dx679# CHECK: encoding: [0x62,0xf4,0x45,0x08,0x85,0xd0]680 ctests {dfv=of} ax, dx681# CHECK: ctests {dfv=of} edx, ecx682# CHECK: encoding: [0x62,0xf4,0x44,0x08,0x85,0xca]683 ctests {dfv=of} edx, ecx684# CHECK: ctests {dfv=of} r15, r9685# CHECK: encoding: [0x62,0x54,0xc4,0x08,0x85,0xcf]686 ctests {dfv=of} r15, r9687# CHECK: ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], 123688# CHECK: encoding: [0x62,0xd4,0x44,0x0a,0xf6,0x44,0x80,0x7b,0x7b]689 ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], 123690# CHECK: ctestt {dfv=of} word ptr [r8 + 4*rax + 123], 1234691# CHECK: encoding: [0x62,0xd4,0x45,0x0a,0xf7,0x44,0x80,0x7b,0xd2,0x04]692 ctestt {dfv=of} word ptr [r8 + 4*rax + 123], 1234693# CHECK: ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], 123456694# CHECK: encoding: [0x62,0xd4,0xc4,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]695 ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], 123456696# CHECK: ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], 123456697# CHECK: encoding: [0x62,0xd4,0x44,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]698 ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], 123456699# CHECK: ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], bl700# CHECK: encoding: [0x62,0xd4,0x44,0x0a,0x84,0x5c,0x80,0x7b]701 ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], bl702# CHECK: ctestt {dfv=of} word ptr [r8 + 4*rax + 123], dx703# CHECK: encoding: [0x62,0xd4,0x45,0x0a,0x85,0x54,0x80,0x7b]704 ctestt {dfv=of} word ptr [r8 + 4*rax + 123], dx705# CHECK: ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], ecx706# CHECK: encoding: [0x62,0xd4,0x44,0x0a,0x85,0x4c,0x80,0x7b]707 ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], ecx708# CHECK: ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], r9709# CHECK: encoding: [0x62,0x54,0xc4,0x0a,0x85,0x4c,0x80,0x7b]710 ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], r9711# CHECK: ctestt {dfv=of} bl, 123712# CHECK: encoding: [0x62,0xf4,0x44,0x0a,0xf6,0xc3,0x7b]713 ctestt {dfv=of} bl, 123714# CHECK: ctestt {dfv=of} dx, 1234715# CHECK: encoding: [0x62,0xf4,0x45,0x0a,0xf7,0xc2,0xd2,0x04]716 ctestt {dfv=of} dx, 1234717# CHECK: ctestt {dfv=of} ecx, 123456718# CHECK: encoding: [0x62,0xf4,0x44,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00]719 ctestt {dfv=of} ecx, 123456720# CHECK: ctestt {dfv=of} r9, 123456721# CHECK: encoding: [0x62,0xd4,0xc4,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00]722 ctestt {dfv=of} r9, 123456723# CHECK: ctestt {dfv=of} dl, bl724# CHECK: encoding: [0x62,0xf4,0x44,0x0a,0x84,0xda]725 ctestt {dfv=of} dl, bl726# CHECK: ctestt {dfv=of} ax, dx727# CHECK: encoding: [0x62,0xf4,0x45,0x0a,0x85,0xd0]728 ctestt {dfv=of} ax, dx729# CHECK: ctestt {dfv=of} edx, ecx730# CHECK: encoding: [0x62,0xf4,0x44,0x0a,0x85,0xca]731 ctestt {dfv=of} edx, ecx732# CHECK: ctestt {dfv=of} r15, r9733# CHECK: encoding: [0x62,0x54,0xc4,0x0a,0x85,0xcf]734 ctestt {dfv=of} r15, r9735# CHECK: cteste {dfv=of} byte ptr [r8 + 4*rax + 123], 123736# CHECK: encoding: [0x62,0xd4,0x44,0x04,0xf6,0x44,0x80,0x7b,0x7b]737 cteste {dfv=of} byte ptr [r8 + 4*rax + 123], 123738# CHECK: cteste {dfv=of} word ptr [r8 + 4*rax + 123], 1234739# CHECK: encoding: [0x62,0xd4,0x45,0x04,0xf7,0x44,0x80,0x7b,0xd2,0x04]740 cteste {dfv=of} word ptr [r8 + 4*rax + 123], 1234741# CHECK: cteste {dfv=of} qword ptr [r8 + 4*rax + 123], 123456742# CHECK: encoding: [0x62,0xd4,0xc4,0x04,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]743 cteste {dfv=of} qword ptr [r8 + 4*rax + 123], 123456744# CHECK: cteste {dfv=of} dword ptr [r8 + 4*rax + 123], 123456745# CHECK: encoding: [0x62,0xd4,0x44,0x04,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]746 cteste {dfv=of} dword ptr [r8 + 4*rax + 123], 123456747# CHECK: cteste {dfv=of} byte ptr [r8 + 4*rax + 123], bl748# CHECK: encoding: [0x62,0xd4,0x44,0x04,0x84,0x5c,0x80,0x7b]749 cteste {dfv=of} byte ptr [r8 + 4*rax + 123], bl750# CHECK: cteste {dfv=of} word ptr [r8 + 4*rax + 123], dx751# CHECK: encoding: [0x62,0xd4,0x45,0x04,0x85,0x54,0x80,0x7b]752 cteste {dfv=of} word ptr [r8 + 4*rax + 123], dx753# CHECK: cteste {dfv=of} dword ptr [r8 + 4*rax + 123], ecx754# CHECK: encoding: [0x62,0xd4,0x44,0x04,0x85,0x4c,0x80,0x7b]755 cteste {dfv=of} dword ptr [r8 + 4*rax + 123], ecx756# CHECK: cteste {dfv=of} qword ptr [r8 + 4*rax + 123], r9757# CHECK: encoding: [0x62,0x54,0xc4,0x04,0x85,0x4c,0x80,0x7b]758 cteste {dfv=of} qword ptr [r8 + 4*rax + 123], r9759# CHECK: cteste {dfv=of} bl, 123760# CHECK: encoding: [0x62,0xf4,0x44,0x04,0xf6,0xc3,0x7b]761 cteste {dfv=of} bl, 123762# CHECK: cteste {dfv=of} dx, 1234763# CHECK: encoding: [0x62,0xf4,0x45,0x04,0xf7,0xc2,0xd2,0x04]764 cteste {dfv=of} dx, 1234765# CHECK: cteste {dfv=of} ecx, 123456766# CHECK: encoding: [0x62,0xf4,0x44,0x04,0xf7,0xc1,0x40,0xe2,0x01,0x00]767 cteste {dfv=of} ecx, 123456768# CHECK: cteste {dfv=of} r9, 123456769# CHECK: encoding: [0x62,0xd4,0xc4,0x04,0xf7,0xc1,0x40,0xe2,0x01,0x00]770 cteste {dfv=of} r9, 123456771# CHECK: cteste {dfv=of} dl, bl772# CHECK: encoding: [0x62,0xf4,0x44,0x04,0x84,0xda]773 cteste {dfv=of} dl, bl774# CHECK: cteste {dfv=of} ax, dx775# CHECK: encoding: [0x62,0xf4,0x45,0x04,0x85,0xd0]776 cteste {dfv=of} ax, dx777# CHECK: cteste {dfv=of} edx, ecx778# CHECK: encoding: [0x62,0xf4,0x44,0x04,0x85,0xca]779 cteste {dfv=of} edx, ecx780# CHECK: cteste {dfv=of} r15, r9781# CHECK: encoding: [0x62,0x54,0xc4,0x04,0x85,0xcf]782 cteste {dfv=of} r15, r9783 784## "{evex} test*" are alias for "ctestt* {dfv=}"785 786# CHECK: ctestt {dfv=} byte ptr [r8 + 4*rax + 123], 123787# CHECK: encoding: [0x62,0xd4,0x04,0x0a,0xf6,0x44,0x80,0x7b,0x7b]788 {evex} test byte ptr [r8 + 4*rax + 123], 123789# CHECK: ctestt {dfv=} word ptr [r8 + 4*rax + 123], 1234790# CHECK: encoding: [0x62,0xd4,0x05,0x0a,0xf7,0x44,0x80,0x7b,0xd2,0x04]791 {evex} test word ptr [r8 + 4*rax + 123], 1234792# CHECK: ctestt {dfv=} dword ptr [r8 + 4*rax + 123], 123456793# CHECK: encoding: [0x62,0xd4,0x04,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]794 {evex} test dword ptr [r8 + 4*rax + 123], 123456795# CHECK: ctestt {dfv=} qword ptr [r8 + 4*rax + 123], 123456796# CHECK: encoding: [0x62,0xd4,0x84,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00]797 {evex} test qword ptr [r8 + 4*rax + 123], 123456798# CHECK: ctestt {dfv=} byte ptr [r8 + 4*rax + 123], bl799# CHECK: encoding: [0x62,0xd4,0x04,0x0a,0x84,0x5c,0x80,0x7b]800 {evex} test byte ptr [r8 + 4*rax + 123], bl801# CHECK: ctestt {dfv=} word ptr [r8 + 4*rax + 123], dx802# CHECK: encoding: [0x62,0xd4,0x05,0x0a,0x85,0x54,0x80,0x7b]803 {evex} test word ptr [r8 + 4*rax + 123], dx804# CHECK: ctestt {dfv=} dword ptr [r8 + 4*rax + 123], ecx805# CHECK: encoding: [0x62,0xd4,0x04,0x0a,0x85,0x4c,0x80,0x7b]806 {evex} test dword ptr [r8 + 4*rax + 123], ecx807# CHECK: ctestt {dfv=} qword ptr [r8 + 4*rax + 123], r9808# CHECK: encoding: [0x62,0x54,0x84,0x0a,0x85,0x4c,0x80,0x7b]809 {evex} test qword ptr [r8 + 4*rax + 123], r9810# CHECK: ctestt {dfv=} bl, 123811# CHECK: encoding: [0x62,0xf4,0x04,0x0a,0xf6,0xc3,0x7b]812 {evex} test bl, 123813# CHECK: ctestt {dfv=} dx, 1234814# CHECK: encoding: [0x62,0xf4,0x05,0x0a,0xf7,0xc2,0xd2,0x04]815 {evex} test dx, 1234816# CHECK: ctestt {dfv=} ecx, 123456817# CHECK: encoding: [0x62,0xf4,0x04,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00]818 {evex} test ecx, 123456819# CHECK: ctestt {dfv=} r9, 123456820# CHECK: encoding: [0x62,0xd4,0x84,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00]821 {evex} test r9, 123456822# CHECK: ctestt {dfv=} dl, bl823# CHECK: encoding: [0x62,0xf4,0x04,0x0a,0x84,0xda]824 {evex} test dl, bl825# CHECK: ctestt {dfv=} ax, dx826# CHECK: encoding: [0x62,0xf4,0x05,0x0a,0x85,0xd0]827 {evex} test ax, dx828# CHECK: ctestt {dfv=} edx, ecx829# CHECK: encoding: [0x62,0xf4,0x04,0x0a,0x85,0xca]830 {evex} test edx, ecx831# CHECK: ctestt {dfv=} r15, r9832# CHECK: encoding: [0x62,0x54,0x84,0x0a,0x85,0xcf]833 {evex} test r15, r9834 835## Condition Code Aliases836 837# CHECK: ctestb {dfv=of} edx, ecx838# CHECK: encoding: [0x62,0xf4,0x44,0x02,0x85,0xca]839 ctestc {dfv=of} edx, ecx840# CHECK: ctestb {dfv=of} edx, ecx841# CHECK: encoding: [0x62,0xf4,0x44,0x02,0x85,0xca]842 ctestnae {dfv=of} edx, ecx843# CHECK: ctestae {dfv=of} edx, ecx844# CHECK: encoding: [0x62,0xf4,0x44,0x03,0x85,0xca]845 ctestnb {dfv=of} edx, ecx846# CHECK: ctestae {dfv=of} edx, ecx847# CHECK: encoding: [0x62,0xf4,0x44,0x03,0x85,0xca]848 ctestnc {dfv=of} edx, ecx849# CHECK: cteste {dfv=of} edx, ecx850# CHECK: encoding: [0x62,0xf4,0x44,0x04,0x85,0xca]851 ctestz {dfv=of} edx, ecx852# CHECK: ctestne {dfv=of} edx, ecx853# CHECK: encoding: [0x62,0xf4,0x44,0x05,0x85,0xca]854 ctestnz {dfv=of} edx, ecx855# CHECK: ctesta {dfv=of} edx, ecx856# CHECK: encoding: [0x62,0xf4,0x44,0x07,0x85,0xca]857 ctestnbe {dfv=of} edx, ecx858# CHECK: ctestl {dfv=of} edx, ecx859# CHECK: encoding: [0x62,0xf4,0x44,0x0c,0x85,0xca]860 ctestnge {dfv=of} edx, ecx861# CHECK: ctestge {dfv=of} edx, ecx862# CHECK: encoding: [0x62,0xf4,0x44,0x0d,0x85,0xca]863 ctestnl {dfv=of} edx, ecx864# CHECK: ctestle {dfv=of} edx, ecx865# CHECK: encoding: [0x62,0xf4,0x44,0x0e,0x85,0xca]866 ctestng {dfv=of} edx, ecx867# CHECK: ctestg {dfv=of} edx, ecx868# CHECK: encoding: [0x62,0xf4,0x44,0x0f,0x85,0xca]869 ctestnle {dfv=of} edx, ecx870# CHECK: ctestbe {dfv=of} edx, ecx871# CHECK: encoding: [0x62,0xf4,0x44,0x06,0x85,0xca]872 ctestna {dfv=of} edx, ecx873