1# RUN: llvm-mc -triple x86_64 -show-encoding -x86-asm-syntax=intel -output-asm-variant=1 %s | FileCheck %s 2 3# CHECK: {evex} rcl bl, 123 4# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xc0,0xd3,0x7b] 5 {evex} rcl bl, 123 6# CHECK: rcl bl, bl, 123 7# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xc0,0xd3,0x7b] 8 rcl bl, bl, 123 9# CHECK: {evex} rcl dx, 123 10# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xc1,0xd2,0x7b] 11 {evex} rcl dx, 123 12# CHECK: rcl dx, dx, 123 13# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xc1,0xd2,0x7b] 14 rcl dx, dx, 123 15# CHECK: {evex} rcl ecx, 123 16# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xc1,0xd1,0x7b] 17 {evex} rcl ecx, 123 18# CHECK: rcl ecx, ecx, 123 19# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xc1,0xd1,0x7b] 20 rcl ecx, ecx, 123 21# CHECK: {evex} rcl r9, 123 22# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xc1,0xd1,0x7b] 23 {evex} rcl r9, 123 24# CHECK: rcl r9, r9, 123 25# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xc1,0xd1,0x7b] 26 rcl r9, r9, 123 27# CHECK: {evex} rcl byte ptr [r8 + 4*rax + 291], 123 28# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xc0,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 29 {evex} rcl byte ptr [r8 + 4*rax + 291], 123 30# CHECK: rcl bl, byte ptr [r8 + 4*rax + 291], 123 31# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xc0,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 32 rcl bl, byte ptr [r8 + 4*rax + 291], 123 33# CHECK: {evex} rcl word ptr [r8 + 4*rax + 291], 123 34# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xc1,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 35 {evex} rcl word ptr [r8 + 4*rax + 291], 123 36# CHECK: rcl dx, word ptr [r8 + 4*rax + 291], 123 37# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xc1,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 38 rcl dx, word ptr [r8 + 4*rax + 291], 123 39# CHECK: {evex} rcl dword ptr [r8 + 4*rax + 291], 123 40# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xc1,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 41 {evex} rcl dword ptr [r8 + 4*rax + 291], 123 42# CHECK: rcl ecx, dword ptr [r8 + 4*rax + 291], 123 43# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xc1,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 44 rcl ecx, dword ptr [r8 + 4*rax + 291], 123 45# CHECK: {evex} rcl qword ptr [r8 + 4*rax + 291], 123 46# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xc1,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 47 {evex} rcl qword ptr [r8 + 4*rax + 291], 123 48# CHECK: rcl r9, qword ptr [r8 + 4*rax + 291], 123 49# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xc1,0x94,0x80,0x23,0x01,0x00,0x00,0x7b] 50 rcl r9, qword ptr [r8 + 4*rax + 291], 123 51# CHECK: {evex} rcl bl 52# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd0,0xd3] 53 {evex} rcl bl 54# CHECK: {evex} rcl bl, cl 55# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd2,0xd3] 56 {evex} rcl bl, cl 57# CHECK: rcl bl, bl, cl 58# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd2,0xd3] 59 rcl bl, bl, cl 60# CHECK: {evex} rcl dx, cl 61# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd3,0xd2] 62 {evex} rcl dx, cl 63# CHECK: rcl dx, dx, cl 64# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xd3,0xd2] 65 rcl dx, dx, cl 66# CHECK: {evex} rcl ecx, cl 67# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd3,0xd1] 68 {evex} rcl ecx, cl 69# CHECK: rcl ecx, ecx, cl 70# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xd3,0xd1] 71 rcl ecx, ecx, cl 72# CHECK: {evex} rcl r9, cl 73# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd3,0xd1] 74 {evex} rcl r9, cl 75# CHECK: rcl r9, r9, cl 76# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd3,0xd1] 77 rcl r9, r9, cl 78# CHECK: {evex} rcl byte ptr [r8 + 4*rax + 291], cl 79# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd2,0x94,0x80,0x23,0x01,0x00,0x00] 80 {evex} rcl byte ptr [r8 + 4*rax + 291], cl 81# CHECK: rcl bl, byte ptr [r8 + 4*rax + 291], cl 82# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd2,0x94,0x80,0x23,0x01,0x00,0x00] 83 rcl bl, byte ptr [r8 + 4*rax + 291], cl 84# CHECK: {evex} rcl word ptr [r8 + 4*rax + 291], cl 85# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd3,0x94,0x80,0x23,0x01,0x00,0x00] 86 {evex} rcl word ptr [r8 + 4*rax + 291], cl 87# CHECK: rcl dx, word ptr [r8 + 4*rax + 291], cl 88# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xd3,0x94,0x80,0x23,0x01,0x00,0x00] 89 rcl dx, word ptr [r8 + 4*rax + 291], cl 90# CHECK: {evex} rcl dword ptr [r8 + 4*rax + 291], cl 91# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd3,0x94,0x80,0x23,0x01,0x00,0x00] 92 {evex} rcl dword ptr [r8 + 4*rax + 291], cl 93# CHECK: rcl ecx, dword ptr [r8 + 4*rax + 291], cl 94# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xd3,0x94,0x80,0x23,0x01,0x00,0x00] 95 rcl ecx, dword ptr [r8 + 4*rax + 291], cl 96# CHECK: {evex} rcl qword ptr [r8 + 4*rax + 291], cl 97# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd3,0x94,0x80,0x23,0x01,0x00,0x00] 98 {evex} rcl qword ptr [r8 + 4*rax + 291], cl 99# CHECK: rcl r9, qword ptr [r8 + 4*rax + 291], cl 100# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd3,0x94,0x80,0x23,0x01,0x00,0x00] 101 rcl r9, qword ptr [r8 + 4*rax + 291], cl 102# CHECK: {evex} rcl dx 103# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd1,0xd2] 104 {evex} rcl dx 105# CHECK: rcl dx, dx 106# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xd1,0xd2] 107 rcl dx, dx 108# CHECK: {evex} rcl ecx 109# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd1,0xd1] 110 {evex} rcl ecx 111# CHECK: rcl ecx, ecx 112# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xd1,0xd1] 113 rcl ecx, ecx 114# CHECK: {evex} rcl r9 115# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0xd1] 116 {evex} rcl r9 117# CHECK: rcl r9, r9 118# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd1,0xd1] 119 rcl r9, r9 120# CHECK: {evex} rcl byte ptr [r8 + 4*rax + 291] 121# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd0,0x94,0x80,0x23,0x01,0x00,0x00] 122 {evex} rcl byte ptr [r8 + 4*rax + 291] 123# CHECK: rcl bl, byte ptr [r8 + 4*rax + 291] 124# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd0,0x94,0x80,0x23,0x01,0x00,0x00] 125 rcl bl, byte ptr [r8 + 4*rax + 291] 126# CHECK: {evex} rcl word ptr [r8 + 4*rax + 291] 127# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd1,0x94,0x80,0x23,0x01,0x00,0x00] 128 {evex} rcl word ptr [r8 + 4*rax + 291] 129# CHECK: rcl dx, word ptr [r8 + 4*rax + 291] 130# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xd1,0x94,0x80,0x23,0x01,0x00,0x00] 131 rcl dx, word ptr [r8 + 4*rax + 291] 132# CHECK: {evex} rcl dword ptr [r8 + 4*rax + 291] 133# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd1,0x94,0x80,0x23,0x01,0x00,0x00] 134 {evex} rcl dword ptr [r8 + 4*rax + 291] 135# CHECK: rcl ecx, dword ptr [r8 + 4*rax + 291] 136# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xd1,0x94,0x80,0x23,0x01,0x00,0x00] 137 rcl ecx, dword ptr [r8 + 4*rax + 291] 138# CHECK: {evex} rcl qword ptr [r8 + 4*rax + 291] 139# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0x94,0x80,0x23,0x01,0x00,0x00] 140 {evex} rcl qword ptr [r8 + 4*rax + 291] 141# CHECK: rcl r9, qword ptr [r8 + 4*rax + 291] 142# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd1,0x94,0x80,0x23,0x01,0x00,0x00] 143 rcl r9, qword ptr [r8 + 4*rax + 291] 144