brintos

brintos / llvm-project-archived public Read only

0
0
Text · 19.9 KiB · 7a7872f Raw
473 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2p3 < %s \2// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \4// RUN:        | FileCheck %s --check-prefix=CHECK-ERROR5// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2p3 < %s \6// RUN:        | llvm-objdump -d --mattr=+sme2p3 --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-INST7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2p3 < %s \8// RUN:        | llvm-objdump -d --mattr=-sme2p3 --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-UNKNOWN9// Disassemble encoding and check the re-encoding (-show-encoding) matches.10// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2p3 < %s \11// RUN:        | sed '/.text/d' | sed 's/.*encoding: //g' \12// RUN:        | llvm-mc -triple=aarch64 -mattr=+sme2p3 -disassemble -show-encoding \13// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST14 15// ----------------------------------------------------------16// Lookup table read with 6-bit indices (single)17 18luti6 z0.b, zt0, z019// CHECK-INST: luti6 z0.b, zt0, z020// CHECK-ENCODING: encoding: [0x00,0x40,0xc8,0xc0]21// CHECK-ERROR: instruction requires: sme2p322// CHECK-UNKNOWN: c0c84000 <unknown>23 24luti6 z31.b, zt0, z025// CHECK-INST: luti6 z31.b, zt0, z026// CHECK-ENCODING: encoding: [0x1f,0x40,0xc8,0xc0]27// CHECK-ERROR: instruction requires: sme2p328// CHECK-UNKNOWN: c0c8401f <unknown>29 30luti6 z0.b, zt0, z3131// CHECK-INST: luti6 z0.b, zt0, z3132// CHECK-ENCODING: encoding: [0xe0,0x43,0xc8,0xc0]33// CHECK-ERROR: instruction requires: sme2p334// CHECK-UNKNOWN: c0c843e0 <unknown>35 36luti6 z31.b, zt0, z3137// CHECK-INST: luti6 z31.b, zt0, z3138// CHECK-ENCODING: encoding: [0xff,0x43,0xc8,0xc0]39// CHECK-ERROR: instruction requires: sme2p340// CHECK-UNKNOWN: c0c843ff <unknown>41 42// ----------------------------------------------------------43// Lookup table read with 6-bit indices (16-bit) - consecutive44 45luti6 { z0.h - z3.h }, { z0.h, z1.h }, { z0, z1 }[0]46// CHECK-INST: luti6 { z0.h - z3.h }, { z0.h, z1.h }, { z0, z1 }[0]47// CHECK-ENCODING: encoding: [0x00,0xf4,0x20,0xc1]48// CHECK-ERROR: instruction requires: sme2p349// CHECK-UNKNOWN: c120f400 <unknown>50 51luti6 { z8.h - z11.h }, { z0.h, z1.h }, { z0, z1 }[0]52// CHECK-INST: luti6 { z8.h - z11.h }, { z0.h, z1.h }, { z0, z1 }[0]53// CHECK-ENCODING: encoding: [0x08,0xf4,0x20,0xc1]54// CHECK-ERROR: instruction requires: sme2p355// CHECK-UNKNOWN: c120f408 <unknown>56 57luti6 { z20.h - z23.h }, { z0.h, z1.h }, { z0, z1 }[0]58// CHECK-INST: luti6 { z20.h - z23.h }, { z0.h, z1.h }, { z0, z1 }[0]59// CHECK-ENCODING: encoding: [0x14,0xf4,0x20,0xc1]60// CHECK-ERROR: instruction requires: sme2p361// CHECK-UNKNOWN: c120f414 <unknown>62 63luti6 { z28.h - z31.h }, { z0.h, z1.h }, { z0, z1 }[0]64// CHECK-INST: luti6 { z28.h - z31.h }, { z0.h, z1.h }, { z0, z1 }[0]65// CHECK-ENCODING: encoding: [0x1c,0xf4,0x20,0xc1]66// CHECK-ERROR: instruction requires: sme2p367// CHECK-UNKNOWN: c120f41c <unknown>68 69luti6 { z0.h - z3.h }, { z31.h, z0.h }, { z31, z0 }[1]70// CHECK-INST: luti6 { z0.h - z3.h }, { z31.h, z0.h }, { z31, z0 }[1]71// CHECK-ENCODING: encoding: [0xe0,0xf7,0x7f,0xc1]72// CHECK-ERROR: instruction requires: sme2p373// CHECK-UNKNOWN: c17ff7e0 <unknown>74 75luti6 { z8.h - z11.h }, { z31.h, z0.h }, { z31, z0 }[1]76// CHECK-INST: luti6 { z8.h - z11.h }, { z31.h, z0.h }, { z31, z0 }[1]77// CHECK-ENCODING: encoding: [0xe8,0xf7,0x7f,0xc1]78// CHECK-ERROR: instruction requires: sme2p379// CHECK-UNKNOWN: c17ff7e8 <unknown>80 81luti6 { z20.h - z23.h }, { z31.h, z0.h }, { z31, z0 }[1]82// CHECK-INST: luti6 { z20.h - z23.h }, { z31.h, z0.h }, { z31, z0 }[1]83// CHECK-ENCODING: encoding: [0xf4,0xf7,0x7f,0xc1]84// CHECK-ERROR: instruction requires: sme2p385// CHECK-UNKNOWN: c17ff7f4 <unknown>86 87luti6 { z28.h - z31.h }, { z31.h, z0.h }, { z31, z0 }[1]88// CHECK-INST: luti6 { z28.h - z31.h }, { z31.h, z0.h }, { z31, z0 }[1]89// CHECK-ENCODING: encoding: [0xfc,0xf7,0x7f,0xc1]90// CHECK-ERROR: instruction requires: sme2p391// CHECK-UNKNOWN: c17ff7fc <unknown>92 93// ----------------------------------------------------------94// Lookup table read with 6-bit indices (16-bit) - strided95 96luti6 { z0.h, z4.h, z8.h, z12.h }, { z0.h, z1.h }, { z0, z1 }[0]97// CHECK-INST: luti6 { z0.h, z4.h, z8.h, z12.h }, { z0.h, z1.h }, { z0, z1 }[0]98// CHECK-ENCODING: encoding: [0x00,0xfc,0x20,0xc1]99// CHECK-ERROR: instruction requires: sme2p3100// CHECK-UNKNOWN: c120fc00 <unknown>101 102luti6 { z1.h, z5.h, z9.h, z13.h }, { z0.h, z1.h }, { z0, z1 }[0]103// CHECK-INST: luti6 { z1.h, z5.h, z9.h, z13.h }, { z0.h, z1.h }, { z0, z1 }[0]104// CHECK-ENCODING: encoding: [0x01,0xfc,0x20,0xc1]105// CHECK-ERROR: instruction requires: sme2p3106// CHECK-UNKNOWN: c120fc01 <unknown>107 108luti6 { z2.h, z6.h, z10.h, z14.h }, { z0.h, z1.h }, { z0, z1 }[0]109// CHECK-INST: luti6 { z2.h, z6.h, z10.h, z14.h }, { z0.h, z1.h }, { z0, z1 }[0]110// CHECK-ENCODING: encoding: [0x02,0xfc,0x20,0xc1]111// CHECK-ERROR: instruction requires: sme2p3112// CHECK-UNKNOWN: c120fc02 <unknown>113 114luti6 { z3.h, z7.h, z11.h, z15.h }, { z0.h, z1.h }, { z0, z1 }[0]115// CHECK-INST: luti6 { z3.h, z7.h, z11.h, z15.h }, { z0.h, z1.h }, { z0, z1 }[0]116// CHECK-ENCODING: encoding: [0x03,0xfc,0x20,0xc1]117// CHECK-ERROR: instruction requires: sme2p3118// CHECK-UNKNOWN: c120fc03 <unknown>119 120luti6 { z16.h, z20.h, z24.h, z28.h }, { z0.h, z1.h }, { z0, z1 }[0]121// CHECK-INST: luti6 { z16.h, z20.h, z24.h, z28.h }, { z0.h, z1.h }, { z0, z1 }[0]122// CHECK-ENCODING: encoding: [0x10,0xfc,0x20,0xc1]123// CHECK-ERROR: instruction requires: sme2p3124// CHECK-UNKNOWN: c120fc10 <unknown>125 126luti6 { z17.h, z21.h, z25.h, z29.h }, { z0.h, z1.h }, { z0, z1 }[0]127// CHECK-INST: luti6 { z17.h, z21.h, z25.h, z29.h }, { z0.h, z1.h }, { z0, z1 }[0]128// CHECK-ENCODING: encoding: [0x11,0xfc,0x20,0xc1]129// CHECK-ERROR: instruction requires: sme2p3130// CHECK-UNKNOWN: c120fc11 <unknown>131 132luti6 { z18.h, z22.h, z26.h, z30.h }, { z0.h, z1.h }, { z0, z1 }[0]133// CHECK-INST: luti6 { z18.h, z22.h, z26.h, z30.h }, { z0.h, z1.h }, { z0, z1 }[0]134// CHECK-ENCODING: encoding: [0x12,0xfc,0x20,0xc1]135// CHECK-ERROR: instruction requires: sme2p3136// CHECK-UNKNOWN: c120fc12 <unknown>137 138luti6 { z19.h, z23.h, z27.h, z31.h }, { z0.h, z1.h }, { z0, z1 }[0]139// CHECK-INST: luti6 { z19.h, z23.h, z27.h, z31.h }, { z0.h, z1.h }, { z0, z1 }[0]140// CHECK-ENCODING: encoding: [0x13,0xfc,0x20,0xc1]141// CHECK-ERROR: instruction requires: sme2p3142// CHECK-UNKNOWN: c120fc13 <unknown>143 144luti6 { z0.h, z4.h, z8.h, z12.h }, { z31.h, z0.h }, { z31, z0 }[1]145// CHECK-INST: luti6 { z0.h, z4.h, z8.h, z12.h }, { z31.h, z0.h }, { z31, z0 }[1]146// CHECK-ENCODING: encoding: [0xe0,0xff,0x7f,0xc1]147// CHECK-ERROR: instruction requires: sme2p3148// CHECK-UNKNOWN: c17fffe0 <unknown>149 150luti6 { z1.h, z5.h, z9.h, z13.h }, { z31.h, z0.h }, { z31, z0 }[1]151// CHECK-INST: luti6 { z1.h, z5.h, z9.h, z13.h }, { z31.h, z0.h }, { z31, z0 }[1]152// CHECK-ENCODING: encoding: [0xe1,0xff,0x7f,0xc1]153// CHECK-ERROR: instruction requires: sme2p3154// CHECK-UNKNOWN: c17fffe1 <unknown>155 156luti6 { z2.h, z6.h, z10.h, z14.h }, { z31.h, z0.h }, { z31, z0 }[1]157// CHECK-INST: luti6 { z2.h, z6.h, z10.h, z14.h }, { z31.h, z0.h }, { z31, z0 }[1]158// CHECK-ENCODING: encoding: [0xe2,0xff,0x7f,0xc1]159// CHECK-ERROR: instruction requires: sme2p3160// CHECK-UNKNOWN: c17fffe2 <unknown>161 162luti6 { z3.h, z7.h, z11.h, z15.h }, { z31.h, z0.h }, { z31, z0 }[1]163// CHECK-INST: luti6 { z3.h, z7.h, z11.h, z15.h }, { z31.h, z0.h }, { z31, z0 }[1]164// CHECK-ENCODING: encoding: [0xe3,0xff,0x7f,0xc1]165// CHECK-ERROR: instruction requires: sme2p3166// CHECK-UNKNOWN: c17fffe3 <unknown>167 168luti6 { z16.h, z20.h, z24.h, z28.h }, { z31.h, z0.h }, { z31, z0 }[1]169// CHECK-INST: luti6 { z16.h, z20.h, z24.h, z28.h }, { z31.h, z0.h }, { z31, z0 }[1]170// CHECK-ENCODING: encoding: [0xf0,0xff,0x7f,0xc1]171// CHECK-ERROR: instruction requires: sme2p3172// CHECK-UNKNOWN: c17ffff0 <unknown>173 174luti6 { z17.h, z21.h, z25.h, z29.h }, { z31.h, z0.h }, { z31, z0 }[1]175// CHECK-INST: luti6 { z17.h, z21.h, z25.h, z29.h }, { z31.h, z0.h }, { z31, z0 }[1]176// CHECK-ENCODING: encoding: [0xf1,0xff,0x7f,0xc1]177// CHECK-ERROR: instruction requires: sme2p3178// CHECK-UNKNOWN: c17ffff1 <unknown>179 180luti6 { z18.h, z22.h, z26.h, z30.h }, { z31.h, z0.h }, { z31, z0 }[1]181// CHECK-INST: luti6 { z18.h, z22.h, z26.h, z30.h }, { z31.h, z0.h }, { z31, z0 }[1]182// CHECK-ENCODING: encoding: [0xf2,0xff,0x7f,0xc1]183// CHECK-ERROR: instruction requires: sme2p3184// CHECK-UNKNOWN: c17ffff2 <unknown>185 186luti6 { z19.h, z23.h, z27.h, z31.h }, { z31.h, z0.h }, { z31, z0 }[1]187// CHECK-INST: luti6 { z19.h, z23.h, z27.h, z31.h }, { z31.h, z0.h }, { z31, z0 }[1]188// CHECK-ENCODING: encoding: [0xf3,0xff,0x7f,0xc1]189// CHECK-ERROR: instruction requires: sme2p3190// CHECK-UNKNOWN: c17ffff3 <unknown>191 192// ----------------------------------------------------------193// Lookup table read with 6-bit indices (8-bit) - consecutive194 195luti6 { z8.b - z11.b }, zt0, { z0 - z2 }196// CHECK-INST: luti6 { z8.b - z11.b }, zt0, { z0 - z2 }197// CHECK-ENCODING: encoding: [0x08,0x00,0x8a,0xc0]198// CHECK-ERROR: instruction requires: sme2p3199// CHECK-UNKNOWN: c08a0008 <unknown>200 201luti6 { z20.b - z23.b }, zt0, { z0 - z2 }202// CHECK-INST: luti6 { z20.b - z23.b }, zt0, { z0 - z2 }203// CHECK-ENCODING: encoding: [0x14,0x00,0x8a,0xc0]204// CHECK-ERROR: instruction requires: sme2p3205// CHECK-UNKNOWN: c08a0014 <unknown>206 207luti6 { z28.b - z31.b }, zt0, { z0 - z2 }208// CHECK-INST: luti6 { z28.b - z31.b }, zt0, { z0 - z2 }209// CHECK-ENCODING: encoding: [0x1c,0x00,0x8a,0xc0]210// CHECK-ERROR: instruction requires: sme2p3211// CHECK-UNKNOWN: c08a001c <unknown>212 213luti6 { z0.b - z3.b }, zt0, { z2 - z4 }214// CHECK-INST: luti6 { z0.b - z3.b }, zt0, { z2 - z4 }215// CHECK-ENCODING: encoding: [0x00,0x01,0x8a,0xc0]216// CHECK-ERROR: instruction requires: sme2p3217// CHECK-UNKNOWN: c08a0100 <unknown>218 219luti6 { z8.b - z11.b }, zt0, { z2 - z4 }220// CHECK-INST: luti6 { z8.b - z11.b }, zt0, { z2 - z4 }221// CHECK-ENCODING: encoding: [0x08,0x01,0x8a,0xc0]222// CHECK-ERROR: instruction requires: sme2p3223// CHECK-UNKNOWN: c08a0108 <unknown>224 225luti6 { z20.b - z23.b }, zt0, { z2 - z4 }226// CHECK-INST: luti6 { z20.b - z23.b }, zt0, { z2 - z4 }227// CHECK-ENCODING: encoding: [0x14,0x01,0x8a,0xc0]228// CHECK-ERROR: instruction requires: sme2p3229// CHECK-UNKNOWN: c08a0114 <unknown>230 231luti6 { z28.b - z31.b }, zt0, { z2 - z4 }232// CHECK-INST: luti6 { z28.b - z31.b }, zt0, { z2 - z4 }233// CHECK-ENCODING: encoding: [0x1c,0x01,0x8a,0xc0]234// CHECK-ERROR: instruction requires: sme2p3235// CHECK-UNKNOWN: c08a011c <unknown>236 237luti6 { z0.b - z3.b }, zt0, { z5 - z7 }238// CHECK-INST: luti6 { z0.b - z3.b }, zt0, { z5 - z7 }239// CHECK-ENCODING: encoding: [0x80,0x02,0x8a,0xc0]240// CHECK-ERROR: instruction requires: sme2p3241// CHECK-UNKNOWN: c08a0280 <unknown>242 243luti6 { z8.b - z11.b }, zt0, { z5 - z7 }244// CHECK-INST: luti6 { z8.b - z11.b }, zt0, { z5 - z7 }245// CHECK-ENCODING: encoding: [0x88,0x02,0x8a,0xc0]246// CHECK-ERROR: instruction requires: sme2p3247// CHECK-UNKNOWN: c08a0288 <unknown>248 249luti6 { z20.b - z23.b }, zt0, { z5 - z7 }250// CHECK-INST: luti6 { z20.b - z23.b }, zt0, { z5 - z7 }251// CHECK-ENCODING: encoding: [0x94,0x02,0x8a,0xc0]252// CHECK-ERROR: instruction requires: sme2p3253// CHECK-UNKNOWN: c08a0294 <unknown>254 255luti6 { z28.b - z31.b }, zt0, { z5 - z7 }256// CHECK-INST: luti6 { z28.b - z31.b }, zt0, { z5 - z7 }257// CHECK-ENCODING: encoding: [0x9c,0x02,0x8a,0xc0]258// CHECK-ERROR: instruction requires: sme2p3259// CHECK-UNKNOWN: c08a029c <unknown>260 261luti6 { z0.b - z3.b }, zt0, { z7 - z9 }262// CHECK-INST: luti6 { z0.b - z3.b }, zt0, { z7 - z9 }263// CHECK-ENCODING: encoding: [0x80,0x03,0x8a,0xc0]264// CHECK-ERROR: instruction requires: sme2p3265// CHECK-UNKNOWN: c08a0380 <unknown>266 267luti6 { z8.b - z11.b }, zt0, { z7 - z9 }268// CHECK-INST: luti6 { z8.b - z11.b }, zt0, { z7 - z9 }269// CHECK-ENCODING: encoding: [0x88,0x03,0x8a,0xc0]270// CHECK-ERROR: instruction requires: sme2p3271// CHECK-UNKNOWN: c08a0388 <unknown>272 273luti6 { z20.b - z23.b }, zt0, { z7 - z9 }274// CHECK-INST: luti6 { z20.b - z23.b }, zt0, { z7 - z9 }275// CHECK-ENCODING: encoding: [0x94,0x03,0x8a,0xc0]276// CHECK-ERROR: instruction requires: sme2p3277// CHECK-UNKNOWN: c08a0394 <unknown>278 279luti6 { z28.b - z31.b }, zt0, { z7 - z9 }280// CHECK-INST: luti6 { z28.b - z31.b }, zt0, { z7 - z9 }281// CHECK-ENCODING: encoding: [0x9c,0x03,0x8a,0xc0]282// CHECK-ERROR: instruction requires: sme2p3283// CHECK-UNKNOWN: c08a039c <unknown>284 285// ----------------------------------------------------------286// Lookup table read with 6-bit indices (8-bit) - strided287 288luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z0 - z2 }289// CHECK-INST: luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z0 - z2 }290// CHECK-ENCODING: encoding: [0x01,0x00,0x9a,0xc0]291// CHECK-ERROR: instruction requires: sme2p3292// CHECK-UNKNOWN: c09a0001 <unknown>293 294luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z0 - z2 }295// CHECK-INST: luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z0 - z2 }296// CHECK-ENCODING: encoding: [0x02,0x00,0x9a,0xc0]297// CHECK-ERROR: instruction requires: sme2p3298// CHECK-UNKNOWN: c09a0002 <unknown>299 300luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z0 - z2 }301// CHECK-INST: luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z0 - z2 }302// CHECK-ENCODING: encoding: [0x03,0x00,0x9a,0xc0]303// CHECK-ERROR: instruction requires: sme2p3304// CHECK-UNKNOWN: c09a0003 <unknown>305 306luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z0 - z2 }307// CHECK-INST: luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z0 - z2 }308// CHECK-ENCODING: encoding: [0x10,0x00,0x9a,0xc0]309// CHECK-ERROR: instruction requires: sme2p3310// CHECK-UNKNOWN: c09a0010 <unknown>311 312luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z0 - z2 }313// CHECK-INST: luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z0 - z2 }314// CHECK-ENCODING: encoding: [0x11,0x00,0x9a,0xc0]315// CHECK-ERROR: instruction requires: sme2p3316// CHECK-UNKNOWN: c09a0011 <unknown>317 318luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z0 - z2 }319// CHECK-INST: luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z0 - z2 }320// CHECK-ENCODING: encoding: [0x12,0x00,0x9a,0xc0]321// CHECK-ERROR: instruction requires: sme2p3322// CHECK-UNKNOWN: c09a0012 <unknown>323 324luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z0 - z2 }325// CHECK-INST: luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z0 - z2 }326// CHECK-ENCODING: encoding: [0x13,0x00,0x9a,0xc0]327// CHECK-ERROR: instruction requires: sme2p3328// CHECK-UNKNOWN: c09a0013 <unknown>329 330luti6 { z0.b, z4.b, z8.b, z12.b }, zt0, { z2 - z4 }331// CHECK-INST: luti6 { z0.b, z4.b, z8.b, z12.b }, zt0, { z2 - z4 }332// CHECK-ENCODING: encoding: [0x00,0x01,0x9a,0xc0]333// CHECK-ERROR: instruction requires: sme2p3334// CHECK-UNKNOWN: c09a0100 <unknown>335 336luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z2 - z4 }337// CHECK-INST: luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z2 - z4 }338// CHECK-ENCODING: encoding: [0x01,0x01,0x9a,0xc0]339// CHECK-ERROR: instruction requires: sme2p3340// CHECK-UNKNOWN: c09a0101 <unknown>341 342luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z2 - z4 }343// CHECK-INST: luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z2 - z4 }344// CHECK-ENCODING: encoding: [0x02,0x01,0x9a,0xc0]345// CHECK-ERROR: instruction requires: sme2p3346// CHECK-UNKNOWN: c09a0102 <unknown>347 348luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z2 - z4 }349// CHECK-INST: luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z2 - z4 }350// CHECK-ENCODING: encoding: [0x03,0x01,0x9a,0xc0]351// CHECK-ERROR: instruction requires: sme2p3352// CHECK-UNKNOWN: c09a0103 <unknown>353 354luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z2 - z4 }355// CHECK-INST: luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z2 - z4 }356// CHECK-ENCODING: encoding: [0x10,0x01,0x9a,0xc0]357// CHECK-ERROR: instruction requires: sme2p3358// CHECK-UNKNOWN: c09a0110 <unknown>359 360luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z2 - z4 }361// CHECK-INST: luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z2 - z4 }362// CHECK-ENCODING: encoding: [0x11,0x01,0x9a,0xc0]363// CHECK-ERROR: instruction requires: sme2p3364// CHECK-UNKNOWN: c09a0111 <unknown>365 366luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z2 - z4 }367// CHECK-INST: luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z2 - z4 }368// CHECK-ENCODING: encoding: [0x12,0x01,0x9a,0xc0]369// CHECK-ERROR: instruction requires: sme2p3370// CHECK-UNKNOWN: c09a0112 <unknown>371 372luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z2 - z4 }373// CHECK-INST: luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z2 - z4 }374// CHECK-ENCODING: encoding: [0x13,0x01,0x9a,0xc0]375// CHECK-ERROR: instruction requires: sme2p3376// CHECK-UNKNOWN: c09a0113 <unknown>377 378luti6 { z0.b, z4.b, z8.b, z12.b }, zt0, { z5 - z7 }379// CHECK-INST: luti6 { z0.b, z4.b, z8.b, z12.b }, zt0, { z5 - z7 }380// CHECK-ENCODING: encoding: [0x80,0x02,0x9a,0xc0]381// CHECK-ERROR: instruction requires: sme2p3382// CHECK-UNKNOWN: c09a0280 <unknown>383 384luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z5 - z7 }385// CHECK-INST: luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z5 - z7 }386// CHECK-ENCODING: encoding: [0x81,0x02,0x9a,0xc0]387// CHECK-ERROR: instruction requires: sme2p3388// CHECK-UNKNOWN: c09a0281 <unknown>389 390luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z5 - z7 }391// CHECK-INST: luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z5 - z7 }392// CHECK-ENCODING: encoding: [0x82,0x02,0x9a,0xc0]393// CHECK-ERROR: instruction requires: sme2p3394// CHECK-UNKNOWN: c09a0282 <unknown>395 396luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z5 - z7 }397// CHECK-INST: luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z5 - z7 }398// CHECK-ENCODING: encoding: [0x83,0x02,0x9a,0xc0]399// CHECK-ERROR: instruction requires: sme2p3400// CHECK-UNKNOWN: c09a0283 <unknown>401 402luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z5 - z7 }403// CHECK-INST: luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z5 - z7 }404// CHECK-ENCODING: encoding: [0x90,0x02,0x9a,0xc0]405// CHECK-ERROR: instruction requires: sme2p3406// CHECK-UNKNOWN: c09a0290 <unknown>407 408luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z5 - z7 }409// CHECK-INST: luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z5 - z7 }410// CHECK-ENCODING: encoding: [0x91,0x02,0x9a,0xc0]411// CHECK-ERROR: instruction requires: sme2p3412// CHECK-UNKNOWN: c09a0291 <unknown>413 414luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z5 - z7 }415// CHECK-INST: luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z5 - z7 }416// CHECK-ENCODING: encoding: [0x92,0x02,0x9a,0xc0]417// CHECK-ERROR: instruction requires: sme2p3418// CHECK-UNKNOWN: c09a0292 <unknown>419 420luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z5 - z7 }421// CHECK-INST: luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z5 - z7 }422// CHECK-ENCODING: encoding: [0x93,0x02,0x9a,0xc0]423// CHECK-ERROR: instruction requires: sme2p3424// CHECK-UNKNOWN: c09a0293 <unknown>425 426luti6 { z0.b, z4.b, z8.b, z12.b }, zt0, { z7 - z9 }427// CHECK-INST: luti6 { z0.b, z4.b, z8.b, z12.b }, zt0, { z7 - z9 }428// CHECK-ENCODING: encoding: [0x80,0x03,0x9a,0xc0]429// CHECK-ERROR: instruction requires: sme2p3430// CHECK-UNKNOWN: c09a0380 <unknown>431 432luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z7 - z9 }433// CHECK-INST: luti6 { z1.b, z5.b, z9.b, z13.b }, zt0, { z7 - z9 }434// CHECK-ENCODING: encoding: [0x81,0x03,0x9a,0xc0]435// CHECK-ERROR: instruction requires: sme2p3436// CHECK-UNKNOWN: c09a0381 <unknown>437 438luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z7 - z9 }439// CHECK-INST: luti6 { z2.b, z6.b, z10.b, z14.b }, zt0, { z7 - z9 }440// CHECK-ENCODING: encoding: [0x82,0x03,0x9a,0xc0]441// CHECK-ERROR: instruction requires: sme2p3442// CHECK-UNKNOWN: c09a0382 <unknown>443 444luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z7 - z9 }445// CHECK-INST: luti6 { z3.b, z7.b, z11.b, z15.b }, zt0, { z7 - z9 }446// CHECK-ENCODING: encoding: [0x83,0x03,0x9a,0xc0]447// CHECK-ERROR: instruction requires: sme2p3448// CHECK-UNKNOWN: c09a0383 <unknown>449 450luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z7 - z9 }451// CHECK-INST: luti6 { z16.b, z20.b, z24.b, z28.b }, zt0, { z7 - z9 }452// CHECK-ENCODING: encoding: [0x90,0x03,0x9a,0xc0]453// CHECK-ERROR: instruction requires: sme2p3454// CHECK-UNKNOWN: c09a0390 <unknown>455 456luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z7 - z9 }457// CHECK-INST: luti6 { z17.b, z21.b, z25.b, z29.b }, zt0, { z7 - z9 }458// CHECK-ENCODING: encoding: [0x91,0x03,0x9a,0xc0]459// CHECK-ERROR: instruction requires: sme2p3460// CHECK-UNKNOWN: c09a0391 <unknown>461 462luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z7 - z9 }463// CHECK-INST: luti6 { z18.b, z22.b, z26.b, z30.b }, zt0, { z7 - z9 }464// CHECK-ENCODING: encoding: [0x92,0x03,0x9a,0xc0]465// CHECK-ERROR: instruction requires: sme2p3466// CHECK-UNKNOWN: c09a0392 <unknown>467 468luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z7 - z9 }469// CHECK-INST: luti6 { z19.b, z23.b, z27.b, z31.b }, zt0, { z7 - z9 }470// CHECK-ENCODING: encoding: [0x93,0x03,0x9a,0xc0]471// CHECK-ERROR: instruction requires: sme2p3472// CHECK-UNKNOWN: c09a0393 <unknown>473