147 lines · plain
1# RUN: llvm-mc -triple x86_64 -show-encoding %s | FileCheck %s2# RUN: not llvm-mc -triple i386 -show-encoding %s 2>&1 | FileCheck %s --check-prefix=ERROR3 4# ERROR-COUNT-47: error:5# ERROR-NOT: error:6# CHECK: {evex} rcrb $123, %bl7# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xc0,0xdb,0x7b]8 {evex} rcrb $123, %bl9# CHECK: rcrb $123, %bl, %bl10# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xc0,0xdb,0x7b]11 rcrb $123, %bl, %bl12# CHECK: {evex} rcrw $123, %dx13# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xc1,0xda,0x7b]14 {evex} rcrw $123, %dx15# CHECK: rcrw $123, %dx, %dx16# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xc1,0xda,0x7b]17 rcrw $123, %dx, %dx18# CHECK: {evex} rcrl $123, %ecx19# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xc1,0xd9,0x7b]20 {evex} rcrl $123, %ecx21# CHECK: rcrl $123, %ecx, %ecx22# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xc1,0xd9,0x7b]23 rcrl $123, %ecx, %ecx24# CHECK: {evex} rcrq $123, %r925# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xc1,0xd9,0x7b]26 {evex} rcrq $123, %r927# CHECK: rcrq $123, %r9, %r928# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xc1,0xd9,0x7b]29 rcrq $123, %r9, %r930# CHECK: {evex} rcrb $123, 291(%r8,%rax,4)31# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xc0,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]32 {evex} rcrb $123, 291(%r8,%rax,4)33# CHECK: rcrb $123, 291(%r8,%rax,4), %bl34# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xc0,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]35 rcrb $123, 291(%r8,%rax,4), %bl36# CHECK: {evex} rcrw $123, 291(%r8,%rax,4)37# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]38 {evex} rcrw $123, 291(%r8,%rax,4)39# CHECK: rcrw $123, 291(%r8,%rax,4), %dx40# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]41 rcrw $123, 291(%r8,%rax,4), %dx42# CHECK: {evex} rcrl $123, 291(%r8,%rax,4)43# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]44 {evex} rcrl $123, 291(%r8,%rax,4)45# CHECK: rcrl $123, 291(%r8,%rax,4), %ecx46# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]47 rcrl $123, 291(%r8,%rax,4), %ecx48# CHECK: {evex} rcrq $123, 291(%r8,%rax,4)49# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]50 {evex} rcrq $123, 291(%r8,%rax,4)51# CHECK: rcrq $123, 291(%r8,%rax,4), %r952# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]53 rcrq $123, 291(%r8,%rax,4), %r954# CHECK: {evex} rcrb %bl55# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd0,0xdb]56 {evex} rcrb %bl57# CHECK: {evex} rcrb %cl, %bl58# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd2,0xdb]59 {evex} rcrb %cl, %bl60# CHECK: rcrb %cl, %bl, %bl61# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd2,0xdb]62 rcrb %cl, %bl, %bl63# CHECK: {evex} rcrw %cl, %dx64# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd3,0xda]65 {evex} rcrw %cl, %dx66# CHECK: rcrw %cl, %dx, %dx67# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xd3,0xda]68 rcrw %cl, %dx, %dx69# CHECK: {evex} rcrl %cl, %ecx70# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd3,0xd9]71 {evex} rcrl %cl, %ecx72# CHECK: rcrl %cl, %ecx, %ecx73# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xd3,0xd9]74 rcrl %cl, %ecx, %ecx75# CHECK: {evex} rcrq %cl, %r976# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd3,0xd9]77 {evex} rcrq %cl, %r978# CHECK: rcrq %cl, %r9, %r979# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd3,0xd9]80 rcrq %cl, %r9, %r981# CHECK: {evex} rcrb %cl, 291(%r8,%rax,4)82# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd2,0x9c,0x80,0x23,0x01,0x00,0x00]83 {evex} rcrb %cl, 291(%r8,%rax,4)84# CHECK: rcrb %cl, 291(%r8,%rax,4), %bl85# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd2,0x9c,0x80,0x23,0x01,0x00,0x00]86 rcrb %cl, 291(%r8,%rax,4), %bl87# CHECK: {evex} rcrw %cl, 291(%r8,%rax,4)88# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]89 {evex} rcrw %cl, 291(%r8,%rax,4)90# CHECK: rcrw %cl, 291(%r8,%rax,4), %dx91# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]92 rcrw %cl, 291(%r8,%rax,4), %dx93# CHECK: {evex} rcrl %cl, 291(%r8,%rax,4)94# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]95 {evex} rcrl %cl, 291(%r8,%rax,4)96# CHECK: rcrl %cl, 291(%r8,%rax,4), %ecx97# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]98 rcrl %cl, 291(%r8,%rax,4), %ecx99# CHECK: {evex} rcrq %cl, 291(%r8,%rax,4)100# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]101 {evex} rcrq %cl, 291(%r8,%rax,4)102# CHECK: rcrq %cl, 291(%r8,%rax,4), %r9103# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]104 rcrq %cl, 291(%r8,%rax,4), %r9105# CHECK: {evex} rcrw %dx106# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd1,0xda]107 {evex} rcrw %dx108# CHECK: rcrw %dx, %dx109# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xd1,0xda]110 rcrw %dx, %dx111# CHECK: {evex} rcrl %ecx112# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd1,0xd9]113 {evex} rcrl %ecx114# CHECK: rcrl %ecx, %ecx115# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xd1,0xd9]116 rcrl %ecx, %ecx117# CHECK: {evex} rcrq %r9118# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0xd9]119 {evex} rcrq %r9120# CHECK: rcrq %r9, %r9121# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd1,0xd9]122 rcrq %r9, %r9123# CHECK: {evex} rcrb 291(%r8,%rax,4)124# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd0,0x9c,0x80,0x23,0x01,0x00,0x00]125 {evex} rcrb 291(%r8,%rax,4)126# CHECK: rcrb 291(%r8,%rax,4), %bl127# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd0,0x9c,0x80,0x23,0x01,0x00,0x00]128 rcrb 291(%r8,%rax,4), %bl129# CHECK: {evex} rcrw 291(%r8,%rax,4)130# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]131 {evex} rcrw 291(%r8,%rax,4)132# CHECK: rcrw 291(%r8,%rax,4), %dx133# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]134 rcrw 291(%r8,%rax,4), %dx135# CHECK: {evex} rcrl 291(%r8,%rax,4)136# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]137 {evex} rcrl 291(%r8,%rax,4)138# CHECK: rcrl 291(%r8,%rax,4), %ecx139# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]140 rcrl 291(%r8,%rax,4), %ecx141# CHECK: {evex} rcrq 291(%r8,%rax,4)142# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]143 {evex} rcrq 291(%r8,%rax,4)144# CHECK: rcrq 291(%r8,%rax,4), %r9145# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]146 rcrq 291(%r8,%rax,4), %r9147