586 lines · plain
1# RUN: llvm-mc -disassemble -triple=thumbv8.1m.main-none-eabi -mattr=+mve.fp,+fp64 -show-encoding %s | FileCheck %s2# RUN: not llvm-mc -disassemble -triple=thumbv8.1m.main-none-eabi -show-encoding %s &> %t3# RUN: FileCheck --check-prefix=CHECK-NOMVE < %t %s4 5# CHECK: vshlc q0, lr, #8 @ encoding: [0xa8,0xee,0xce,0x0f]6# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding7[0xa8,0xee,0xce,0x0f]8 9# CHECK: vmovlb.s8 q0, q6 @ encoding: [0xa8,0xee,0x4c,0x0f]10# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding11[0xa8,0xee,0x4c,0x0f]12 13# CHECK: vmovlt.s8 q0, q4 @ encoding: [0xa8,0xee,0x48,0x1f]14# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding15[0xa8,0xee,0x48,0x1f]16 17# CHECK: vmovlb.u8 q0, q0 @ encoding: [0xa8,0xfe,0x40,0x0f]18# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding19[0xa8,0xfe,0x40,0x0f]20 21# CHECK: vmovlt.u8 q0, q2 @ encoding: [0xa8,0xfe,0x44,0x1f]22# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding23[0xa8,0xfe,0x44,0x1f]24 25# CHECK: vmovlb.u16 q1, q0 @ encoding: [0xb0,0xfe,0x40,0x2f]26# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding27[0xb0,0xfe,0x40,0x2f]28 29# CHECK: vmovlt.u16 q0, q2 @ encoding: [0xb0,0xfe,0x44,0x1f]30# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding31[0xb0,0xfe,0x44,0x1f]32 33# CHECK: vshllb.s8 q0, q2, #8 @ encoding: [0x31,0xee,0x05,0x0e]34# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding35[0x31,0xee,0x05,0x0e]36 37# CHECK: vshllt.s8 q1, q5, #8 @ encoding: [0x31,0xee,0x0b,0x3e]38# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding39[0x31,0xee,0x0b,0x3e]40 41# CHECK: vshllb.s8 q0, q0, #7 @ encoding: [0xaf,0xee,0x40,0x0f]42# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding43[0xaf,0xee,0x40,0x0f]44 45# CHECK: vshllb.u8 q1, q1, #8 @ encoding: [0x31,0xfe,0x03,0x2e]46# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding47[0x31,0xfe,0x03,0x2e]48 49# CHECK: vshllt.u8 q0, q0, #8 @ encoding: [0x31,0xfe,0x01,0x1e]50# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding51[0x31,0xfe,0x01,0x1e]52 53# CHECK: vshllb.u8 q0, q0, #3 @ encoding: [0xab,0xfe,0x40,0x0f]54# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding55[0xab,0xfe,0x40,0x0f]56 57# CHECK: vshllb.u16 q0, q5, #16 @ encoding: [0x35,0xfe,0x0b,0x0e]58# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding59[0x35,0xfe,0x0b,0x0e]60 61# CHECK: vshllt.u16 q0, q3, #16 @ encoding: [0x35,0xfe,0x07,0x1e]62# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding63[0x35,0xfe,0x07,0x1e]64 65# CHECK: vshllt.s16 q0, q0, #16 @ encoding: [0x35,0xee,0x01,0x1e]66# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding67[0x35,0xee,0x01,0x1e]68 69# CHECK: vshllt.s16 q0, q0, #14 @ encoding: [0xbe,0xee,0x40,0x1f]70# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding71[0xbe,0xee,0x40,0x1f]72 73# CHECK: vshllt.s16 q0, q0, #11 @ encoding: [0xbb,0xee,0x40,0x1f]74# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding75[0xbb,0xee,0x40,0x1f]76 77# CHECK: vshllb.u16 q0, q2, #4 @ encoding: [0xb4,0xfe,0x44,0x0f]78# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding79[0xb4,0xfe,0x44,0x0f]80 81# CHECK: vrshrnb.i16 q0, q3, #1 @ encoding: [0x8f,0xfe,0xc7,0x0f]82# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding83[0x8f,0xfe,0xc7,0x0f]84 85# CHECK: vrshrnt.i16 q0, q2, #5 @ encoding: [0x8b,0xfe,0xc5,0x1f]86# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding87[0x8b,0xfe,0xc5,0x1f]88 89# CHECK: vrshrnb.i32 q0, q4, #8 @ encoding: [0x98,0xfe,0xc9,0x0f]90# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding91[0x98,0xfe,0xc9,0x0f]92 93# CHECK: vrshrnt.i32 q0, q2, #7 @ encoding: [0x99,0xfe,0xc5,0x1f]94# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding95[0x99,0xfe,0xc5,0x1f]96 97# CHECK: vshrnb.i16 q1, q2, #1 @ encoding: [0x8f,0xee,0xc5,0x2f]98# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding99[0x8f,0xee,0xc5,0x2f]100 101# CHECK: vshrnt.i16 q0, q1, #1 @ encoding: [0x8f,0xee,0xc3,0x1f]102# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding103[0x8f,0xee,0xc3,0x1f]104 105# CHECK: vshrnb.i32 q0, q0, #12 @ encoding: [0x94,0xee,0xc1,0x0f]106# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding107[0x94,0xee,0xc1,0x0f]108 109# CHECK: vshrnt.i32 q0, q2, #4 @ encoding: [0x9c,0xee,0xc5,0x1f]110# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding111[0x9c,0xee,0xc5,0x1f]112 113# CHECK: vqrshrunb.s16 q0, q2, #8 @ encoding: [0x88,0xfe,0xc4,0x0f]114# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding115[0x88,0xfe,0xc4,0x0f]116 117# CHECK: vqrshrunt.s16 q0, q0, #6 @ encoding: [0x8a,0xfe,0xc0,0x1f]118# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding119[0x8a,0xfe,0xc0,0x1f]120 121# CHECK: vqrshrunt.s32 q0, q1, #8 @ encoding: [0x98,0xfe,0xc2,0x1f]122# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding123[0x98,0xfe,0xc2,0x1f]124 125# CHECK: vqrshrunb.s32 q0, q7, #13 @ encoding: [0x93,0xfe,0xce,0x0f]126# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding127[0x93,0xfe,0xce,0x0f]128 129# CHECK: vqshrunb.s16 q0, q7, #5 @ encoding: [0x8b,0xee,0xce,0x0f]130# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding131[0x8b,0xee,0xce,0x0f]132 133# CHECK: vqshrunt.s16 q0, q1, #7 @ encoding: [0x89,0xee,0xc2,0x1f]134# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding135[0x89,0xee,0xc2,0x1f]136 137# CHECK: vqshrunb.s32 q0, q6, #4 @ encoding: [0x9c,0xee,0xcc,0x0f]138# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding139[0x9c,0xee,0xcc,0x0f]140 141# CHECK: vqshrunt.s32 q0, q2, #10 @ encoding: [0x96,0xee,0xc4,0x1f]142# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding143[0x96,0xee,0xc4,0x1f]144 145# CHECK: vqrshrnb.s16 q0, q7, #8 @ encoding: [0x88,0xee,0x4f,0x0f]146# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding147[0x88,0xee,0x4f,0x0f]148 149# CHECK: vqrshrnt.u16 q1, q3, #4 @ encoding: [0x8c,0xfe,0x47,0x3f]150# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding151[0x8c,0xfe,0x47,0x3f]152 153# CHECK: vqrshrnb.u32 q0, q1, #7 @ encoding: [0x99,0xfe,0x43,0x0f]154# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding155[0x99,0xfe,0x43,0x0f]156 157# CHECK: vqrshrnt.s32 q0, q1, #11 @ encoding: [0x95,0xee,0x43,0x1f]158# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding159[0x95,0xee,0x43,0x1f]160 161# CHECK: vqshrnb.s16 q0, q6, #5 @ encoding: [0x8b,0xee,0x4c,0x0f]162# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding163[0x8b,0xee,0x4c,0x0f]164 165# CHECK: vqshrnt.s16 q0, q1, #4 @ encoding: [0x8c,0xee,0x42,0x1f]166# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding167[0x8c,0xee,0x42,0x1f]168 169# CHECK: vqshrnb.u16 q0, q3, #7 @ encoding: [0x89,0xfe,0x46,0x0f]170# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding171[0x89,0xfe,0x46,0x0f]172 173# CHECK: vqshrnt.u16 q0, q2, #8 @ encoding: [0x88,0xfe,0x44,0x1f]174# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding175[0x88,0xfe,0x44,0x1f]176 177# CHECK: vqshrnt.s32 q1, q4, #3 @ encoding: [0x9d,0xee,0x48,0x3f]178# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding179[0x9d,0xee,0x48,0x3f]180 181# CHECK: vqshrnb.u32 q0, q2, #14 @ encoding: [0x92,0xfe,0x44,0x0f]182# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding183[0x92,0xfe,0x44,0x0f]184 185# CHECK: vshl.s8 q6, q6, q6 @ encoding: [0x0c,0xef,0x4c,0xc4]186# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding187[0x0c,0xef,0x4c,0xc4]188 189# CHECK: vshl.s16 q0, q4, q2 @ encoding: [0x14,0xef,0x48,0x04]190# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding191[0x14,0xef,0x48,0x04]192 193# CHECK: vshl.s32 q1, q1, q5 @ encoding: [0x2a,0xef,0x42,0x24]194# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding195[0x2a,0xef,0x42,0x24]196 197# CHECK: vshl.u8 q1, q7, q2 @ encoding: [0x04,0xff,0x4e,0x24]198# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding199[0x04,0xff,0x4e,0x24]200 201# CHECK: vshl.u16 q0, q4, q0 @ encoding: [0x10,0xff,0x48,0x04]202# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding203[0x10,0xff,0x48,0x04]204 205# CHECK: vshl.u32 q2, q2, q4 @ encoding: [0x28,0xff,0x44,0x44]206# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding207[0x28,0xff,0x44,0x44]208 209# CHECK: vqshl.s8 q0, q1, q6 @ encoding: [0x0c,0xef,0x52,0x04]210# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding211[0x0c,0xef,0x52,0x04]212 213# CHECK: vqshl.s16 q4, q3, q7 @ encoding: [0x1e,0xef,0x56,0x84]214# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding215[0x1e,0xef,0x56,0x84]216 217# CHECK: vqshl.s32 q0, q5, q5 @ encoding: [0x2a,0xef,0x5a,0x04]218# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding219[0x2a,0xef,0x5a,0x04]220 221# CHECK: vqshl.u8 q0, q0, q6 @ encoding: [0x0c,0xff,0x50,0x04]222# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding223[0x0c,0xff,0x50,0x04]224 225# CHECK: vqshl.u16 q0, q5, q4 @ encoding: [0x18,0xff,0x5a,0x04]226# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding227[0x18,0xff,0x5a,0x04]228 229# CHECK: vqshl.u32 q1, q0, q4 @ encoding: [0x28,0xff,0x50,0x24]230# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding231[0x28,0xff,0x50,0x24]232 233# CHECK: vqrshl.s8 q1, q6, q1 @ encoding: [0x02,0xef,0x5c,0x25]234# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding235[0x02,0xef,0x5c,0x25]236 237# CHECK: vqrshl.s16 q2, q4, q6 @ encoding: [0x1c,0xef,0x58,0x45]238# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding239[0x1c,0xef,0x58,0x45]240 241# CHECK: vqrshl.s32 q0, q0, q5 @ encoding: [0x2a,0xef,0x50,0x05]242# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding243[0x2a,0xef,0x50,0x05]244 245# CHECK: vqrshl.u8 q0, q2, q1 @ encoding: [0x02,0xff,0x54,0x05]246# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding247[0x02,0xff,0x54,0x05]248 249# CHECK: vqrshl.u16 q1, q6, q0 @ encoding: [0x10,0xff,0x5c,0x25]250# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding251[0x10,0xff,0x5c,0x25]252 253# CHECK: vqrshl.u32 q0, q0, q0 @ encoding: [0x20,0xff,0x50,0x05]254# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding255[0x20,0xff,0x50,0x05]256 257# CHECK: vrshl.s8 q0, q6, q4 @ encoding: [0x08,0xef,0x4c,0x05]258# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding259[0x08,0xef,0x4c,0x05]260 261# CHECK: vrshl.s16 q1, q4, q7 @ encoding: [0x1e,0xef,0x48,0x25]262# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding263[0x1e,0xef,0x48,0x25]264 265# CHECK: vrshl.s32 q1, q4, q4 @ encoding: [0x28,0xef,0x48,0x25]266# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding267[0x28,0xef,0x48,0x25]268 269# CHECK: vrshl.u8 q0, q3, q5 @ encoding: [0x0a,0xff,0x46,0x05]270# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding271[0x0a,0xff,0x46,0x05]272 273# CHECK: vrshl.u16 q5, q6, q5 @ encoding: [0x1a,0xff,0x4c,0xa5]274# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding275[0x1a,0xff,0x4c,0xa5]276 277# CHECK: vrshl.u32 q1, q7, q3 @ encoding: [0x26,0xff,0x4e,0x25]278# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding279[0x26,0xff,0x4e,0x25]280 281# CHECK: vsri.8 q0, q2, #3 @ encoding: [0x8d,0xff,0x54,0x04]282# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding283[0x8d,0xff,0x54,0x04]284 285# CHECK: vsri.16 q0, q2, #5 @ encoding: [0x9b,0xff,0x54,0x04]286# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding287[0x9b,0xff,0x54,0x04]288 289# CHECK: vsri.32 q0, q1, #15 @ encoding: [0xb1,0xff,0x52,0x04]290# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding291[0xb1,0xff,0x52,0x04]292 293# CHECK: vsli.8 q0, q3, #3 @ encoding: [0x8b,0xff,0x56,0x05]294# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding295[0x8b,0xff,0x56,0x05]296 297# CHECK: vsli.16 q0, q1, #12 @ encoding: [0x9c,0xff,0x52,0x05]298# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding299[0x9c,0xff,0x52,0x05]300 301# CHECK: vsli.32 q0, q1, #8 @ encoding: [0xa8,0xff,0x52,0x05]302# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding303[0xa8,0xff,0x52,0x05]304 305# CHECK: vqshl.s8 q0, q4, #6 @ encoding: [0x8e,0xef,0x58,0x07]306# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding307[0x8e,0xef,0x58,0x07]308 309# CHECK: vqshl.u8 q0, q6, #6 @ encoding: [0x8e,0xff,0x5c,0x07]310# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding311[0x8e,0xff,0x5c,0x07]312 313# CHECK: vqshl.s16 q1, q2, #5 @ encoding: [0x95,0xef,0x54,0x27]314# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding315[0x95,0xef,0x54,0x27]316 317# CHECK: vqshl.u16 q0, q5, #3 @ encoding: [0x93,0xff,0x5a,0x07]318# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding319[0x93,0xff,0x5a,0x07]320 321# CHECK: vqshl.s32 q1, q3, #29 @ encoding: [0xbd,0xef,0x56,0x27]322# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding323[0xbd,0xef,0x56,0x27]324 325# CHECK: vqshl.u32 q0, q2, #19 @ encoding: [0xb3,0xff,0x54,0x07]326# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding327[0xb3,0xff,0x54,0x07]328 329# CHECK: vqshlu.s8 q0, q1, #0 @ encoding: [0x88,0xff,0x52,0x06]330# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding331[0x88,0xff,0x52,0x06]332 333# CHECK: vqshlu.s16 q2, q1, #12 @ encoding: [0x9c,0xff,0x52,0x46]334# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding335[0x9c,0xff,0x52,0x46]336 337# CHECK: vqshlu.s32 q0, q4, #26 @ encoding: [0xba,0xff,0x58,0x06]338# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding339[0xba,0xff,0x58,0x06]340 341# CHECK: vrshr.s8 q1, q3, #7 @ encoding: [0x89,0xef,0x56,0x22]342# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding343[0x89,0xef,0x56,0x22]344 345# CHECK: vrshr.u8 q1, q3, #2 @ encoding: [0x8e,0xff,0x56,0x22]346# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding347[0x8e,0xff,0x56,0x22]348 349# CHECK: vrshr.s16 q0, q1, #10 @ encoding: [0x96,0xef,0x52,0x02]350# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding351[0x96,0xef,0x52,0x02]352 353# CHECK: vrshr.u16 q0, q5, #12 @ encoding: [0x94,0xff,0x5a,0x02]354# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding355[0x94,0xff,0x5a,0x02]356 357# CHECK: vrshr.s32 q0, q5, #23 @ encoding: [0xa9,0xef,0x5a,0x02]358# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding359[0xa9,0xef,0x5a,0x02]360 361# CHECK: vrshr.u32 q0, q1, #30 @ encoding: [0xa2,0xff,0x52,0x02]362# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding363[0xa2,0xff,0x52,0x02]364 365# CHECK: vshr.s8 q0, q7, #4 @ encoding: [0x8c,0xef,0x5e,0x00]366# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding367[0x8c,0xef,0x5e,0x00]368 369# CHECK: vshr.u8 q0, q2, #5 @ encoding: [0x8b,0xff,0x54,0x00]370# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding371[0x8b,0xff,0x54,0x00]372 373# CHECK: vshr.s16 q0, q3, #16 @ encoding: [0x90,0xef,0x56,0x00]374# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding375[0x90,0xef,0x56,0x00]376 377# CHECK: vshr.u16 q7, q6, #8 @ encoding: [0x98,0xff,0x5c,0xe0]378# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding379[0x98,0xff,0x5c,0xe0]380 381# CHECK: vshr.s32 q0, q6, #24 @ encoding: [0xa8,0xef,0x5c,0x00]382# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding383[0xa8,0xef,0x5c,0x00]384 385# CHECK: vshr.u32 q2, q5, #30 @ encoding: [0xa2,0xff,0x5a,0x40]386# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding387[0xa2,0xff,0x5a,0x40]388 389# CHECK: vshl.i8 q0, q6, #6 @ encoding: [0x8e,0xef,0x5c,0x05]390# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding391[0x8e,0xef,0x5c,0x05]392 393# CHECK: vshl.i16 q1, q0, #12 @ encoding: [0x9c,0xef,0x50,0x25]394# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding395[0x9c,0xef,0x50,0x25]396 397# CHECK: vshl.i32 q2, q2, #26 @ encoding: [0xba,0xef,0x54,0x45]398# CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding399[0xba,0xef,0x54,0x45]400 401# CHECK: vpst @ encoding: [0x71,0xfe,0x4d,0x0f]402# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]403[0x71,0xfe,0x4d,0x0f]404[0xb4,0xee,0x42,0x1f]405 406# CHECK: vpstt @ encoding: [0x31,0xfe,0x4d,0x8f]407# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]408# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]409[0x31,0xfe,0x4d,0x8f]410[0xb4,0xee,0x42,0x1f]411[0xb8,0xfe,0x42,0x0f]412 413# CHECK: vpste @ encoding: [0x71,0xfe,0x4d,0x8f]414# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding415# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]416# CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding417# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]418# CHECK-NOMVE: [[@LINE+3]]:2: warning: invalid instruction encoding419[0x71,0xfe,0x4d,0x8f]420[0xb4,0xee,0x42,0x1f]421[0xb8,0xfe,0x42,0x0f]422 423# CHECK: vpsttt @ encoding: [0x31,0xfe,0x4d,0x4f]424# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding425# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]426# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding427# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]428# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding429# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]430# CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding431[0x31,0xfe,0x4d,0x4f]432[0xb4,0xee,0x42,0x1f]433[0xb8,0xfe,0x42,0x0f]434[0xb4,0xee,0x42,0x1f]435 436# CHECK: vpstte @ encoding: [0x31,0xfe,0x4d,0xcf]437# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding438# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]439# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding440# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]441# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding442# CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]443# CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding444[0x31,0xfe,0x4d,0xcf]445[0xb4,0xee,0x42,0x1f]446[0xb8,0xfe,0x42,0x0f]447[0xb4,0xee,0x42,0x1f]448 449# CHECK: vpstet @ encoding: [0x71,0xfe,0x4d,0xcf]450# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding451# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]452# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding453# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]454# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding455# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]456# CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding457[0x71,0xfe,0x4d,0xcf]458[0xb4,0xee,0x42,0x1f]459[0xb8,0xfe,0x42,0x0f]460[0xb4,0xee,0x42,0x1f]461 462# CHECK: vpstee @ encoding: [0x71,0xfe,0x4d,0x4f]463# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding464# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]465# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding466# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]467# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding468# CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]469# CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding470[0x71,0xfe,0x4d,0x4f]471[0xb4,0xee,0x42,0x1f]472[0xb8,0xfe,0x42,0x0f]473[0xb4,0xee,0x42,0x1f]474 475# CHECK: vpstttt @ encoding: [0x31,0xfe,0x4d,0x2f]476# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding477# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]478# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding479# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]480# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding481# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]482# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding483# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]484# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding485[0x31,0xfe,0x4d,0x2f]486[0xb4,0xee,0x42,0x1f]487[0xb8,0xfe,0x42,0x0f]488[0xb4,0xee,0x42,0x1f]489[0xb8,0xfe,0x42,0x0f]490 491# CHECK: vpsttte @ encoding: [0x31,0xfe,0x4d,0x6f]492# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding493# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]494# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding495# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]496# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding497# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]498# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding499# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]500# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding501[0x31,0xfe,0x4d,0x6f]502[0xb4,0xee,0x42,0x1f]503[0xb8,0xfe,0x42,0x0f]504[0xb4,0xee,0x42,0x1f]505[0xb8,0xfe,0x42,0x0f]506 507# CHECK: vpsttet @ encoding: [0x31,0xfe,0x4d,0xef]508# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding509# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]510# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding511# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]512# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding513# CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]514# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding515# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]516# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding517[0x31,0xfe,0x4d,0xef]518[0xb4,0xee,0x42,0x1f]519[0xb8,0xfe,0x42,0x0f]520[0xb4,0xee,0x42,0x1f]521[0xb8,0xfe,0x42,0x0f]522 523# CHECK: vpsttee @ encoding: [0x31,0xfe,0x4d,0xaf]524# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding525# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]526# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding527# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]528# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding529# CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]530# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding531# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]532# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding533[0x31,0xfe,0x4d,0xaf]534[0xb4,0xee,0x42,0x1f]535[0xb8,0xfe,0x42,0x0f]536[0xb4,0xee,0x42,0x1f]537[0xb8,0xfe,0x42,0x0f]538 539# CHECK: vpstett @ encoding: [0x71,0xfe,0x4d,0xaf]540# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding541# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]542# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding543# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]544# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding545# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]546# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding547# CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]548# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding549[0x71,0xfe,0x4d,0xaf]550[0xb4,0xee,0x42,0x1f]551[0xb8,0xfe,0x42,0x0f]552[0xb4,0xee,0x42,0x1f]553[0xb8,0xfe,0x42,0x0f]554 555# CHECK: vpstete @ encoding: [0x71,0xfe,0x4d,0xef]556# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding557# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]558# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding559# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]560# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding561# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]562# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding563# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]564# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding565[0x71,0xfe,0x4d,0xef]566[0xb4,0xee,0x42,0x1f]567[0xb8,0xfe,0x42,0x0f]568[0xb4,0xee,0x42,0x1f]569[0xb8,0xfe,0x42,0x0f]570 571# CHECK: vpsteee @ encoding: [0x71,0xfe,0x4d,0x2f]572# CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding573# CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]574# CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding575# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]576# CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding577# CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]578# CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding579# CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]580# CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding581[0x71,0xfe,0x4d,0x2f]582[0xb4,0xee,0x42,0x1f]583[0xb8,0xfe,0x42,0x0f]584[0xb4,0xee,0x42,0x1f]585[0xb8,0xfe,0x42,0x0f]586