# RUN: llvm-mc -triple x86_64 -show-encoding -x86-asm-syntax=intel -output-asm-variant=1 %s | FileCheck %s # CHECK: ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x02,0xf6,0x44,0x80,0x7b,0x7b] ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestb {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x02,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestb {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x02,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x02,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x02,0x84,0x5c,0x80,0x7b] ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestb {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x02,0x85,0x54,0x80,0x7b] ctestb {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x02,0x85,0x4c,0x80,0x7b] ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x02,0x85,0x4c,0x80,0x7b] ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestb {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x02,0x84,0x5c,0x80,0x7b] ctestb {dfv=of} bl, byte ptr [r8 + 4*rax + 123] # CHECK: ctestb {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x02,0x85,0x54,0x80,0x7b] ctestb {dfv=of} dx, word ptr [r8 + 4*rax + 123] # CHECK: ctestb {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x02,0x85,0x4c,0x80,0x7b] ctestb {dfv=of} ecx, dword ptr [r8 + 4*rax + 123] # CHECK: ctestb {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x02,0x85,0x4c,0x80,0x7b] ctestb {dfv=of} r9, qword ptr [r8 + 4*rax + 123] # CHECK: ctestb {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x02,0xf6,0xc3,0x7b] ctestb {dfv=of} bl, 123 # CHECK: ctestb {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x02,0xf7,0xc2,0xd2,0x04] ctestb {dfv=of} dx, 1234 # CHECK: ctestb {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x02,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestb {dfv=of} ecx, 123456 # CHECK: ctestb {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x02,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestb {dfv=of} r9, 123456 # CHECK: ctestb {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x02,0x84,0xda] ctestb {dfv=of} dl, bl # CHECK: ctestb {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x02,0x85,0xd0] ctestb {dfv=of} ax, dx # CHECK: ctestb {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x02,0x85,0xca] ctestb {dfv=of} edx, ecx # CHECK: ctestb {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x02,0x85,0xcf] ctestb {dfv=of} r15, r9 # CHECK: ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x06,0xf6,0x44,0x80,0x7b,0x7b] ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x06,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x06,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x06,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x06,0x84,0x5c,0x80,0x7b] ctestbe {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x06,0x85,0x54,0x80,0x7b] ctestbe {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x06,0x85,0x4c,0x80,0x7b] ctestbe {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x06,0x85,0x4c,0x80,0x7b] ctestbe {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestbe {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x06,0xf6,0xc3,0x7b] ctestbe {dfv=of} bl, 123 # CHECK: ctestbe {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x06,0xf7,0xc2,0xd2,0x04] ctestbe {dfv=of} dx, 1234 # CHECK: ctestbe {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x06,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestbe {dfv=of} ecx, 123456 # CHECK: ctestbe {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x06,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestbe {dfv=of} r9, 123456 # CHECK: ctestbe {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x06,0x84,0xda] ctestbe {dfv=of} dl, bl # CHECK: ctestbe {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x06,0x85,0xd0] ctestbe {dfv=of} ax, dx # CHECK: ctestbe {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x06,0x85,0xca] ctestbe {dfv=of} edx, ecx # CHECK: ctestbe {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x06,0x85,0xcf] ctestbe {dfv=of} r15, r9 # CHECK: ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x0b,0xf6,0x44,0x80,0x7b,0x7b] ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestf {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x0b,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestf {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0b,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x0b,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x0b,0x84,0x5c,0x80,0x7b] ctestf {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestf {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x0b,0x85,0x54,0x80,0x7b] ctestf {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x0b,0x85,0x4c,0x80,0x7b] ctestf {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0b,0x85,0x4c,0x80,0x7b] ctestf {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestf {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x0b,0xf6,0xc3,0x7b] ctestf {dfv=of} bl, 123 # CHECK: ctestf {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x0b,0xf7,0xc2,0xd2,0x04] ctestf {dfv=of} dx, 1234 # CHECK: ctestf {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x0b,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestf {dfv=of} ecx, 123456 # CHECK: ctestf {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0b,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestf {dfv=of} r9, 123456 # CHECK: ctestf {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x0b,0x84,0xda] ctestf {dfv=of} dl, bl # CHECK: ctestf {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x0b,0x85,0xd0] ctestf {dfv=of} ax, dx # CHECK: ctestf {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0b,0x85,0xca] ctestf {dfv=of} edx, ecx # CHECK: ctestf {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0b,0x85,0xcf] ctestf {dfv=of} r15, r9 # CHECK: ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x0c,0xf6,0x44,0x80,0x7b,0x7b] ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestl {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x0c,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestl {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0c,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x0c,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x0c,0x84,0x5c,0x80,0x7b] ctestl {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestl {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x0c,0x85,0x54,0x80,0x7b] ctestl {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x0c,0x85,0x4c,0x80,0x7b] ctestl {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0c,0x85,0x4c,0x80,0x7b] ctestl {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestl {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x0c,0xf6,0xc3,0x7b] ctestl {dfv=of} bl, 123 # CHECK: ctestl {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x0c,0xf7,0xc2,0xd2,0x04] ctestl {dfv=of} dx, 1234 # CHECK: ctestl {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x0c,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestl {dfv=of} ecx, 123456 # CHECK: ctestl {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0c,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestl {dfv=of} r9, 123456 # CHECK: ctestl {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x0c,0x84,0xda] ctestl {dfv=of} dl, bl # CHECK: ctestl {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x0c,0x85,0xd0] ctestl {dfv=of} ax, dx # CHECK: ctestl {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0c,0x85,0xca] ctestl {dfv=of} edx, ecx # CHECK: ctestl {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0c,0x85,0xcf] ctestl {dfv=of} r15, r9 # CHECK: ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x0e,0xf6,0x44,0x80,0x7b,0x7b] ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestle {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x0e,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestle {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0e,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x0e,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x0e,0x84,0x5c,0x80,0x7b] ctestle {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestle {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x0e,0x85,0x54,0x80,0x7b] ctestle {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x0e,0x85,0x4c,0x80,0x7b] ctestle {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0e,0x85,0x4c,0x80,0x7b] ctestle {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestle {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x0e,0xf6,0xc3,0x7b] ctestle {dfv=of} bl, 123 # CHECK: ctestle {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x0e,0xf7,0xc2,0xd2,0x04] ctestle {dfv=of} dx, 1234 # CHECK: ctestle {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x0e,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestle {dfv=of} ecx, 123456 # CHECK: ctestle {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0e,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestle {dfv=of} r9, 123456 # CHECK: ctestle {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x0e,0x84,0xda] ctestle {dfv=of} dl, bl # CHECK: ctestle {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x0e,0x85,0xd0] ctestle {dfv=of} ax, dx # CHECK: ctestle {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0e,0x85,0xca] ctestle {dfv=of} edx, ecx # CHECK: ctestle {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0e,0x85,0xcf] ctestle {dfv=of} r15, r9 # CHECK: ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x03,0xf6,0x44,0x80,0x7b,0x7b] ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestae {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x03,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestae {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x03,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x03,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x03,0x84,0x5c,0x80,0x7b] ctestae {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestae {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x03,0x85,0x54,0x80,0x7b] ctestae {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x03,0x85,0x4c,0x80,0x7b] ctestae {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x03,0x85,0x4c,0x80,0x7b] ctestae {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestae {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x03,0xf6,0xc3,0x7b] ctestae {dfv=of} bl, 123 # CHECK: ctestae {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x03,0xf7,0xc2,0xd2,0x04] ctestae {dfv=of} dx, 1234 # CHECK: ctestae {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x03,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestae {dfv=of} ecx, 123456 # CHECK: ctestae {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x03,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestae {dfv=of} r9, 123456 # CHECK: ctestae {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x03,0x84,0xda] ctestae {dfv=of} dl, bl # CHECK: ctestae {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x03,0x85,0xd0] ctestae {dfv=of} ax, dx # CHECK: ctestae {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x03,0x85,0xca] ctestae {dfv=of} edx, ecx # CHECK: ctestae {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x03,0x85,0xcf] ctestae {dfv=of} r15, r9 # CHECK: ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x07,0xf6,0x44,0x80,0x7b,0x7b] ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctesta {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x07,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctesta {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x07,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x07,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x07,0x84,0x5c,0x80,0x7b] ctesta {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctesta {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x07,0x85,0x54,0x80,0x7b] ctesta {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x07,0x85,0x4c,0x80,0x7b] ctesta {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x07,0x85,0x4c,0x80,0x7b] ctesta {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctesta {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x07,0xf6,0xc3,0x7b] ctesta {dfv=of} bl, 123 # CHECK: ctesta {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x07,0xf7,0xc2,0xd2,0x04] ctesta {dfv=of} dx, 1234 # CHECK: ctesta {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x07,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctesta {dfv=of} ecx, 123456 # CHECK: ctesta {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x07,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctesta {dfv=of} r9, 123456 # CHECK: ctesta {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x07,0x84,0xda] ctesta {dfv=of} dl, bl # CHECK: ctesta {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x07,0x85,0xd0] ctesta {dfv=of} ax, dx # CHECK: ctesta {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x07,0x85,0xca] ctesta {dfv=of} edx, ecx # CHECK: ctesta {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x07,0x85,0xcf] ctesta {dfv=of} r15, r9 # CHECK: ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x0d,0xf6,0x44,0x80,0x7b,0x7b] ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestge {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x0d,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestge {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0d,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x0d,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x0d,0x84,0x5c,0x80,0x7b] ctestge {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestge {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x0d,0x85,0x54,0x80,0x7b] ctestge {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x0d,0x85,0x4c,0x80,0x7b] ctestge {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0d,0x85,0x4c,0x80,0x7b] ctestge {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestge {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x0d,0xf6,0xc3,0x7b] ctestge {dfv=of} bl, 123 # CHECK: ctestge {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x0d,0xf7,0xc2,0xd2,0x04] ctestge {dfv=of} dx, 1234 # CHECK: ctestge {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x0d,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestge {dfv=of} ecx, 123456 # CHECK: ctestge {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0d,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestge {dfv=of} r9, 123456 # CHECK: ctestge {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x0d,0x84,0xda] ctestge {dfv=of} dl, bl # CHECK: ctestge {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x0d,0x85,0xd0] ctestge {dfv=of} ax, dx # CHECK: ctestge {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0d,0x85,0xca] ctestge {dfv=of} edx, ecx # CHECK: ctestge {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0d,0x85,0xcf] ctestge {dfv=of} r15, r9 # CHECK: ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x0f,0xf6,0x44,0x80,0x7b,0x7b] ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestg {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x0f,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestg {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0f,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x0f,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x0f,0x84,0x5c,0x80,0x7b] ctestg {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestg {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x0f,0x85,0x54,0x80,0x7b] ctestg {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x0f,0x85,0x4c,0x80,0x7b] ctestg {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0f,0x85,0x4c,0x80,0x7b] ctestg {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestg {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x0f,0xf6,0xc3,0x7b] ctestg {dfv=of} bl, 123 # CHECK: ctestg {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x0f,0xf7,0xc2,0xd2,0x04] ctestg {dfv=of} dx, 1234 # CHECK: ctestg {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x0f,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestg {dfv=of} ecx, 123456 # CHECK: ctestg {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0f,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestg {dfv=of} r9, 123456 # CHECK: ctestg {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x0f,0x84,0xda] ctestg {dfv=of} dl, bl # CHECK: ctestg {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x0f,0x85,0xd0] ctestg {dfv=of} ax, dx # CHECK: ctestg {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0f,0x85,0xca] ctestg {dfv=of} edx, ecx # CHECK: ctestg {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0f,0x85,0xcf] ctestg {dfv=of} r15, r9 # CHECK: ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x01,0xf6,0x44,0x80,0x7b,0x7b] ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestno {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x01,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestno {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x01,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x01,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x01,0x84,0x5c,0x80,0x7b] ctestno {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestno {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x01,0x85,0x54,0x80,0x7b] ctestno {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x01,0x85,0x4c,0x80,0x7b] ctestno {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x01,0x85,0x4c,0x80,0x7b] ctestno {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestno {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x01,0xf6,0xc3,0x7b] ctestno {dfv=of} bl, 123 # CHECK: ctestno {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x01,0xf7,0xc2,0xd2,0x04] ctestno {dfv=of} dx, 1234 # CHECK: ctestno {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x01,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestno {dfv=of} ecx, 123456 # CHECK: ctestno {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x01,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestno {dfv=of} r9, 123456 # CHECK: ctestno {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x01,0x84,0xda] ctestno {dfv=of} dl, bl # CHECK: ctestno {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x01,0x85,0xd0] ctestno {dfv=of} ax, dx # CHECK: ctestno {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x01,0x85,0xca] ctestno {dfv=of} edx, ecx # CHECK: ctestno {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x01,0x85,0xcf] ctestno {dfv=of} r15, r9 # CHECK: ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x09,0xf6,0x44,0x80,0x7b,0x7b] ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestns {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x09,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestns {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x09,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x09,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x09,0x84,0x5c,0x80,0x7b] ctestns {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestns {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x09,0x85,0x54,0x80,0x7b] ctestns {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x09,0x85,0x4c,0x80,0x7b] ctestns {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x09,0x85,0x4c,0x80,0x7b] ctestns {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestns {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x09,0xf6,0xc3,0x7b] ctestns {dfv=of} bl, 123 # CHECK: ctestns {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x09,0xf7,0xc2,0xd2,0x04] ctestns {dfv=of} dx, 1234 # CHECK: ctestns {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x09,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestns {dfv=of} ecx, 123456 # CHECK: ctestns {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x09,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestns {dfv=of} r9, 123456 # CHECK: ctestns {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x09,0x84,0xda] ctestns {dfv=of} dl, bl # CHECK: ctestns {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x09,0x85,0xd0] ctestns {dfv=of} ax, dx # CHECK: ctestns {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x09,0x85,0xca] ctestns {dfv=of} edx, ecx # CHECK: ctestns {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x09,0x85,0xcf] ctestns {dfv=of} r15, r9 # CHECK: ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x05,0xf6,0x44,0x80,0x7b,0x7b] ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestne {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x05,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestne {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x05,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x05,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x05,0x84,0x5c,0x80,0x7b] ctestne {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestne {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x05,0x85,0x54,0x80,0x7b] ctestne {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x05,0x85,0x4c,0x80,0x7b] ctestne {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x05,0x85,0x4c,0x80,0x7b] ctestne {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestne {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x05,0xf6,0xc3,0x7b] ctestne {dfv=of} bl, 123 # CHECK: ctestne {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x05,0xf7,0xc2,0xd2,0x04] ctestne {dfv=of} dx, 1234 # CHECK: ctestne {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x05,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestne {dfv=of} ecx, 123456 # CHECK: ctestne {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x05,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestne {dfv=of} r9, 123456 # CHECK: ctestne {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x05,0x84,0xda] ctestne {dfv=of} dl, bl # CHECK: ctestne {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x05,0x85,0xd0] ctestne {dfv=of} ax, dx # CHECK: ctestne {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x05,0x85,0xca] ctestne {dfv=of} edx, ecx # CHECK: ctestne {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x05,0x85,0xcf] ctestne {dfv=of} r15, r9 # CHECK: ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x00,0xf6,0x44,0x80,0x7b,0x7b] ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctesto {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x00,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctesto {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x00,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x00,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x00,0x84,0x5c,0x80,0x7b] ctesto {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctesto {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x00,0x85,0x54,0x80,0x7b] ctesto {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x00,0x85,0x4c,0x80,0x7b] ctesto {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x00,0x85,0x4c,0x80,0x7b] ctesto {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctesto {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x00,0xf6,0xc3,0x7b] ctesto {dfv=of} bl, 123 # CHECK: ctesto {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x00,0xf7,0xc2,0xd2,0x04] ctesto {dfv=of} dx, 1234 # CHECK: ctesto {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x00,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctesto {dfv=of} ecx, 123456 # CHECK: ctesto {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x00,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctesto {dfv=of} r9, 123456 # CHECK: ctesto {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x00,0x84,0xda] ctesto {dfv=of} dl, bl # CHECK: ctesto {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x00,0x85,0xd0] ctesto {dfv=of} ax, dx # CHECK: ctesto {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x00,0x85,0xca] ctesto {dfv=of} edx, ecx # CHECK: ctesto {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x00,0x85,0xcf] ctesto {dfv=of} r15, r9 # CHECK: ctests {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x08,0xf6,0x44,0x80,0x7b,0x7b] ctests {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctests {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x08,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctests {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctests {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x08,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctests {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctests {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x08,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctests {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctests {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x08,0x84,0x5c,0x80,0x7b] ctests {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctests {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x08,0x85,0x54,0x80,0x7b] ctests {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctests {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x08,0x85,0x4c,0x80,0x7b] ctests {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctests {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x08,0x85,0x4c,0x80,0x7b] ctests {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctests {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x08,0xf6,0xc3,0x7b] ctests {dfv=of} bl, 123 # CHECK: ctests {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x08,0xf7,0xc2,0xd2,0x04] ctests {dfv=of} dx, 1234 # CHECK: ctests {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x08,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctests {dfv=of} ecx, 123456 # CHECK: ctests {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x08,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctests {dfv=of} r9, 123456 # CHECK: ctests {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x08,0x84,0xda] ctests {dfv=of} dl, bl # CHECK: ctests {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x08,0x85,0xd0] ctests {dfv=of} ax, dx # CHECK: ctests {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x08,0x85,0xca] ctests {dfv=of} edx, ecx # CHECK: ctests {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x08,0x85,0xcf] ctests {dfv=of} r15, r9 # CHECK: ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x0a,0xf6,0x44,0x80,0x7b,0x7b] ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestt {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x0a,0xf7,0x44,0x80,0x7b,0xd2,0x04] ctestt {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x0a,0x84,0x5c,0x80,0x7b] ctestt {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestt {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x0a,0x85,0x54,0x80,0x7b] ctestt {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x0a,0x85,0x4c,0x80,0x7b] ctestt {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0a,0x85,0x4c,0x80,0x7b] ctestt {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestt {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x0a,0xf6,0xc3,0x7b] ctestt {dfv=of} bl, 123 # CHECK: ctestt {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x0a,0xf7,0xc2,0xd2,0x04] ctestt {dfv=of} dx, 1234 # CHECK: ctestt {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestt {dfv=of} ecx, 123456 # CHECK: ctestt {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00] ctestt {dfv=of} r9, 123456 # CHECK: ctestt {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x0a,0x84,0xda] ctestt {dfv=of} dl, bl # CHECK: ctestt {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x0a,0x85,0xd0] ctestt {dfv=of} ax, dx # CHECK: ctestt {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0a,0x85,0xca] ctestt {dfv=of} edx, ecx # CHECK: ctestt {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x0a,0x85,0xcf] ctestt {dfv=of} r15, r9 # CHECK: cteste {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x44,0x04,0xf6,0x44,0x80,0x7b,0x7b] cteste {dfv=of} byte ptr [r8 + 4*rax + 123], 123 # CHECK: cteste {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x45,0x04,0xf7,0x44,0x80,0x7b,0xd2,0x04] cteste {dfv=of} word ptr [r8 + 4*rax + 123], 1234 # CHECK: cteste {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x04,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] cteste {dfv=of} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: cteste {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x44,0x04,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] cteste {dfv=of} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: cteste {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x44,0x04,0x84,0x5c,0x80,0x7b] cteste {dfv=of} byte ptr [r8 + 4*rax + 123], bl # CHECK: cteste {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x45,0x04,0x85,0x54,0x80,0x7b] cteste {dfv=of} word ptr [r8 + 4*rax + 123], dx # CHECK: cteste {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x44,0x04,0x85,0x4c,0x80,0x7b] cteste {dfv=of} dword ptr [r8 + 4*rax + 123], ecx # CHECK: cteste {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0xc4,0x04,0x85,0x4c,0x80,0x7b] cteste {dfv=of} qword ptr [r8 + 4*rax + 123], r9 # CHECK: cteste {dfv=of} bl, 123 # CHECK: encoding: [0x62,0xf4,0x44,0x04,0xf6,0xc3,0x7b] cteste {dfv=of} bl, 123 # CHECK: cteste {dfv=of} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x45,0x04,0xf7,0xc2,0xd2,0x04] cteste {dfv=of} dx, 1234 # CHECK: cteste {dfv=of} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x44,0x04,0xf7,0xc1,0x40,0xe2,0x01,0x00] cteste {dfv=of} ecx, 123456 # CHECK: cteste {dfv=of} r9, 123456 # CHECK: encoding: [0x62,0xd4,0xc4,0x04,0xf7,0xc1,0x40,0xe2,0x01,0x00] cteste {dfv=of} r9, 123456 # CHECK: cteste {dfv=of} dl, bl # CHECK: encoding: [0x62,0xf4,0x44,0x04,0x84,0xda] cteste {dfv=of} dl, bl # CHECK: cteste {dfv=of} ax, dx # CHECK: encoding: [0x62,0xf4,0x45,0x04,0x85,0xd0] cteste {dfv=of} ax, dx # CHECK: cteste {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x04,0x85,0xca] cteste {dfv=of} edx, ecx # CHECK: cteste {dfv=of} r15, r9 # CHECK: encoding: [0x62,0x54,0xc4,0x04,0x85,0xcf] cteste {dfv=of} r15, r9 ## "{evex} test*" are alias for "ctestt* {dfv=}" # CHECK: ctestt {dfv=} byte ptr [r8 + 4*rax + 123], 123 # CHECK: encoding: [0x62,0xd4,0x04,0x0a,0xf6,0x44,0x80,0x7b,0x7b] {evex} test byte ptr [r8 + 4*rax + 123], 123 # CHECK: ctestt {dfv=} word ptr [r8 + 4*rax + 123], 1234 # CHECK: encoding: [0x62,0xd4,0x05,0x0a,0xf7,0x44,0x80,0x7b,0xd2,0x04] {evex} test word ptr [r8 + 4*rax + 123], 1234 # CHECK: ctestt {dfv=} dword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x04,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] {evex} test dword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestt {dfv=} qword ptr [r8 + 4*rax + 123], 123456 # CHECK: encoding: [0x62,0xd4,0x84,0x0a,0xf7,0x44,0x80,0x7b,0x40,0xe2,0x01,0x00] {evex} test qword ptr [r8 + 4*rax + 123], 123456 # CHECK: ctestt {dfv=} byte ptr [r8 + 4*rax + 123], bl # CHECK: encoding: [0x62,0xd4,0x04,0x0a,0x84,0x5c,0x80,0x7b] {evex} test byte ptr [r8 + 4*rax + 123], bl # CHECK: ctestt {dfv=} word ptr [r8 + 4*rax + 123], dx # CHECK: encoding: [0x62,0xd4,0x05,0x0a,0x85,0x54,0x80,0x7b] {evex} test word ptr [r8 + 4*rax + 123], dx # CHECK: ctestt {dfv=} dword ptr [r8 + 4*rax + 123], ecx # CHECK: encoding: [0x62,0xd4,0x04,0x0a,0x85,0x4c,0x80,0x7b] {evex} test dword ptr [r8 + 4*rax + 123], ecx # CHECK: ctestt {dfv=} qword ptr [r8 + 4*rax + 123], r9 # CHECK: encoding: [0x62,0x54,0x84,0x0a,0x85,0x4c,0x80,0x7b] {evex} test qword ptr [r8 + 4*rax + 123], r9 # CHECK: ctestt {dfv=} bl, 123 # CHECK: encoding: [0x62,0xf4,0x04,0x0a,0xf6,0xc3,0x7b] {evex} test bl, 123 # CHECK: ctestt {dfv=} dx, 1234 # CHECK: encoding: [0x62,0xf4,0x05,0x0a,0xf7,0xc2,0xd2,0x04] {evex} test dx, 1234 # CHECK: ctestt {dfv=} ecx, 123456 # CHECK: encoding: [0x62,0xf4,0x04,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00] {evex} test ecx, 123456 # CHECK: ctestt {dfv=} r9, 123456 # CHECK: encoding: [0x62,0xd4,0x84,0x0a,0xf7,0xc1,0x40,0xe2,0x01,0x00] {evex} test r9, 123456 # CHECK: ctestt {dfv=} dl, bl # CHECK: encoding: [0x62,0xf4,0x04,0x0a,0x84,0xda] {evex} test dl, bl # CHECK: ctestt {dfv=} ax, dx # CHECK: encoding: [0x62,0xf4,0x05,0x0a,0x85,0xd0] {evex} test ax, dx # CHECK: ctestt {dfv=} edx, ecx # CHECK: encoding: [0x62,0xf4,0x04,0x0a,0x85,0xca] {evex} test edx, ecx # CHECK: ctestt {dfv=} r15, r9 # CHECK: encoding: [0x62,0x54,0x84,0x0a,0x85,0xcf] {evex} test r15, r9 ## Condition Code Aliases # CHECK: ctestb {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x02,0x85,0xca] ctestc {dfv=of} edx, ecx # CHECK: ctestb {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x02,0x85,0xca] ctestnae {dfv=of} edx, ecx # CHECK: ctestae {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x03,0x85,0xca] ctestnb {dfv=of} edx, ecx # CHECK: ctestae {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x03,0x85,0xca] ctestnc {dfv=of} edx, ecx # CHECK: cteste {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x04,0x85,0xca] ctestz {dfv=of} edx, ecx # CHECK: ctestne {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x05,0x85,0xca] ctestnz {dfv=of} edx, ecx # CHECK: ctesta {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x07,0x85,0xca] ctestnbe {dfv=of} edx, ecx # CHECK: ctestl {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0c,0x85,0xca] ctestnge {dfv=of} edx, ecx # CHECK: ctestge {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0d,0x85,0xca] ctestnl {dfv=of} edx, ecx # CHECK: ctestle {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0e,0x85,0xca] ctestng {dfv=of} edx, ecx # CHECK: ctestg {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x0f,0x85,0xca] ctestnle {dfv=of} edx, ecx # CHECK: ctestbe {dfv=of} edx, ecx # CHECK: encoding: [0x62,0xf4,0x44,0x06,0x85,0xca] ctestna {dfv=of} edx, ecx