brintos

brintos / llvm-project-archived public Read only

0
0
Text · 26.8 KiB · d7336b0 Raw
594 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2 < %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=+sme2 < %s \6// RUN:        | llvm-objdump -d --mattr=+sme2 - | FileCheck %s --check-prefix=CHECK-INST7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2 < %s \8// RUN:        | llvm-objdump -d --mattr=-sme2 - | FileCheck %s --check-prefix=CHECK-UNKNOWN9// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2 < %s \10// RUN:        | sed '/.text/d' | sed 's/.*encoding: //g' \11// RUN:        | llvm-mc -triple=aarch64 -mattr=+sme2 -disassemble -show-encoding \12// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST13 14 15sudot   za.s[w8, 0, vgx2], {z0.b, z1.b}, z0.b  // 11000001-00100000-00010100-0001100016// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b17// CHECK-ENCODING: [0x18,0x14,0x20,0xc1]18// CHECK-ERROR: instruction requires: sme219// CHECK-UNKNOWN: c1201418 <unknown>20 21sudot   za.s[w8, 0], {z0.b, z1.b}, z0.b  // 11000001-00100000-00010100-0001100022// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b23// CHECK-ENCODING: [0x18,0x14,0x20,0xc1]24// CHECK-ERROR: instruction requires: sme225// CHECK-UNKNOWN: c1201418 <unknown>26 27sudot   za.s[w10, 5, vgx2], {z10.b, z11.b}, z5.b  // 11000001-00100101-01010101-0101110128// CHECK-INST: sudot   za.s[w10, 5, vgx2], { z10.b, z11.b }, z5.b29// CHECK-ENCODING: [0x5d,0x55,0x25,0xc1]30// CHECK-ERROR: instruction requires: sme231// CHECK-UNKNOWN: c125555d <unknown>32 33sudot   za.s[w10, 5], {z10.b, z11.b}, z5.b  // 11000001-00100101-01010101-0101110134// CHECK-INST: sudot   za.s[w10, 5, vgx2], { z10.b, z11.b }, z5.b35// CHECK-ENCODING: [0x5d,0x55,0x25,0xc1]36// CHECK-ERROR: instruction requires: sme237// CHECK-UNKNOWN: c125555d <unknown>38 39sudot   za.s[w11, 7, vgx2], {z13.b, z14.b}, z8.b  // 11000001-00101000-01110101-1011111140// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z13.b, z14.b }, z8.b41// CHECK-ENCODING: [0xbf,0x75,0x28,0xc1]42// CHECK-ERROR: instruction requires: sme243// CHECK-UNKNOWN: c12875bf <unknown>44 45sudot   za.s[w11, 7], {z13.b, z14.b}, z8.b  // 11000001-00101000-01110101-1011111146// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z13.b, z14.b }, z8.b47// CHECK-ENCODING: [0xbf,0x75,0x28,0xc1]48// CHECK-ERROR: instruction requires: sme249// CHECK-UNKNOWN: c12875bf <unknown>50 51sudot   za.s[w11, 7, vgx2], {z31.b, z0.b}, z15.b  // 11000001-00101111-01110111-1111111152// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z31.b, z0.b }, z15.b53// CHECK-ENCODING: [0xff,0x77,0x2f,0xc1]54// CHECK-ERROR: instruction requires: sme255// CHECK-UNKNOWN: c12f77ff <unknown>56 57sudot   za.s[w11, 7], {z31.b, z0.b}, z15.b  // 11000001-00101111-01110111-1111111158// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z31.b, z0.b }, z15.b59// CHECK-ENCODING: [0xff,0x77,0x2f,0xc1]60// CHECK-ERROR: instruction requires: sme261// CHECK-UNKNOWN: c12f77ff <unknown>62 63sudot   za.s[w8, 5, vgx2], {z17.b, z18.b}, z0.b  // 11000001-00100000-00010110-0011110164// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z17.b, z18.b }, z0.b65// CHECK-ENCODING: [0x3d,0x16,0x20,0xc1]66// CHECK-ERROR: instruction requires: sme267// CHECK-UNKNOWN: c120163d <unknown>68 69sudot   za.s[w8, 5], {z17.b, z18.b}, z0.b  // 11000001-00100000-00010110-0011110170// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z17.b, z18.b }, z0.b71// CHECK-ENCODING: [0x3d,0x16,0x20,0xc1]72// CHECK-ERROR: instruction requires: sme273// CHECK-UNKNOWN: c120163d <unknown>74 75sudot   za.s[w8, 1, vgx2], {z1.b, z2.b}, z14.b  // 11000001-00101110-00010100-0011100176// CHECK-INST: sudot   za.s[w8, 1, vgx2], { z1.b, z2.b }, z14.b77// CHECK-ENCODING: [0x39,0x14,0x2e,0xc1]78// CHECK-ERROR: instruction requires: sme279// CHECK-UNKNOWN: c12e1439 <unknown>80 81sudot   za.s[w8, 1], {z1.b, z2.b}, z14.b  // 11000001-00101110-00010100-0011100182// CHECK-INST: sudot   za.s[w8, 1, vgx2], { z1.b, z2.b }, z14.b83// CHECK-ENCODING: [0x39,0x14,0x2e,0xc1]84// CHECK-ERROR: instruction requires: sme285// CHECK-UNKNOWN: c12e1439 <unknown>86 87 88sudot   za.s[w10, 0, vgx2], {z19.b, z20.b}, z4.b  // 11000001-00100100-01010110-0111100089// CHECK-INST: sudot   za.s[w10, 0, vgx2], { z19.b, z20.b }, z4.b90// CHECK-ENCODING: [0x78,0x56,0x24,0xc1]91// CHECK-ERROR: instruction requires: sme292// CHECK-UNKNOWN: c1245678 <unknown>93 94sudot   za.s[w10, 0], {z19.b, z20.b}, z4.b  // 11000001-00100100-01010110-0111100095// CHECK-INST: sudot   za.s[w10, 0, vgx2], { z19.b, z20.b }, z4.b96// CHECK-ENCODING: [0x78,0x56,0x24,0xc1]97// CHECK-ERROR: instruction requires: sme298// CHECK-UNKNOWN: c1245678 <unknown>99 100sudot   za.s[w8, 0, vgx2], {z12.b, z13.b}, z2.b  // 11000001-00100010-00010101-10011000101// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z12.b, z13.b }, z2.b102// CHECK-ENCODING: [0x98,0x15,0x22,0xc1]103// CHECK-ERROR: instruction requires: sme2104// CHECK-UNKNOWN: c1221598 <unknown>105 106sudot   za.s[w8, 0], {z12.b, z13.b}, z2.b  // 11000001-00100010-00010101-10011000107// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z12.b, z13.b }, z2.b108// CHECK-ENCODING: [0x98,0x15,0x22,0xc1]109// CHECK-ERROR: instruction requires: sme2110// CHECK-UNKNOWN: c1221598 <unknown>111 112sudot   za.s[w10, 1, vgx2], {z1.b, z2.b}, z10.b  // 11000001-00101010-01010100-00111001113// CHECK-INST: sudot   za.s[w10, 1, vgx2], { z1.b, z2.b }, z10.b114// CHECK-ENCODING: [0x39,0x54,0x2a,0xc1]115// CHECK-ERROR: instruction requires: sme2116// CHECK-UNKNOWN: c12a5439 <unknown>117 118sudot   za.s[w10, 1], {z1.b, z2.b}, z10.b  // 11000001-00101010-01010100-00111001119// CHECK-INST: sudot   za.s[w10, 1, vgx2], { z1.b, z2.b }, z10.b120// CHECK-ENCODING: [0x39,0x54,0x2a,0xc1]121// CHECK-ERROR: instruction requires: sme2122// CHECK-UNKNOWN: c12a5439 <unknown>123 124sudot   za.s[w8, 5, vgx2], {z22.b, z23.b}, z14.b  // 11000001-00101110-00010110-11011101125// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z22.b, z23.b }, z14.b126// CHECK-ENCODING: [0xdd,0x16,0x2e,0xc1]127// CHECK-ERROR: instruction requires: sme2128// CHECK-UNKNOWN: c12e16dd <unknown>129 130sudot   za.s[w8, 5], {z22.b, z23.b}, z14.b  // 11000001-00101110-00010110-11011101131// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z22.b, z23.b }, z14.b132// CHECK-ENCODING: [0xdd,0x16,0x2e,0xc1]133// CHECK-ERROR: instruction requires: sme2134// CHECK-UNKNOWN: c12e16dd <unknown>135 136sudot   za.s[w11, 2, vgx2], {z9.b, z10.b}, z1.b  // 11000001-00100001-01110101-00111010137// CHECK-INST: sudot   za.s[w11, 2, vgx2], { z9.b, z10.b }, z1.b138// CHECK-ENCODING: [0x3a,0x75,0x21,0xc1]139// CHECK-ERROR: instruction requires: sme2140// CHECK-UNKNOWN: c121753a <unknown>141 142sudot   za.s[w11, 2], {z9.b, z10.b}, z1.b  // 11000001-00100001-01110101-00111010143// CHECK-INST: sudot   za.s[w11, 2, vgx2], { z9.b, z10.b }, z1.b144// CHECK-ENCODING: [0x3a,0x75,0x21,0xc1]145// CHECK-ERROR: instruction requires: sme2146// CHECK-UNKNOWN: c121753a <unknown>147 148sudot   za.s[w9, 7, vgx2], {z12.b, z13.b}, z11.b  // 11000001-00101011-00110101-10011111149// CHECK-INST: sudot   za.s[w9, 7, vgx2], { z12.b, z13.b }, z11.b150// CHECK-ENCODING: [0x9f,0x35,0x2b,0xc1]151// CHECK-ERROR: instruction requires: sme2152// CHECK-UNKNOWN: c12b359f <unknown>153 154sudot   za.s[w9, 7], {z12.b, z13.b}, z11.b  // 11000001-00101011-00110101-10011111155// CHECK-INST: sudot   za.s[w9, 7, vgx2], { z12.b, z13.b }, z11.b156// CHECK-ENCODING: [0x9f,0x35,0x2b,0xc1]157// CHECK-ERROR: instruction requires: sme2158// CHECK-UNKNOWN: c12b359f <unknown>159 160 161sudot   za.s[w8, 0, vgx2], {z0.b, z1.b}, z0.b[0]  // 11000001-01010000-00010000-00111000162// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]163// CHECK-ENCODING: [0x38,0x10,0x50,0xc1]164// CHECK-ERROR: instruction requires: sme2165// CHECK-UNKNOWN: c1501038 <unknown>166 167sudot   za.s[w8, 0], {z0.b, z1.b}, z0.b[0]  // 11000001-01010000-00010000-00111000168// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]169// CHECK-ENCODING: [0x38,0x10,0x50,0xc1]170// CHECK-ERROR: instruction requires: sme2171// CHECK-UNKNOWN: c1501038 <unknown>172 173sudot   za.s[w10, 5, vgx2], {z10.b, z11.b}, z5.b[1]  // 11000001-01010101-01010101-01111101174// CHECK-INST: sudot   za.s[w10, 5, vgx2], { z10.b, z11.b }, z5.b[1]175// CHECK-ENCODING: [0x7d,0x55,0x55,0xc1]176// CHECK-ERROR: instruction requires: sme2177// CHECK-UNKNOWN: c155557d <unknown>178 179sudot   za.s[w10, 5], {z10.b, z11.b}, z5.b[1]  // 11000001-01010101-01010101-01111101180// CHECK-INST: sudot   za.s[w10, 5, vgx2], { z10.b, z11.b }, z5.b[1]181// CHECK-ENCODING: [0x7d,0x55,0x55,0xc1]182// CHECK-ERROR: instruction requires: sme2183// CHECK-UNKNOWN: c155557d <unknown>184 185sudot   za.s[w11, 7, vgx2], {z12.b, z13.b}, z8.b[3]  // 11000001-01011000-01111101-10111111186// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z12.b, z13.b }, z8.b[3]187// CHECK-ENCODING: [0xbf,0x7d,0x58,0xc1]188// CHECK-ERROR: instruction requires: sme2189// CHECK-UNKNOWN: c1587dbf <unknown>190 191sudot   za.s[w11, 7], {z12.b, z13.b}, z8.b[3]  // 11000001-01011000-01111101-10111111192// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z12.b, z13.b }, z8.b[3]193// CHECK-ENCODING: [0xbf,0x7d,0x58,0xc1]194// CHECK-ERROR: instruction requires: sme2195// CHECK-UNKNOWN: c1587dbf <unknown>196 197sudot   za.s[w11, 7, vgx2], {z30.b, z31.b}, z15.b[3]  // 11000001-01011111-01111111-11111111198// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z30.b, z31.b }, z15.b[3]199// CHECK-ENCODING: [0xff,0x7f,0x5f,0xc1]200// CHECK-ERROR: instruction requires: sme2201// CHECK-UNKNOWN: c15f7fff <unknown>202 203sudot   za.s[w11, 7], {z30.b, z31.b}, z15.b[3]  // 11000001-01011111-01111111-11111111204// CHECK-INST: sudot   za.s[w11, 7, vgx2], { z30.b, z31.b }, z15.b[3]205// CHECK-ENCODING: [0xff,0x7f,0x5f,0xc1]206// CHECK-ERROR: instruction requires: sme2207// CHECK-UNKNOWN: c15f7fff <unknown>208 209sudot   za.s[w8, 5, vgx2], {z16.b, z17.b}, z0.b[3]  // 11000001-01010000-00011110-00111101210// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z16.b, z17.b }, z0.b[3]211// CHECK-ENCODING: [0x3d,0x1e,0x50,0xc1]212// CHECK-ERROR: instruction requires: sme2213// CHECK-UNKNOWN: c1501e3d <unknown>214 215sudot   za.s[w8, 5], {z16.b, z17.b}, z0.b[3]  // 11000001-01010000-00011110-00111101216// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z16.b, z17.b }, z0.b[3]217// CHECK-ENCODING: [0x3d,0x1e,0x50,0xc1]218// CHECK-ERROR: instruction requires: sme2219// CHECK-UNKNOWN: c1501e3d <unknown>220 221sudot   za.s[w8, 1, vgx2], {z0.b, z1.b}, z14.b[1]  // 11000001-01011110-00010100-00111001222// CHECK-INST: sudot   za.s[w8, 1, vgx2], { z0.b, z1.b }, z14.b[1]223// CHECK-ENCODING: [0x39,0x14,0x5e,0xc1]224// CHECK-ERROR: instruction requires: sme2225// CHECK-UNKNOWN: c15e1439 <unknown>226 227sudot   za.s[w8, 1], {z0.b, z1.b}, z14.b[1]  // 11000001-01011110-00010100-00111001228// CHECK-INST: sudot   za.s[w8, 1, vgx2], { z0.b, z1.b }, z14.b[1]229// CHECK-ENCODING: [0x39,0x14,0x5e,0xc1]230// CHECK-ERROR: instruction requires: sme2231// CHECK-UNKNOWN: c15e1439 <unknown>232 233sudot   za.s[w10, 0, vgx2], {z18.b, z19.b}, z4.b[1]  // 11000001-01010100-01010110-01111000234// CHECK-INST: sudot   za.s[w10, 0, vgx2], { z18.b, z19.b }, z4.b[1]235// CHECK-ENCODING: [0x78,0x56,0x54,0xc1]236// CHECK-ERROR: instruction requires: sme2237// CHECK-UNKNOWN: c1545678 <unknown>238 239sudot   za.s[w10, 0], {z18.b, z19.b}, z4.b[1]  // 11000001-01010100-01010110-01111000240// CHECK-INST: sudot   za.s[w10, 0, vgx2], { z18.b, z19.b }, z4.b[1]241// CHECK-ENCODING: [0x78,0x56,0x54,0xc1]242// CHECK-ERROR: instruction requires: sme2243// CHECK-UNKNOWN: c1545678 <unknown>244 245sudot   za.s[w8, 0, vgx2], {z12.b, z13.b}, z2.b[2]  // 11000001-01010010-00011001-10111000246// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z12.b, z13.b }, z2.b[2]247// CHECK-ENCODING: [0xb8,0x19,0x52,0xc1]248// CHECK-ERROR: instruction requires: sme2249// CHECK-UNKNOWN: c15219b8 <unknown>250 251sudot   za.s[w8, 0], {z12.b, z13.b}, z2.b[2]  // 11000001-01010010-00011001-10111000252// CHECK-INST: sudot   za.s[w8, 0, vgx2], { z12.b, z13.b }, z2.b[2]253// CHECK-ENCODING: [0xb8,0x19,0x52,0xc1]254// CHECK-ERROR: instruction requires: sme2255// CHECK-UNKNOWN: c15219b8 <unknown>256 257sudot   za.s[w10, 1, vgx2], {z0.b, z1.b}, z10.b[2]  // 11000001-01011010-01011000-00111001258// CHECK-INST: sudot   za.s[w10, 1, vgx2], { z0.b, z1.b }, z10.b[2]259// CHECK-ENCODING: [0x39,0x58,0x5a,0xc1]260// CHECK-ERROR: instruction requires: sme2261// CHECK-UNKNOWN: c15a5839 <unknown>262 263sudot   za.s[w10, 1], {z0.b, z1.b}, z10.b[2]  // 11000001-01011010-01011000-00111001264// CHECK-INST: sudot   za.s[w10, 1, vgx2], { z0.b, z1.b }, z10.b[2]265// CHECK-ENCODING: [0x39,0x58,0x5a,0xc1]266// CHECK-ERROR: instruction requires: sme2267// CHECK-UNKNOWN: c15a5839 <unknown>268 269sudot   za.s[w8, 5, vgx2], {z22.b, z23.b}, z14.b[2]  // 11000001-01011110-00011010-11111101270// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z22.b, z23.b }, z14.b[2]271// CHECK-ENCODING: [0xfd,0x1a,0x5e,0xc1]272// CHECK-ERROR: instruction requires: sme2273// CHECK-UNKNOWN: c15e1afd <unknown>274 275sudot   za.s[w8, 5], {z22.b, z23.b}, z14.b[2]  // 11000001-01011110-00011010-11111101276// CHECK-INST: sudot   za.s[w8, 5, vgx2], { z22.b, z23.b }, z14.b[2]277// CHECK-ENCODING: [0xfd,0x1a,0x5e,0xc1]278// CHECK-ERROR: instruction requires: sme2279// CHECK-UNKNOWN: c15e1afd <unknown>280 281sudot   za.s[w11, 2, vgx2], {z8.b, z9.b}, z1.b[1]  // 11000001-01010001-01110101-00111010282// CHECK-INST: sudot   za.s[w11, 2, vgx2], { z8.b, z9.b }, z1.b[1]283// CHECK-ENCODING: [0x3a,0x75,0x51,0xc1]284// CHECK-ERROR: instruction requires: sme2285// CHECK-UNKNOWN: c151753a <unknown>286 287sudot   za.s[w11, 2], {z8.b, z9.b}, z1.b[1]  // 11000001-01010001-01110101-00111010288// CHECK-INST: sudot   za.s[w11, 2, vgx2], { z8.b, z9.b }, z1.b[1]289// CHECK-ENCODING: [0x3a,0x75,0x51,0xc1]290// CHECK-ERROR: instruction requires: sme2291// CHECK-UNKNOWN: c151753a <unknown>292 293sudot   za.s[w9, 7, vgx2], {z12.b, z13.b}, z11.b[2]  // 11000001-01011011-00111001-10111111294// CHECK-INST: sudot   za.s[w9, 7, vgx2], { z12.b, z13.b }, z11.b[2]295// CHECK-ENCODING: [0xbf,0x39,0x5b,0xc1]296// CHECK-ERROR: instruction requires: sme2297// CHECK-UNKNOWN: c15b39bf <unknown>298 299sudot   za.s[w9, 7], {z12.b, z13.b}, z11.b[2]  // 11000001-01011011-00111001-10111111300// CHECK-INST: sudot   za.s[w9, 7, vgx2], { z12.b, z13.b }, z11.b[2]301// CHECK-ENCODING: [0xbf,0x39,0x5b,0xc1]302// CHECK-ERROR: instruction requires: sme2303// CHECK-UNKNOWN: c15b39bf <unknown>304 305sudot   za.s[w8, 0, vgx4], {z0.b - z3.b}, z0.b  // 11000001-00110000-00010100-00011000306// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b307// CHECK-ENCODING: [0x18,0x14,0x30,0xc1]308// CHECK-ERROR: instruction requires: sme2309// CHECK-UNKNOWN: c1301418 <unknown>310 311sudot   za.s[w8, 0], {z0.b - z3.b}, z0.b  // 11000001-00110000-00010100-00011000312// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b313// CHECK-ENCODING: [0x18,0x14,0x30,0xc1]314// CHECK-ERROR: instruction requires: sme2315// CHECK-UNKNOWN: c1301418 <unknown>316 317sudot   za.s[w10, 5, vgx4], {z10.b - z13.b}, z5.b  // 11000001-00110101-01010101-01011101318// CHECK-INST: sudot   za.s[w10, 5, vgx4], { z10.b - z13.b }, z5.b319// CHECK-ENCODING: [0x5d,0x55,0x35,0xc1]320// CHECK-ERROR: instruction requires: sme2321// CHECK-UNKNOWN: c135555d <unknown>322 323sudot   za.s[w10, 5], {z10.b - z13.b}, z5.b  // 11000001-00110101-01010101-01011101324// CHECK-INST: sudot   za.s[w10, 5, vgx4], { z10.b - z13.b }, z5.b325// CHECK-ENCODING: [0x5d,0x55,0x35,0xc1]326// CHECK-ERROR: instruction requires: sme2327// CHECK-UNKNOWN: c135555d <unknown>328 329sudot   za.s[w11, 7, vgx4], {z13.b - z16.b}, z8.b  // 11000001-00111000-01110101-10111111330// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z13.b - z16.b }, z8.b331// CHECK-ENCODING: [0xbf,0x75,0x38,0xc1]332// CHECK-ERROR: instruction requires: sme2333// CHECK-UNKNOWN: c13875bf <unknown>334 335sudot   za.s[w11, 7], {z13.b - z16.b}, z8.b  // 11000001-00111000-01110101-10111111336// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z13.b - z16.b }, z8.b337// CHECK-ENCODING: [0xbf,0x75,0x38,0xc1]338// CHECK-ERROR: instruction requires: sme2339// CHECK-UNKNOWN: c13875bf <unknown>340 341sudot   za.s[w11, 7, vgx4], {z31.b - z2.b}, z15.b  // 11000001-00111111-01110111-11111111342// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z31.b, z0.b, z1.b, z2.b }, z15.b343// CHECK-ENCODING: [0xff,0x77,0x3f,0xc1]344// CHECK-ERROR: instruction requires: sme2345// CHECK-UNKNOWN: c13f77ff <unknown>346 347sudot   za.s[w11, 7], {z31.b - z2.b}, z15.b  // 11000001-00111111-01110111-11111111348// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z31.b, z0.b, z1.b, z2.b }, z15.b349// CHECK-ENCODING: [0xff,0x77,0x3f,0xc1]350// CHECK-ERROR: instruction requires: sme2351// CHECK-UNKNOWN: c13f77ff <unknown>352 353sudot   za.s[w8, 5, vgx4], {z17.b - z20.b}, z0.b  // 11000001-00110000-00010110-00111101354// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z17.b - z20.b }, z0.b355// CHECK-ENCODING: [0x3d,0x16,0x30,0xc1]356// CHECK-ERROR: instruction requires: sme2357// CHECK-UNKNOWN: c130163d <unknown>358 359sudot   za.s[w8, 5], {z17.b - z20.b}, z0.b  // 11000001-00110000-00010110-00111101360// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z17.b - z20.b }, z0.b361// CHECK-ENCODING: [0x3d,0x16,0x30,0xc1]362// CHECK-ERROR: instruction requires: sme2363// CHECK-UNKNOWN: c130163d <unknown>364 365sudot   za.s[w8, 1, vgx4], {z1.b - z4.b}, z14.b  // 11000001-00111110-00010100-00111001366// CHECK-INST: sudot   za.s[w8, 1, vgx4], { z1.b - z4.b }, z14.b367// CHECK-ENCODING: [0x39,0x14,0x3e,0xc1]368// CHECK-ERROR: instruction requires: sme2369// CHECK-UNKNOWN: c13e1439 <unknown>370 371sudot   za.s[w8, 1], {z1.b - z4.b}, z14.b  // 11000001-00111110-00010100-00111001372// CHECK-INST: sudot   za.s[w8, 1, vgx4], { z1.b - z4.b }, z14.b373// CHECK-ENCODING: [0x39,0x14,0x3e,0xc1]374// CHECK-ERROR: instruction requires: sme2375// CHECK-UNKNOWN: c13e1439 <unknown>376 377sudot   za.s[w10, 0, vgx4], {z19.b - z22.b}, z4.b  // 11000001-00110100-01010110-01111000378// CHECK-INST: sudot   za.s[w10, 0, vgx4], { z19.b - z22.b }, z4.b379// CHECK-ENCODING: [0x78,0x56,0x34,0xc1]380// CHECK-ERROR: instruction requires: sme2381// CHECK-UNKNOWN: c1345678 <unknown>382 383sudot   za.s[w10, 0], {z19.b - z22.b}, z4.b  // 11000001-00110100-01010110-01111000384// CHECK-INST: sudot   za.s[w10, 0, vgx4], { z19.b - z22.b }, z4.b385// CHECK-ENCODING: [0x78,0x56,0x34,0xc1]386// CHECK-ERROR: instruction requires: sme2387// CHECK-UNKNOWN: c1345678 <unknown>388 389sudot   za.s[w8, 0, vgx4], {z12.b - z15.b}, z2.b  // 11000001-00110010-00010101-10011000390// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z12.b - z15.b }, z2.b391// CHECK-ENCODING: [0x98,0x15,0x32,0xc1]392// CHECK-ERROR: instruction requires: sme2393// CHECK-UNKNOWN: c1321598 <unknown>394 395sudot   za.s[w8, 0], {z12.b - z15.b}, z2.b  // 11000001-00110010-00010101-10011000396// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z12.b - z15.b }, z2.b397// CHECK-ENCODING: [0x98,0x15,0x32,0xc1]398// CHECK-ERROR: instruction requires: sme2399// CHECK-UNKNOWN: c1321598 <unknown>400 401sudot   za.s[w10, 1, vgx4], {z1.b - z4.b}, z10.b  // 11000001-00111010-01010100-00111001402// CHECK-INST: sudot   za.s[w10, 1, vgx4], { z1.b - z4.b }, z10.b403// CHECK-ENCODING: [0x39,0x54,0x3a,0xc1]404// CHECK-ERROR: instruction requires: sme2405// CHECK-UNKNOWN: c13a5439 <unknown>406 407sudot   za.s[w10, 1], {z1.b - z4.b}, z10.b  // 11000001-00111010-01010100-00111001408// CHECK-INST: sudot   za.s[w10, 1, vgx4], { z1.b - z4.b }, z10.b409// CHECK-ENCODING: [0x39,0x54,0x3a,0xc1]410// CHECK-ERROR: instruction requires: sme2411// CHECK-UNKNOWN: c13a5439 <unknown>412 413sudot   za.s[w8, 5, vgx4], {z22.b - z25.b}, z14.b  // 11000001-00111110-00010110-11011101414// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z22.b - z25.b }, z14.b415// CHECK-ENCODING: [0xdd,0x16,0x3e,0xc1]416// CHECK-ERROR: instruction requires: sme2417// CHECK-UNKNOWN: c13e16dd <unknown>418 419sudot   za.s[w8, 5], {z22.b - z25.b}, z14.b  // 11000001-00111110-00010110-11011101420// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z22.b - z25.b }, z14.b421// CHECK-ENCODING: [0xdd,0x16,0x3e,0xc1]422// CHECK-ERROR: instruction requires: sme2423// CHECK-UNKNOWN: c13e16dd <unknown>424 425sudot   za.s[w11, 2, vgx4], {z9.b - z12.b}, z1.b  // 11000001-00110001-01110101-00111010426// CHECK-INST: sudot   za.s[w11, 2, vgx4], { z9.b - z12.b }, z1.b427// CHECK-ENCODING: [0x3a,0x75,0x31,0xc1]428// CHECK-ERROR: instruction requires: sme2429// CHECK-UNKNOWN: c131753a <unknown>430 431sudot   za.s[w11, 2], {z9.b - z12.b}, z1.b  // 11000001-00110001-01110101-00111010432// CHECK-INST: sudot   za.s[w11, 2, vgx4], { z9.b - z12.b }, z1.b433// CHECK-ENCODING: [0x3a,0x75,0x31,0xc1]434// CHECK-ERROR: instruction requires: sme2435// CHECK-UNKNOWN: c131753a <unknown>436 437sudot   za.s[w9, 7, vgx4], {z12.b - z15.b}, z11.b  // 11000001-00111011-00110101-10011111438// CHECK-INST: sudot   za.s[w9, 7, vgx4], { z12.b - z15.b }, z11.b439// CHECK-ENCODING: [0x9f,0x35,0x3b,0xc1]440// CHECK-ERROR: instruction requires: sme2441// CHECK-UNKNOWN: c13b359f <unknown>442 443sudot   za.s[w9, 7], {z12.b - z15.b}, z11.b  // 11000001-00111011-00110101-10011111444// CHECK-INST: sudot   za.s[w9, 7, vgx4], { z12.b - z15.b }, z11.b445// CHECK-ENCODING: [0x9f,0x35,0x3b,0xc1]446// CHECK-ERROR: instruction requires: sme2447// CHECK-UNKNOWN: c13b359f <unknown>448 449 450sudot   za.s[w8, 0, vgx4], {z0.b - z3.b}, z0.b[0]  // 11000001-01010000-10010000-00111000451// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b[0]452// CHECK-ENCODING: [0x38,0x90,0x50,0xc1]453// CHECK-ERROR: instruction requires: sme2454// CHECK-UNKNOWN: c1509038 <unknown>455 456sudot   za.s[w8, 0], {z0.b - z3.b}, z0.b[0]  // 11000001-01010000-10010000-00111000457// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b[0]458// CHECK-ENCODING: [0x38,0x90,0x50,0xc1]459// CHECK-ERROR: instruction requires: sme2460// CHECK-UNKNOWN: c1509038 <unknown>461 462sudot   za.s[w10, 5, vgx4], {z8.b - z11.b}, z5.b[1]  // 11000001-01010101-11010101-00111101463// CHECK-INST: sudot   za.s[w10, 5, vgx4], { z8.b - z11.b }, z5.b[1]464// CHECK-ENCODING: [0x3d,0xd5,0x55,0xc1]465// CHECK-ERROR: instruction requires: sme2466// CHECK-UNKNOWN: c155d53d <unknown>467 468sudot   za.s[w10, 5], {z8.b - z11.b}, z5.b[1]  // 11000001-01010101-11010101-00111101469// CHECK-INST: sudot   za.s[w10, 5, vgx4], { z8.b - z11.b }, z5.b[1]470// CHECK-ENCODING: [0x3d,0xd5,0x55,0xc1]471// CHECK-ERROR: instruction requires: sme2472// CHECK-UNKNOWN: c155d53d <unknown>473 474sudot   za.s[w11, 7, vgx4], {z12.b - z15.b}, z8.b[3]  // 11000001-01011000-11111101-10111111475// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z12.b - z15.b }, z8.b[3]476// CHECK-ENCODING: [0xbf,0xfd,0x58,0xc1]477// CHECK-ERROR: instruction requires: sme2478// CHECK-UNKNOWN: c158fdbf <unknown>479 480sudot   za.s[w11, 7], {z12.b - z15.b}, z8.b[3]  // 11000001-01011000-11111101-10111111481// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z12.b - z15.b }, z8.b[3]482// CHECK-ENCODING: [0xbf,0xfd,0x58,0xc1]483// CHECK-ERROR: instruction requires: sme2484// CHECK-UNKNOWN: c158fdbf <unknown>485 486sudot   za.s[w11, 7, vgx4], {z28.b - z31.b}, z15.b[3]  // 11000001-01011111-11111111-10111111487// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z28.b - z31.b }, z15.b[3]488// CHECK-ENCODING: [0xbf,0xff,0x5f,0xc1]489// CHECK-ERROR: instruction requires: sme2490// CHECK-UNKNOWN: c15fffbf <unknown>491 492sudot   za.s[w11, 7], {z28.b - z31.b}, z15.b[3]  // 11000001-01011111-11111111-10111111493// CHECK-INST: sudot   za.s[w11, 7, vgx4], { z28.b - z31.b }, z15.b[3]494// CHECK-ENCODING: [0xbf,0xff,0x5f,0xc1]495// CHECK-ERROR: instruction requires: sme2496// CHECK-UNKNOWN: c15fffbf <unknown>497 498sudot   za.s[w8, 5, vgx4], {z16.b - z19.b}, z0.b[3]  // 11000001-01010000-10011110-00111101499// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z16.b - z19.b }, z0.b[3]500// CHECK-ENCODING: [0x3d,0x9e,0x50,0xc1]501// CHECK-ERROR: instruction requires: sme2502// CHECK-UNKNOWN: c1509e3d <unknown>503 504sudot   za.s[w8, 5], {z16.b - z19.b}, z0.b[3]  // 11000001-01010000-10011110-00111101505// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z16.b - z19.b }, z0.b[3]506// CHECK-ENCODING: [0x3d,0x9e,0x50,0xc1]507// CHECK-ERROR: instruction requires: sme2508// CHECK-UNKNOWN: c1509e3d <unknown>509 510sudot   za.s[w8, 1, vgx4], {z0.b - z3.b}, z14.b[1]  // 11000001-01011110-10010100-00111001511// CHECK-INST: sudot   za.s[w8, 1, vgx4], { z0.b - z3.b }, z14.b[1]512// CHECK-ENCODING: [0x39,0x94,0x5e,0xc1]513// CHECK-ERROR: instruction requires: sme2514// CHECK-UNKNOWN: c15e9439 <unknown>515 516sudot   za.s[w8, 1], {z0.b - z3.b}, z14.b[1]  // 11000001-01011110-10010100-00111001517// CHECK-INST: sudot   za.s[w8, 1, vgx4], { z0.b - z3.b }, z14.b[1]518// CHECK-ENCODING: [0x39,0x94,0x5e,0xc1]519// CHECK-ERROR: instruction requires: sme2520// CHECK-UNKNOWN: c15e9439 <unknown>521 522sudot   za.s[w10, 0, vgx4], {z16.b - z19.b}, z4.b[1]  // 11000001-01010100-11010110-00111000523// CHECK-INST: sudot   za.s[w10, 0, vgx4], { z16.b - z19.b }, z4.b[1]524// CHECK-ENCODING: [0x38,0xd6,0x54,0xc1]525// CHECK-ERROR: instruction requires: sme2526// CHECK-UNKNOWN: c154d638 <unknown>527 528sudot   za.s[w10, 0], {z16.b - z19.b}, z4.b[1]  // 11000001-01010100-11010110-00111000529// CHECK-INST: sudot   za.s[w10, 0, vgx4], { z16.b - z19.b }, z4.b[1]530// CHECK-ENCODING: [0x38,0xd6,0x54,0xc1]531// CHECK-ERROR: instruction requires: sme2532// CHECK-UNKNOWN: c154d638 <unknown>533 534sudot   za.s[w8, 0, vgx4], {z12.b - z15.b}, z2.b[2]  // 11000001-01010010-10011001-10111000535// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z12.b - z15.b }, z2.b[2]536// CHECK-ENCODING: [0xb8,0x99,0x52,0xc1]537// CHECK-ERROR: instruction requires: sme2538// CHECK-UNKNOWN: c15299b8 <unknown>539 540sudot   za.s[w8, 0], {z12.b - z15.b}, z2.b[2]  // 11000001-01010010-10011001-10111000541// CHECK-INST: sudot   za.s[w8, 0, vgx4], { z12.b - z15.b }, z2.b[2]542// CHECK-ENCODING: [0xb8,0x99,0x52,0xc1]543// CHECK-ERROR: instruction requires: sme2544// CHECK-UNKNOWN: c15299b8 <unknown>545 546sudot   za.s[w10, 1, vgx4], {z0.b - z3.b}, z10.b[2]  // 11000001-01011010-11011000-00111001547// CHECK-INST: sudot   za.s[w10, 1, vgx4], { z0.b - z3.b }, z10.b[2]548// CHECK-ENCODING: [0x39,0xd8,0x5a,0xc1]549// CHECK-ERROR: instruction requires: sme2550// CHECK-UNKNOWN: c15ad839 <unknown>551 552sudot   za.s[w10, 1], {z0.b - z3.b}, z10.b[2]  // 11000001-01011010-11011000-00111001553// CHECK-INST: sudot   za.s[w10, 1, vgx4], { z0.b - z3.b }, z10.b[2]554// CHECK-ENCODING: [0x39,0xd8,0x5a,0xc1]555// CHECK-ERROR: instruction requires: sme2556// CHECK-UNKNOWN: c15ad839 <unknown>557 558sudot   za.s[w8, 5, vgx4], {z20.b - z23.b}, z14.b[2]  // 11000001-01011110-10011010-10111101559// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z20.b - z23.b }, z14.b[2]560// CHECK-ENCODING: [0xbd,0x9a,0x5e,0xc1]561// CHECK-ERROR: instruction requires: sme2562// CHECK-UNKNOWN: c15e9abd <unknown>563 564sudot   za.s[w8, 5], {z20.b - z23.b}, z14.b[2]  // 11000001-01011110-10011010-10111101565// CHECK-INST: sudot   za.s[w8, 5, vgx4], { z20.b - z23.b }, z14.b[2]566// CHECK-ENCODING: [0xbd,0x9a,0x5e,0xc1]567// CHECK-ERROR: instruction requires: sme2568// CHECK-UNKNOWN: c15e9abd <unknown>569 570sudot   za.s[w11, 2, vgx4], {z8.b - z11.b}, z1.b[1]  // 11000001-01010001-11110101-00111010571// CHECK-INST: sudot   za.s[w11, 2, vgx4], { z8.b - z11.b }, z1.b[1]572// CHECK-ENCODING: [0x3a,0xf5,0x51,0xc1]573// CHECK-ERROR: instruction requires: sme2574// CHECK-UNKNOWN: c151f53a <unknown>575 576sudot   za.s[w11, 2], {z8.b - z11.b}, z1.b[1]  // 11000001-01010001-11110101-00111010577// CHECK-INST: sudot   za.s[w11, 2, vgx4], { z8.b - z11.b }, z1.b[1]578// CHECK-ENCODING: [0x3a,0xf5,0x51,0xc1]579// CHECK-ERROR: instruction requires: sme2580// CHECK-UNKNOWN: c151f53a <unknown>581 582sudot   za.s[w9, 7, vgx4], {z12.b - z15.b}, z11.b[2]  // 11000001-01011011-10111001-10111111583// CHECK-INST: sudot   za.s[w9, 7, vgx4], { z12.b - z15.b }, z11.b[2]584// CHECK-ENCODING: [0xbf,0xb9,0x5b,0xc1]585// CHECK-ERROR: instruction requires: sme2586// CHECK-UNKNOWN: c15bb9bf <unknown>587 588sudot   za.s[w9, 7], {z12.b - z15.b}, z11.b[2]  // 11000001-01011011-10111001-10111111589// CHECK-INST: sudot   za.s[w9, 7, vgx4], { z12.b - z15.b }, z11.b[2]590// CHECK-ENCODING: [0xbf,0xb9,0x5b,0xc1]591// CHECK-ERROR: instruction requires: sme2592// CHECK-UNKNOWN: c15bb9bf <unknown>593 594