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