245 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-60: error:5# ERROR-NOT: error:6# CHECK: {evex} cmpaxadd %ecx, %edx, 123(%eax,%ebx,4)7# CHECK: encoding: [0x67,0x62,0xf2,0x75,0x08,0xe7,0x54,0x98,0x7b]8 {evex} cmpaxadd %ecx, %edx, 123(%eax,%ebx,4)9 10# CHECK: {evex} cmpaxadd %r9, %r15, 123(%rax,%rbx,4)11# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe7,0x7c,0x98,0x7b]12 {evex} cmpaxadd %r9, %r15, 123(%rax,%rbx,4)13 14# CHECK: cmpaxadd %r18d, %r22d, 291(%r28,%r29,4)15# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe7,0xb4,0xac,0x23,0x01,0x00,0x00]16 cmpaxadd %r18d, %r22d, 291(%r28,%r29,4)17 18# CHECK: cmpaxadd %r19, %r23, 291(%r28,%r29,4)19# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe7,0xbc,0xac,0x23,0x01,0x00,0x00]20 cmpaxadd %r19, %r23, 291(%r28,%r29,4)21 22# CHECK: {evex} cmpbexadd %ecx, %edx, 123(%rax,%rbx,4)23# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe6,0x54,0x98,0x7b]24 {evex} cmpbexadd %ecx, %edx, 123(%rax,%rbx,4)25 26# CHECK: {evex} cmpbexadd %r9, %r15, 123(%rax,%rbx,4)27# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe6,0x7c,0x98,0x7b]28 {evex} cmpbexadd %r9, %r15, 123(%rax,%rbx,4)29 30# CHECK: cmpbexadd %r18d, %r22d, 291(%r28,%r29,4)31# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe6,0xb4,0xac,0x23,0x01,0x00,0x00]32 cmpbexadd %r18d, %r22d, 291(%r28,%r29,4)33 34# CHECK: cmpbexadd %r19, %r23, 291(%r28,%r29,4)35# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe6,0xbc,0xac,0x23,0x01,0x00,0x00]36 cmpbexadd %r19, %r23, 291(%r28,%r29,4)37 38# CHECK: {evex} cmpbxadd %ecx, %edx, 123(%rax,%rbx,4)39# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe2,0x54,0x98,0x7b]40 {evex} cmpbxadd %ecx, %edx, 123(%rax,%rbx,4)41 42# CHECK: {evex} cmpbxadd %r9, %r15, 123(%rax,%rbx,4)43# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe2,0x7c,0x98,0x7b]44 {evex} cmpbxadd %r9, %r15, 123(%rax,%rbx,4)45 46# CHECK: cmpbxadd %r18d, %r22d, 291(%r28,%r29,4)47# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe2,0xb4,0xac,0x23,0x01,0x00,0x00]48 cmpbxadd %r18d, %r22d, 291(%r28,%r29,4)49 50# CHECK: cmpbxadd %r19, %r23, 291(%r28,%r29,4)51# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe2,0xbc,0xac,0x23,0x01,0x00,0x00]52 cmpbxadd %r19, %r23, 291(%r28,%r29,4)53 54# CHECK: {evex} cmpexadd %ecx, %edx, 123(%rax,%rbx,4)55# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe4,0x54,0x98,0x7b]56 {evex} cmpexadd %ecx, %edx, 123(%rax,%rbx,4)57 58# CHECK: {evex} cmpexadd %r9, %r15, 123(%rax,%rbx,4)59# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe4,0x7c,0x98,0x7b]60 {evex} cmpexadd %r9, %r15, 123(%rax,%rbx,4)61 62# CHECK: cmpexadd %r18d, %r22d, 291(%r28,%r29,4)63# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe4,0xb4,0xac,0x23,0x01,0x00,0x00]64 cmpexadd %r18d, %r22d, 291(%r28,%r29,4)65 66# CHECK: cmpexadd %r19, %r23, 291(%r28,%r29,4)67# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe4,0xbc,0xac,0x23,0x01,0x00,0x00]68 cmpexadd %r19, %r23, 291(%r28,%r29,4)69 70# CHECK: {evex} cmpgexadd %ecx, %edx, 123(%rax,%rbx,4)71# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xed,0x54,0x98,0x7b]72 {evex} cmpgexadd %ecx, %edx, 123(%rax,%rbx,4)73 74# CHECK: {evex} cmpgexadd %r9, %r15, 123(%rax,%rbx,4)75# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xed,0x7c,0x98,0x7b]76 {evex} cmpgexadd %r9, %r15, 123(%rax,%rbx,4)77 78# CHECK: cmpgexadd %r18d, %r22d, 291(%r28,%r29,4)79# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xed,0xb4,0xac,0x23,0x01,0x00,0x00]80 cmpgexadd %r18d, %r22d, 291(%r28,%r29,4)81 82# CHECK: cmpgexadd %r19, %r23, 291(%r28,%r29,4)83# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xed,0xbc,0xac,0x23,0x01,0x00,0x00]84 cmpgexadd %r19, %r23, 291(%r28,%r29,4)85 86# CHECK: {evex} cmpgxadd %ecx, %edx, 123(%rax,%rbx,4)87# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xef,0x54,0x98,0x7b]88 {evex} cmpgxadd %ecx, %edx, 123(%rax,%rbx,4)89 90# CHECK: {evex} cmpgxadd %r9, %r15, 123(%rax,%rbx,4)91# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xef,0x7c,0x98,0x7b]92 {evex} cmpgxadd %r9, %r15, 123(%rax,%rbx,4)93 94# CHECK: cmpgxadd %r18d, %r22d, 291(%r28,%r29,4)95# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xef,0xb4,0xac,0x23,0x01,0x00,0x00]96 cmpgxadd %r18d, %r22d, 291(%r28,%r29,4)97 98# CHECK: cmpgxadd %r19, %r23, 291(%r28,%r29,4)99# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xef,0xbc,0xac,0x23,0x01,0x00,0x00]100 cmpgxadd %r19, %r23, 291(%r28,%r29,4)101 102# CHECK: {evex} cmplexadd %ecx, %edx, 123(%rax,%rbx,4)103# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xee,0x54,0x98,0x7b]104 {evex} cmplexadd %ecx, %edx, 123(%rax,%rbx,4)105 106# CHECK: {evex} cmplexadd %r9, %r15, 123(%rax,%rbx,4)107# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xee,0x7c,0x98,0x7b]108 {evex} cmplexadd %r9, %r15, 123(%rax,%rbx,4)109 110# CHECK: cmplexadd %r18d, %r22d, 291(%r28,%r29,4)111# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xee,0xb4,0xac,0x23,0x01,0x00,0x00]112 cmplexadd %r18d, %r22d, 291(%r28,%r29,4)113 114# CHECK: cmplexadd %r19, %r23, 291(%r28,%r29,4)115# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xee,0xbc,0xac,0x23,0x01,0x00,0x00]116 cmplexadd %r19, %r23, 291(%r28,%r29,4)117 118# CHECK: {evex} cmplxadd %ecx, %edx, 123(%rax,%rbx,4)119# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xec,0x54,0x98,0x7b]120 {evex} cmplxadd %ecx, %edx, 123(%rax,%rbx,4)121 122# CHECK: {evex} cmplxadd %r9, %r15, 123(%rax,%rbx,4)123# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xec,0x7c,0x98,0x7b]124 {evex} cmplxadd %r9, %r15, 123(%rax,%rbx,4)125 126# CHECK: cmplxadd %r18d, %r22d, 291(%r28,%r29,4)127# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xec,0xb4,0xac,0x23,0x01,0x00,0x00]128 cmplxadd %r18d, %r22d, 291(%r28,%r29,4)129 130# CHECK: cmplxadd %r19, %r23, 291(%r28,%r29,4)131# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xec,0xbc,0xac,0x23,0x01,0x00,0x00]132 cmplxadd %r19, %r23, 291(%r28,%r29,4)133 134# CHECK: {evex} cmpnexadd %ecx, %edx, 123(%rax,%rbx,4)135# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe5,0x54,0x98,0x7b]136 {evex} cmpnexadd %ecx, %edx, 123(%rax,%rbx,4)137 138# CHECK: {evex} cmpnexadd %r9, %r15, 123(%rax,%rbx,4)139# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe5,0x7c,0x98,0x7b]140 {evex} cmpnexadd %r9, %r15, 123(%rax,%rbx,4)141 142# CHECK: cmpnexadd %r18d, %r22d, 291(%r28,%r29,4)143# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe5,0xb4,0xac,0x23,0x01,0x00,0x00]144 cmpnexadd %r18d, %r22d, 291(%r28,%r29,4)145 146# CHECK: cmpnexadd %r19, %r23, 291(%r28,%r29,4)147# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe5,0xbc,0xac,0x23,0x01,0x00,0x00]148 cmpnexadd %r19, %r23, 291(%r28,%r29,4)149 150# CHECK: {evex} cmpnoxadd %ecx, %edx, 123(%rax,%rbx,4)151# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe1,0x54,0x98,0x7b]152 {evex} cmpnoxadd %ecx, %edx, 123(%rax,%rbx,4)153 154# CHECK: {evex} cmpnoxadd %r9, %r15, 123(%rax,%rbx,4)155# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe1,0x7c,0x98,0x7b]156 {evex} cmpnoxadd %r9, %r15, 123(%rax,%rbx,4)157 158# CHECK: cmpnoxadd %r18d, %r22d, 291(%r28,%r29,4)159# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe1,0xb4,0xac,0x23,0x01,0x00,0x00]160 cmpnoxadd %r18d, %r22d, 291(%r28,%r29,4)161 162# CHECK: cmpnoxadd %r19, %r23, 291(%r28,%r29,4)163# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe1,0xbc,0xac,0x23,0x01,0x00,0x00]164 cmpnoxadd %r19, %r23, 291(%r28,%r29,4)165 166# CHECK: {evex} cmpnpxadd %ecx, %edx, 123(%rax,%rbx,4)167# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xeb,0x54,0x98,0x7b]168 {evex} cmpnpxadd %ecx, %edx, 123(%rax,%rbx,4)169 170# CHECK: {evex} cmpnpxadd %r9, %r15, 123(%rax,%rbx,4)171# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xeb,0x7c,0x98,0x7b]172 {evex} cmpnpxadd %r9, %r15, 123(%rax,%rbx,4)173 174# CHECK: cmpnpxadd %r18d, %r22d, 291(%r28,%r29,4)175# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xeb,0xb4,0xac,0x23,0x01,0x00,0x00]176 cmpnpxadd %r18d, %r22d, 291(%r28,%r29,4)177 178# CHECK: cmpnpxadd %r19, %r23, 291(%r28,%r29,4)179# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xeb,0xbc,0xac,0x23,0x01,0x00,0x00]180 cmpnpxadd %r19, %r23, 291(%r28,%r29,4)181 182# CHECK: {evex} cmpnsxadd %ecx, %edx, 123(%rax,%rbx,4)183# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe9,0x54,0x98,0x7b]184 {evex} cmpnsxadd %ecx, %edx, 123(%rax,%rbx,4)185 186# CHECK: {evex} cmpnsxadd %r9, %r15, 123(%rax,%rbx,4)187# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe9,0x7c,0x98,0x7b]188 {evex} cmpnsxadd %r9, %r15, 123(%rax,%rbx,4)189 190# CHECK: cmpnsxadd %r18d, %r22d, 291(%r28,%r29,4)191# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe9,0xb4,0xac,0x23,0x01,0x00,0x00]192 cmpnsxadd %r18d, %r22d, 291(%r28,%r29,4)193 194# CHECK: cmpnsxadd %r19, %r23, 291(%r28,%r29,4)195# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe9,0xbc,0xac,0x23,0x01,0x00,0x00]196 cmpnsxadd %r19, %r23, 291(%r28,%r29,4)197 198# CHECK: {evex} cmpoxadd %ecx, %edx, 123(%rax,%rbx,4)199# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe0,0x54,0x98,0x7b]200 {evex} cmpoxadd %ecx, %edx, 123(%rax,%rbx,4)201 202# CHECK: {evex} cmpoxadd %r9, %r15, 123(%rax,%rbx,4)203# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe0,0x7c,0x98,0x7b]204 {evex} cmpoxadd %r9, %r15, 123(%rax,%rbx,4)205 206# CHECK: cmpoxadd %r18d, %r22d, 291(%r28,%r29,4)207# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe0,0xb4,0xac,0x23,0x01,0x00,0x00]208 cmpoxadd %r18d, %r22d, 291(%r28,%r29,4)209 210# CHECK: cmpoxadd %r19, %r23, 291(%r28,%r29,4)211# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe0,0xbc,0xac,0x23,0x01,0x00,0x00]212 cmpoxadd %r19, %r23, 291(%r28,%r29,4)213 214# CHECK: {evex} cmppxadd %ecx, %edx, 123(%rax,%rbx,4)215# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xea,0x54,0x98,0x7b]216 {evex} cmppxadd %ecx, %edx, 123(%rax,%rbx,4)217 218# CHECK: {evex} cmppxadd %r9, %r15, 123(%rax,%rbx,4)219# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xea,0x7c,0x98,0x7b]220 {evex} cmppxadd %r9, %r15, 123(%rax,%rbx,4)221 222# CHECK: cmppxadd %r18d, %r22d, 291(%r28,%r29,4)223# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xea,0xb4,0xac,0x23,0x01,0x00,0x00]224 cmppxadd %r18d, %r22d, 291(%r28,%r29,4)225 226# CHECK: cmppxadd %r19, %r23, 291(%r28,%r29,4)227# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xea,0xbc,0xac,0x23,0x01,0x00,0x00]228 cmppxadd %r19, %r23, 291(%r28,%r29,4)229 230# CHECK: {evex} cmpsxadd %ecx, %edx, 123(%rax,%rbx,4)231# CHECK: encoding: [0x62,0xf2,0x75,0x08,0xe8,0x54,0x98,0x7b]232 {evex} cmpsxadd %ecx, %edx, 123(%rax,%rbx,4)233 234# CHECK: {evex} cmpsxadd %r9, %r15, 123(%rax,%rbx,4)235# CHECK: encoding: [0x62,0x72,0xb5,0x08,0xe8,0x7c,0x98,0x7b]236 {evex} cmpsxadd %r9, %r15, 123(%rax,%rbx,4)237 238# CHECK: cmpsxadd %r18d, %r22d, 291(%r28,%r29,4)239# CHECK: encoding: [0x62,0x8a,0x69,0x00,0xe8,0xb4,0xac,0x23,0x01,0x00,0x00]240 cmpsxadd %r18d, %r22d, 291(%r28,%r29,4)241 242# CHECK: cmpsxadd %r19, %r23, 291(%r28,%r29,4)243# CHECK: encoding: [0x62,0x8a,0xe1,0x00,0xe8,0xbc,0xac,0x23,0x01,0x00,0x00]244 cmpsxadd %r19, %r23, 291(%r28,%r29,4)245