[llvm] 579ca5e - [AArch64] Replace sme-i64 by sme-i16i64 and sme-f64 by sme-f64f64
Caroline Concatto via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 19 02:57:01 PDT 2022
Author: Caroline Concatto
Date: 2022-10-19T10:56:46+01:00
New Revision: 579ca5e7e106291d193a840195cda725cbf63aae
URL: https://github.com/llvm/llvm-project/commit/579ca5e7e106291d193a840195cda725cbf63aae
DIFF: https://github.com/llvm/llvm-project/commit/579ca5e7e106291d193a840195cda725cbf63aae.diff
LOG: [AArch64] Replace sme-i64 by sme-i16i64 and sme-f64 by sme-f64f64
The names in developer.arm for these SME features are:
HaveSMEI16I64 and HaveSMEF64F64
so the new flag names are consistent with the documentation page
Reviewed By: sdesmalen, c-rhodes
Differential Revision: https://reviews.llvm.org/D135974
Added:
Modified:
llvm/include/llvm/Support/AArch64TargetParser.def
llvm/include/llvm/Support/AArch64TargetParser.h
llvm/lib/Target/AArch64/AArch64.td
llvm/lib/Target/AArch64/AArch64InstrInfo.td
llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
llvm/lib/Target/AArch64/SMEInstrFormats.td
llvm/test/CodeGen/AArch64/sme-intrinsics-add.ll
llvm/test/CodeGen/AArch64/sme-intrinsics-mopa.ll
llvm/test/CodeGen/AArch64/sme-intrinsics-mops.ll
llvm/test/MC/AArch64/SME/addha-diagnostics.s
llvm/test/MC/AArch64/SME/addha-u64.s
llvm/test/MC/AArch64/SME/addva-diagnostics.s
llvm/test/MC/AArch64/SME/addva-u64.s
llvm/test/MC/AArch64/SME/directives-negative.s
llvm/test/MC/AArch64/SME/directives.s
llvm/test/MC/AArch64/SME/feature.s
llvm/test/MC/AArch64/SME/fmopa-diagnostics.s
llvm/test/MC/AArch64/SME/fmopa-fp64.s
llvm/test/MC/AArch64/SME/fmops-diagnostics.s
llvm/test/MC/AArch64/SME/fmops-fp64.s
llvm/test/MC/AArch64/SME/smopa-64.s
llvm/test/MC/AArch64/SME/smopa-diagnostics.s
llvm/test/MC/AArch64/SME/smops-64.s
llvm/test/MC/AArch64/SME/smops-diagnostics.s
llvm/test/MC/AArch64/SME/sumopa-64.s
llvm/test/MC/AArch64/SME/sumopa-diagnostics.s
llvm/test/MC/AArch64/SME/sumops-64.s
llvm/test/MC/AArch64/SME/sumops-diagnostics.s
llvm/test/MC/AArch64/SME/umopa-64.s
llvm/test/MC/AArch64/SME/umopa-diagnostics.s
llvm/test/MC/AArch64/SME/umops-64.s
llvm/test/MC/AArch64/SME/umops-diagnostics.s
llvm/test/MC/AArch64/SME/usmopa-64.s
llvm/test/MC/AArch64/SME/usmopa-diagnostics.s
llvm/test/MC/AArch64/SME/usmops-64.s
llvm/test/MC/AArch64/SME/usmops-diagnostics.s
llvm/unittests/Support/TargetParserTest.cpp
Removed:
################################################################################
diff --git a/llvm/include/llvm/Support/AArch64TargetParser.def b/llvm/include/llvm/Support/AArch64TargetParser.def
index b0745c3130834..e5cb9b89cfac0 100644
--- a/llvm/include/llvm/Support/AArch64TargetParser.def
+++ b/llvm/include/llvm/Support/AArch64TargetParser.def
@@ -144,8 +144,8 @@ AARCH64_ARCH_EXT_NAME("brbe", AArch64::AEK_BRBE, "+brbe",
AARCH64_ARCH_EXT_NAME("pauth", AArch64::AEK_PAUTH, "+pauth", "-pauth")
AARCH64_ARCH_EXT_NAME("flagm", AArch64::AEK_FLAGM, "+flagm", "-flagm")
AARCH64_ARCH_EXT_NAME("sme", AArch64::AEK_SME, "+sme", "-sme")
-AARCH64_ARCH_EXT_NAME("sme-f64", AArch64::AEK_SMEF64, "+sme-f64", "-sme-f64")
-AARCH64_ARCH_EXT_NAME("sme-i64", AArch64::AEK_SMEI64, "+sme-i64", "-sme-i64")
+AARCH64_ARCH_EXT_NAME("sme-f64f64", AArch64::AEK_SMEF64F64, "+sme-f64f64", "-sme-f64f64")
+AARCH64_ARCH_EXT_NAME("sme-i16i64", AArch64::AEK_SMEI16I64, "+sme-i16i64", "-sme-i16i64")
AARCH64_ARCH_EXT_NAME("sme2", AArch64::AEK_SME2, "+sme2", "-sme2")
AARCH64_ARCH_EXT_NAME("hbc", AArch64::AEK_HBC, "+hbc", "-hbc")
AARCH64_ARCH_EXT_NAME("mops", AArch64::AEK_MOPS, "+mops", "-mops")
diff --git a/llvm/include/llvm/Support/AArch64TargetParser.h b/llvm/include/llvm/Support/AArch64TargetParser.h
index acc32341c8d39..8de7eb3aaaf0d 100644
--- a/llvm/include/llvm/Support/AArch64TargetParser.h
+++ b/llvm/include/llvm/Support/AArch64TargetParser.h
@@ -67,8 +67,8 @@ enum ArchExtKind : uint64_t {
AEK_PAUTH = 1ULL << 35, // FEAT_PAuth
AEK_FLAGM = 1ULL << 36, // FEAT_FlagM
AEK_SME = 1ULL << 37, // FEAT_SME
- AEK_SMEF64 = 1ULL << 38, // FEAT_SME_F64F64
- AEK_SMEI64 = 1ULL << 39, // FEAT_SME_I16I64
+ AEK_SMEF64F64 = 1ULL << 38, // FEAT_SME_F64F64
+ AEK_SMEI16I64 = 1ULL << 39, // FEAT_SME_I16I64
AEK_HBC = 1ULL << 40, // FEAT_HBC
AEK_MOPS = 1ULL << 41, // FEAT_MOPS
AEK_PERFMON = 1ULL << 42, // FEAT_PMUv3
diff --git a/llvm/lib/Target/AArch64/AArch64.td b/llvm/lib/Target/AArch64/AArch64.td
index efe0f9be9f044..80115aafaa93f 100644
--- a/llvm/lib/Target/AArch64/AArch64.td
+++ b/llvm/lib/Target/AArch64/AArch64.td
@@ -467,10 +467,10 @@ def FeatureRME : SubtargetFeature<"rme", "HasRME",
def FeatureSME : SubtargetFeature<"sme", "HasSME", "true",
"Enable Scalable Matrix Extension (SME) (FEAT_SME)", [FeatureBF16, FeatureUseScalarIncVL]>;
-def FeatureSMEF64 : SubtargetFeature<"sme-f64", "HasSMEF64", "true",
+def FeatureSMEF64F64 : SubtargetFeature<"sme-f64f64", "HasSMEF64F64", "true",
"Enable Scalable Matrix Extension (SME) F64F64 instructions (FEAT_SME_F64F64)", [FeatureSME]>;
-def FeatureSMEI64 : SubtargetFeature<"sme-i64", "HasSMEI64", "true",
+def FeatureSMEI16I64 : SubtargetFeature<"sme-i16i64", "HasSMEI16I64", "true",
"Enable Scalable Matrix Extension (SME) I16I64 instructions (FEAT_SME_I16I64)", [FeatureSME]>;
def FeatureSME2 : SubtargetFeature<"sme2", "HasSME2", "true",
@@ -645,7 +645,7 @@ def PAUnsupported : AArch64Unsupported {
}
def SMEUnsupported : AArch64Unsupported {
- let F = [HasSME, HasSMEF64, HasSMEI64, HasSME2];
+ let F = [HasSME, HasSMEF64F64, HasSMEI16I64, HasSME2];
}
include "AArch64SchedA53.td"
diff --git a/llvm/lib/Target/AArch64/AArch64InstrInfo.td b/llvm/lib/Target/AArch64/AArch64InstrInfo.td
index cfa2fdddf0143..56c30f44ea657 100644
--- a/llvm/lib/Target/AArch64/AArch64InstrInfo.td
+++ b/llvm/lib/Target/AArch64/AArch64InstrInfo.td
@@ -138,10 +138,10 @@ def HasSVE2BitPerm : Predicate<"Subtarget->hasSVE2BitPerm()">,
AssemblerPredicateWithAll<(all_of FeatureSVE2BitPerm), "sve2-bitperm">;
def HasSME : Predicate<"Subtarget->hasSME()">,
AssemblerPredicateWithAll<(all_of FeatureSME), "sme">;
-def HasSMEF64 : Predicate<"Subtarget->hasSMEF64()">,
- AssemblerPredicateWithAll<(all_of FeatureSMEF64), "sme-f64">;
-def HasSMEI64 : Predicate<"Subtarget->hasSMEI64()">,
- AssemblerPredicateWithAll<(all_of FeatureSMEI64), "sme-i64">;
+def HasSMEF64F64 : Predicate<"Subtarget->hasSMEF64F64()">,
+ AssemblerPredicateWithAll<(all_of FeatureSMEF64F64), "sme-f64f64">;
+def HasSMEI16I64 : Predicate<"Subtarget->hasSMEI16I64()">,
+ AssemblerPredicateWithAll<(all_of FeatureSMEI16I64), "sme-i16i64">;
def HasSME2 : Predicate<"Subtarget->hasSME2()">,
AssemblerPredicate<(all_of FeatureSME2), "sme2">;
// A subset of SVE(2) instructions are legal in Streaming SVE execution mode,
diff --git a/llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td b/llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
index 8932d9ab9b0fb..924cc4f8ae94b 100644
--- a/llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
+++ b/llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
@@ -43,7 +43,7 @@ def ADDVA_MPPZ_S : sme_add_vector_to_tile_u32<0b1, "addva">;
def : Pat<(AArch64rdsvl (i32 simm6_32b:$imm)), (RDSVLI_XI simm6_32b:$imm)>;
}
-let Predicates = [HasSMEI64] in {
+let Predicates = [HasSMEI16I64] in {
def ADDHA_MPPZ_D : sme_add_vector_to_tile_u64<0b0, "addha">;
def ADDVA_MPPZ_D : sme_add_vector_to_tile_u64<0b1, "addva">;
}
@@ -60,7 +60,7 @@ defm FMOPA_MPPZZ_S : sme_outer_product_fp32<0b0, "fmopa", int_aarch64_sme_mopa>;
defm FMOPS_MPPZZ_S : sme_outer_product_fp32<0b1, "fmops", int_aarch64_sme_mops>;
}
-let Predicates = [HasSMEF64] in {
+let Predicates = [HasSMEF64F64] in {
defm FMOPA_MPPZZ_D : sme_outer_product_fp64<0b0, "fmopa", int_aarch64_sme_mopa>;
defm FMOPS_MPPZZ_D : sme_outer_product_fp64<0b1, "fmops", int_aarch64_sme_mops>;
}
@@ -79,7 +79,7 @@ defm USMOPA_MPPZZ_S : sme_int_outer_product_i32<0b100, "usmopa", int_aarch64_sme
defm USMOPS_MPPZZ_S : sme_int_outer_product_i32<0b101, "usmops", int_aarch64_sme_usmops_wide>;
}
-let Predicates = [HasSMEI64] in {
+let Predicates = [HasSMEI16I64] in {
defm SMOPA_MPPZZ_D : sme_int_outer_product_i64<0b000, "smopa", int_aarch64_sme_smopa_wide>;
defm SMOPS_MPPZZ_D : sme_int_outer_product_i64<0b001, "smops", int_aarch64_sme_smops_wide>;
defm UMOPA_MPPZZ_D : sme_int_outer_product_i64<0b110, "umopa", int_aarch64_sme_umopa_wide>;
diff --git a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
index 9bfd98595a5d6..c9b3e227c6af3 100644
--- a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+++ b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
@@ -3297,8 +3297,8 @@ static const struct Extension {
{"flagm", {AArch64::FeatureFlagM}},
{"rme", {AArch64::FeatureRME}},
{"sme", {AArch64::FeatureSME}},
- {"sme-f64", {AArch64::FeatureSMEF64}},
- {"sme-i64", {AArch64::FeatureSMEI64}},
+ {"sme-f64f64", {AArch64::FeatureSMEF64F64}},
+ {"sme-i16i64", {AArch64::FeatureSMEI16I64}},
{"hbc", {AArch64::FeatureHBC}},
{"mops", {AArch64::FeatureMOPS}},
// FIXME: Unsupported extensions
diff --git a/llvm/lib/Target/AArch64/SMEInstrFormats.td b/llvm/lib/Target/AArch64/SMEInstrFormats.td
index cb36aa26e8398..621a8862954b8 100644
--- a/llvm/lib/Target/AArch64/SMEInstrFormats.td
+++ b/llvm/lib/Target/AArch64/SMEInstrFormats.td
@@ -247,7 +247,7 @@ def : Pat<(int_aarch64_sme_addva
(nxv4i32 ZPR32:$zn)),
(ADDVA_MPPZ_PSEUDO_S imm0_3:$tile, $pn, $pm, $zn)>;
-let Predicates = [HasSMEI64] in {
+let Predicates = [HasSMEI16I64] in {
def ADDHA_MPPZ_PSEUDO_D : sme_add_vector_to_tile_pseudo<ZPR64>;
def ADDVA_MPPZ_PSEUDO_D : sme_add_vector_to_tile_pseudo<ZPR64>;
diff --git a/llvm/test/CodeGen/AArch64/sme-intrinsics-add.ll b/llvm/test/CodeGen/AArch64/sme-intrinsics-add.ll
index d979484a7c5a0..e81329da1e0b4 100644
--- a/llvm/test/CodeGen/AArch64/sme-intrinsics-add.ll
+++ b/llvm/test/CodeGen/AArch64/sme-intrinsics-add.ll
@@ -1,5 +1,5 @@
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
-; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme-i64 -verify-machineinstrs < %s | FileCheck %s
+; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme-i16i64 -verify-machineinstrs < %s | FileCheck %s
define void @addha_s(<vscale x 4 x i1> %pn, <vscale x 4 x i1> %pm, <vscale x 4 x i32> %zn) {
; CHECK-LABEL: addha_s:
diff --git a/llvm/test/CodeGen/AArch64/sme-intrinsics-mopa.ll b/llvm/test/CodeGen/AArch64/sme-intrinsics-mopa.ll
index 2ec28a5d2d5b5..b5c801dcf92b1 100644
--- a/llvm/test/CodeGen/AArch64/sme-intrinsics-mopa.ll
+++ b/llvm/test/CodeGen/AArch64/sme-intrinsics-mopa.ll
@@ -109,8 +109,8 @@ define void @usmopa_d(<vscale x 8 x i1> %pn, <vscale x 8 x i1> %pm, <vscale x 8
ret void
}
-attributes #0 = { "target-features"="+sme-i64" }
-attributes #1 = { "target-features"="+sme-f64" }
+attributes #0 = { "target-features"="+sme-i16i64" }
+attributes #1 = { "target-features"="+sme-f64f64" }
declare void @llvm.aarch64.sme.mopa.wide.nxv8bf16(i64, <vscale x 8 x i1>, <vscale x 8 x i1>, <vscale x 8 x bfloat>, <vscale x 8 x bfloat>)
declare void @llvm.aarch64.sme.mopa.wide.nxv8f16(i64, <vscale x 8 x i1>, <vscale x 8 x i1>, <vscale x 8 x half>, <vscale x 8 x half>)
diff --git a/llvm/test/CodeGen/AArch64/sme-intrinsics-mops.ll b/llvm/test/CodeGen/AArch64/sme-intrinsics-mops.ll
index 6d4de9fe177da..417f20b7998fd 100644
--- a/llvm/test/CodeGen/AArch64/sme-intrinsics-mops.ll
+++ b/llvm/test/CodeGen/AArch64/sme-intrinsics-mops.ll
@@ -109,8 +109,8 @@ define void @usmops_d(<vscale x 8 x i1> %pn, <vscale x 8 x i1> %pm, <vscale x 8
ret void
}
-attributes #0 = { "target-features"="+sme-i64" }
-attributes #1 = { "target-features"="+sme-f64" }
+attributes #0 = { "target-features"="+sme-i16i64" }
+attributes #1 = { "target-features"="+sme-f64f64" }
declare void @llvm.aarch64.sme.mops.wide.nxv8bf16(i64, <vscale x 8 x i1>, <vscale x 8 x i1>, <vscale x 8 x bfloat>, <vscale x 8 x bfloat>)
declare void @llvm.aarch64.sme.mops.wide.nxv8f16(i64, <vscale x 8 x i1>, <vscale x 8 x i1>, <vscale x 8 x half>, <vscale x 8 x half>)
diff --git a/llvm/test/MC/AArch64/SME/addha-diagnostics.s b/llvm/test/MC/AArch64/SME/addha-diagnostics.s
index 3c7cb3a851da9..0916c87ed2ace 100644
--- a/llvm/test/MC/AArch64/SME/addha-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/addha-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/addha-u64.s b/llvm/test/MC/AArch64/SME/addha-u64.s
index c5b077a5e1e2e..27979604db5f4 100644
--- a/llvm/test/MC/AArch64/SME/addha-u64.s
+++ b/llvm/test/MC/AArch64/SME/addha-u64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
addha za0.d, p0/m, p0/m, z0.d
// CHECK-INST: addha za0.d, p0/m, p0/m, z0.d
// CHECK-ENCODING: [0x00,0x00,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d00000 <unknown>
addha za5.d, p5/m, p2/m, z10.d
// CHECK-INST: addha za5.d, p5/m, p2/m, z10.d
// CHECK-ENCODING: [0x45,0x55,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d05545 <unknown>
addha za7.d, p3/m, p7/m, z13.d
// CHECK-INST: addha za7.d, p3/m, p7/m, z13.d
// CHECK-ENCODING: [0xa7,0xed,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d0eda7 <unknown>
addha za7.d, p7/m, p7/m, z31.d
// CHECK-INST: addha za7.d, p7/m, p7/m, z31.d
// CHECK-ENCODING: [0xe7,0xff,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d0ffe7 <unknown>
addha za5.d, p3/m, p0/m, z17.d
// CHECK-INST: addha za5.d, p3/m, p0/m, z17.d
// CHECK-ENCODING: [0x25,0x0e,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d00e25 <unknown>
addha za1.d, p1/m, p4/m, z1.d
// CHECK-INST: addha za1.d, p1/m, p4/m, z1.d
// CHECK-ENCODING: [0x21,0x84,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d08421 <unknown>
addha za0.d, p5/m, p2/m, z19.d
// CHECK-INST: addha za0.d, p5/m, p2/m, z19.d
// CHECK-ENCODING: [0x60,0x56,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d05660 <unknown>
addha za0.d, p6/m, p0/m, z12.d
// CHECK-INST: addha za0.d, p6/m, p0/m, z12.d
// CHECK-ENCODING: [0x80,0x19,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d01980 <unknown>
addha za1.d, p2/m, p6/m, z1.d
// CHECK-INST: addha za1.d, p2/m, p6/m, z1.d
// CHECK-ENCODING: [0x21,0xc8,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d0c821 <unknown>
addha za5.d, p2/m, p0/m, z22.d
// CHECK-INST: addha za5.d, p2/m, p0/m, z22.d
// CHECK-ENCODING: [0xc5,0x0a,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d00ac5 <unknown>
addha za2.d, p5/m, p7/m, z9.d
// CHECK-INST: addha za2.d, p5/m, p7/m, z9.d
// CHECK-ENCODING: [0x22,0xf5,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d0f522 <unknown>
addha za7.d, p2/m, p5/m, z12.d
// CHECK-INST: addha za7.d, p2/m, p5/m, z12.d
// CHECK-ENCODING: [0x87,0xa9,0xd0,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d0a987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/addva-diagnostics.s b/llvm/test/MC/AArch64/SME/addva-diagnostics.s
index e68217afdcb06..03ee91c0faca2 100644
--- a/llvm/test/MC/AArch64/SME/addva-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/addva-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/addva-u64.s b/llvm/test/MC/AArch64/SME/addva-u64.s
index 48d0c3dff28ee..5895502cf11d0 100644
--- a/llvm/test/MC/AArch64/SME/addva-u64.s
+++ b/llvm/test/MC/AArch64/SME/addva-u64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
addva za0.d, p0/m, p0/m, z0.d
// CHECK-INST: addva za0.d, p0/m, p0/m, z0.d
// CHECK-ENCODING: [0x00,0x00,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d10000 <unknown>
addva za5.d, p5/m, p2/m, z10.d
// CHECK-INST: addva za5.d, p5/m, p2/m, z10.d
// CHECK-ENCODING: [0x45,0x55,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d15545 <unknown>
addva za7.d, p3/m, p7/m, z13.d
// CHECK-INST: addva za7.d, p3/m, p7/m, z13.d
// CHECK-ENCODING: [0xa7,0xed,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d1eda7 <unknown>
addva za7.d, p7/m, p7/m, z31.d
// CHECK-INST: addva za7.d, p7/m, p7/m, z31.d
// CHECK-ENCODING: [0xe7,0xff,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d1ffe7 <unknown>
addva za5.d, p3/m, p0/m, z17.d
// CHECK-INST: addva za5.d, p3/m, p0/m, z17.d
// CHECK-ENCODING: [0x25,0x0e,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d10e25 <unknown>
addva za1.d, p1/m, p4/m, z1.d
// CHECK-INST: addva za1.d, p1/m, p4/m, z1.d
// CHECK-ENCODING: [0x21,0x84,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d18421 <unknown>
addva za0.d, p5/m, p2/m, z19.d
// CHECK-INST: addva za0.d, p5/m, p2/m, z19.d
// CHECK-ENCODING: [0x60,0x56,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d15660 <unknown>
addva za0.d, p6/m, p0/m, z12.d
// CHECK-INST: addva za0.d, p6/m, p0/m, z12.d
// CHECK-ENCODING: [0x80,0x19,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d11980 <unknown>
addva za1.d, p2/m, p6/m, z1.d
// CHECK-INST: addva za1.d, p2/m, p6/m, z1.d
// CHECK-ENCODING: [0x21,0xc8,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d1c821 <unknown>
addva za5.d, p2/m, p0/m, z22.d
// CHECK-INST: addva za5.d, p2/m, p0/m, z22.d
// CHECK-ENCODING: [0xc5,0x0a,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d10ac5 <unknown>
addva za2.d, p5/m, p7/m, z9.d
// CHECK-INST: addva za2.d, p5/m, p7/m, z9.d
// CHECK-ENCODING: [0x22,0xf5,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d1f522 <unknown>
addva za7.d, p2/m, p5/m, z12.d
// CHECK-INST: addva za7.d, p2/m, p5/m, z12.d
// CHECK-ENCODING: [0x87,0xa9,0xd1,0xc0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: c0d1a987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/directives-negative.s b/llvm/test/MC/AArch64/SME/directives-negative.s
index 954cc9eb8c29d..3df90b3016869 100644
--- a/llvm/test/MC/AArch64/SME/directives-negative.s
+++ b/llvm/test/MC/AArch64/SME/directives-negative.s
@@ -6,16 +6,16 @@ smstart
// CHECK: error: instruction requires: sme
// CHECK-NEXT: smstart
-.arch_extension sme-f64
-.arch_extension nosme-f64
+.arch_extension sme-f64f64
+.arch_extension nosme-f64f64
fmopa za0.d, p0/m, p0/m, z0.d, z0.d
-// CHECK: error: instruction requires: sme-f64
+// CHECK: error: instruction requires: sme-f64f64
// CHECK-NEXT: fmopa za0.d, p0/m, p0/m, z0.d, z0.d
-.arch_extension sme-i64
-.arch_extension nosme-i64
+.arch_extension sme-i16i64
+.arch_extension nosme-i16i64
addha za0.d, p0/m, p0/m, z0.d
-// CHECK: error: instruction requires: sme-i64
+// CHECK: error: instruction requires: sme-i16i64
// CHECK-NEXT: addha za0.d, p0/m, p0/m, z0.d
.arch armv9-a+sme
@@ -24,14 +24,14 @@ smstart
// CHECK: error: instruction requires: sme
// CHECK-NEXT: smstart
-.arch armv9-a+sme-f64
-.arch armv9-a+nosme-f64
+.arch armv9-a+sme-f64f64
+.arch armv9-a+nosme-f64f64
fmopa za0.d, p0/m, p0/m, z0.d, z0.d
-// CHECK: error: instruction requires: sme-f64
+// CHECK: error: instruction requires: sme-f64f64
// CHECK-NEXT: fmopa za0.d, p0/m, p0/m, z0.d, z0.d
-.arch armv9-a+sme-i64
-.arch armv9-a+nosme-i64
+.arch armv9-a+sme-i16i64
+.arch armv9-a+nosme-i16i64
addha za0.d, p0/m, p0/m, z0.d
-// CHECK: error: instruction requires: sme-i64
+// CHECK: error: instruction requires: sme-i16i64
// CHECK-NEXT: addha za0.d, p0/m, p0/m, z0.d
diff --git a/llvm/test/MC/AArch64/SME/directives.s b/llvm/test/MC/AArch64/SME/directives.s
index ddbcf94ba1fab..ca3ba9c2f8e1e 100644
--- a/llvm/test/MC/AArch64/SME/directives.s
+++ b/llvm/test/MC/AArch64/SME/directives.s
@@ -6,17 +6,17 @@ smstart
.arch_extension nosme
-.arch_extension sme-f64
+.arch_extension sme-f64f64
fmopa za0.d, p0/m, p0/m, z0.d, z0.d
// CHECK: fmopa za0.d, p0/m, p0/m, z0.d, z0.d
-.arch_extension nosme-f64
+.arch_extension nosme-f64f64
-.arch_extension sme-i64
+.arch_extension sme-i16i64
addha za0.d, p0/m, p0/m, z0.d
// CHECK: addha za0.d, p0/m, p0/m, z0.d
-.arch_extension nosme-i64
+.arch_extension nosme-i16i64
.arch armv9-a+sme
smstart
@@ -24,12 +24,12 @@ smstart
.arch armv9-a+nosme
-.arch armv9-a+sme-f64
+.arch armv9-a+sme-f64f64
fmopa za0.d, p0/m, p0/m, z0.d, z0.d
// CHECK: fmopa za0.d, p0/m, p0/m, z0.d, z0.d
-.arch armv9-a+nosme-f64
+.arch armv9-a+nosme-f64f64
-.arch armv9-a+sme-i64
+.arch armv9-a+sme-i16i64
addha za0.d, p0/m, p0/m, z0.d
// CHECK: addha za0.d, p0/m, p0/m, z0.d
diff --git a/llvm/test/MC/AArch64/SME/feature.s b/llvm/test/MC/AArch64/SME/feature.s
index 092ebb4b978e8..f6193b1557b1b 100644
--- a/llvm/test/MC/AArch64/SME/feature.s
+++ b/llvm/test/MC/AArch64/SME/feature.s
@@ -1,6 +1,6 @@
// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+sme < %s | FileCheck %s
-// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+sme-f64 < %s | FileCheck %s
-// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+sme-i64 < %s | FileCheck %s
+// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+sme-f64f64 < %s | FileCheck %s
+// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+sme-i16i64 < %s | FileCheck %s
// Verify +sme flags imply streaming compatible SVE instructions.
tbx z0.b, z1.b, z2.b
diff --git a/llvm/test/MC/AArch64/SME/fmopa-diagnostics.s b/llvm/test/MC/AArch64/SME/fmopa-diagnostics.s
index 7a2f2efdb96ce..f84436ed4a1fa 100644
--- a/llvm/test/MC/AArch64/SME/fmopa-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/fmopa-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-f64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-f64f64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/fmopa-fp64.s b/llvm/test/MC/AArch64/SME/fmopa-fp64.s
index 089487d0c6a7d..081865ca414f3 100644
--- a/llvm/test/MC/AArch64/SME/fmopa-fp64.s
+++ b/llvm/test/MC/AArch64/SME/fmopa-fp64.s
@@ -1,15 +1,15 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64f64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-f64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64f64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-f64f64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64f64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64f64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-f64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-f64f64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// --------------------------------------------------------------------------//
@@ -18,71 +18,71 @@
fmopa za0.d, p0/m, p0/m, z0.d, z0.d
// CHECK-INST: fmopa za0.d, p0/m, p0/m, z0.d, z0.d
// CHECK-ENCODING: [0x00,0x00,0xc0,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c00000 <unknown>
fmopa za5.d, p5/m, p2/m, z10.d, z21.d
// CHECK-INST: fmopa za5.d, p5/m, p2/m, z10.d, z21.d
// CHECK-ENCODING: [0x45,0x55,0xd5,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80d55545 <unknown>
fmopa za7.d, p3/m, p7/m, z13.d, z8.d
// CHECK-INST: fmopa za7.d, p3/m, p7/m, z13.d, z8.d
// CHECK-ENCODING: [0xa7,0xed,0xc8,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c8eda7 <unknown>
fmopa za7.d, p7/m, p7/m, z31.d, z31.d
// CHECK-INST: fmopa za7.d, p7/m, p7/m, z31.d, z31.d
// CHECK-ENCODING: [0xe7,0xff,0xdf,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80dfffe7 <unknown>
fmopa za5.d, p3/m, p0/m, z17.d, z16.d
// CHECK-INST: fmopa za5.d, p3/m, p0/m, z17.d, z16.d
// CHECK-ENCODING: [0x25,0x0e,0xd0,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80d00e25 <unknown>
fmopa za1.d, p1/m, p4/m, z1.d, z30.d
// CHECK-INST: fmopa za1.d, p1/m, p4/m, z1.d, z30.d
// CHECK-ENCODING: [0x21,0x84,0xde,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80de8421 <unknown>
fmopa za0.d, p5/m, p2/m, z19.d, z20.d
// CHECK-INST: fmopa za0.d, p5/m, p2/m, z19.d, z20.d
// CHECK-ENCODING: [0x60,0x56,0xd4,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80d45660 <unknown>
fmopa za0.d, p6/m, p0/m, z12.d, z2.d
// CHECK-INST: fmopa za0.d, p6/m, p0/m, z12.d, z2.d
// CHECK-ENCODING: [0x80,0x19,0xc2,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c21980 <unknown>
fmopa za1.d, p2/m, p6/m, z1.d, z26.d
// CHECK-INST: fmopa za1.d, p2/m, p6/m, z1.d, z26.d
// CHECK-ENCODING: [0x21,0xc8,0xda,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80dac821 <unknown>
fmopa za5.d, p2/m, p0/m, z22.d, z30.d
// CHECK-INST: fmopa za5.d, p2/m, p0/m, z22.d, z30.d
// CHECK-ENCODING: [0xc5,0x0a,0xde,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80de0ac5 <unknown>
fmopa za2.d, p5/m, p7/m, z9.d, z1.d
// CHECK-INST: fmopa za2.d, p5/m, p7/m, z9.d, z1.d
// CHECK-ENCODING: [0x22,0xf5,0xc1,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c1f522 <unknown>
fmopa za7.d, p2/m, p5/m, z12.d, z11.d
// CHECK-INST: fmopa za7.d, p2/m, p5/m, z12.d, z11.d
// CHECK-ENCODING: [0x87,0xa9,0xcb,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80cba987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/fmops-diagnostics.s b/llvm/test/MC/AArch64/SME/fmops-diagnostics.s
index bf38ead5048ad..5bc947d8b9f97 100644
--- a/llvm/test/MC/AArch64/SME/fmops-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/fmops-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-f64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-f64f64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/fmops-fp64.s b/llvm/test/MC/AArch64/SME/fmops-fp64.s
index f2e5831739b3e..10c5080770a40 100644
--- a/llvm/test/MC/AArch64/SME/fmops-fp64.s
+++ b/llvm/test/MC/AArch64/SME/fmops-fp64.s
@@ -1,15 +1,15 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64f64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-f64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64f64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-f64f64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f64f64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f64f64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-f64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-f64f64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// --------------------------------------------------------------------------//
@@ -18,71 +18,71 @@
fmops za0.d, p0/m, p0/m, z0.d, z0.d
// CHECK-INST: fmops za0.d, p0/m, p0/m, z0.d, z0.d
// CHECK-ENCODING: [0x10,0x00,0xc0,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c00010 <unknown>
fmops za5.d, p5/m, p2/m, z10.d, z21.d
// CHECK-INST: fmops za5.d, p5/m, p2/m, z10.d, z21.d
// CHECK-ENCODING: [0x55,0x55,0xd5,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80d55555 <unknown>
fmops za7.d, p3/m, p7/m, z13.d, z8.d
// CHECK-INST: fmops za7.d, p3/m, p7/m, z13.d, z8.d
// CHECK-ENCODING: [0xb7,0xed,0xc8,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c8edb7 <unknown>
fmops za7.d, p7/m, p7/m, z31.d, z31.d
// CHECK-INST: fmops za7.d, p7/m, p7/m, z31.d, z31.d
// CHECK-ENCODING: [0xf7,0xff,0xdf,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80dffff7 <unknown>
fmops za5.d, p3/m, p0/m, z17.d, z16.d
// CHECK-INST: fmops za5.d, p3/m, p0/m, z17.d, z16.d
// CHECK-ENCODING: [0x35,0x0e,0xd0,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80d00e35 <unknown>
fmops za1.d, p1/m, p4/m, z1.d, z30.d
// CHECK-INST: fmops za1.d, p1/m, p4/m, z1.d, z30.d
// CHECK-ENCODING: [0x31,0x84,0xde,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80de8431 <unknown>
fmops za0.d, p5/m, p2/m, z19.d, z20.d
// CHECK-INST: fmops za0.d, p5/m, p2/m, z19.d, z20.d
// CHECK-ENCODING: [0x70,0x56,0xd4,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80d45670 <unknown>
fmops za0.d, p6/m, p0/m, z12.d, z2.d
// CHECK-INST: fmops za0.d, p6/m, p0/m, z12.d, z2.d
// CHECK-ENCODING: [0x90,0x19,0xc2,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c21990 <unknown>
fmops za1.d, p2/m, p6/m, z1.d, z26.d
// CHECK-INST: fmops za1.d, p2/m, p6/m, z1.d, z26.d
// CHECK-ENCODING: [0x31,0xc8,0xda,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80dac831 <unknown>
fmops za5.d, p2/m, p0/m, z22.d, z30.d
// CHECK-INST: fmops za5.d, p2/m, p0/m, z22.d, z30.d
// CHECK-ENCODING: [0xd5,0x0a,0xde,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80de0ad5 <unknown>
fmops za2.d, p5/m, p7/m, z9.d, z1.d
// CHECK-INST: fmops za2.d, p5/m, p7/m, z9.d, z1.d
// CHECK-ENCODING: [0x32,0xf5,0xc1,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80c1f532 <unknown>
fmops za7.d, p2/m, p5/m, z12.d, z11.d
// CHECK-INST: fmops za7.d, p2/m, p5/m, z12.d, z11.d
// CHECK-ENCODING: [0x97,0xa9,0xcb,0x80]
-// CHECK-ERROR: instruction requires: sme-f64
+// CHECK-ERROR: instruction requires: sme-f64f64
// CHECK-UNKNOWN: 80cba997 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/smopa-64.s b/llvm/test/MC/AArch64/SME/smopa-64.s
index 6b06ec1bc0b0a..5c47487884724 100644
--- a/llvm/test/MC/AArch64/SME/smopa-64.s
+++ b/llvm/test/MC/AArch64/SME/smopa-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
smopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: smopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x00,0x00,0xc0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c00000 <unknown>
smopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: smopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x45,0x55,0xd5,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0d55545 <unknown>
smopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: smopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xa7,0xed,0xc8,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c8eda7 <unknown>
smopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: smopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xe7,0xff,0xdf,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0dfffe7 <unknown>
smopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: smopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x25,0x0e,0xd0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0d00e25 <unknown>
smopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: smopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x21,0x84,0xde,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0de8421 <unknown>
smopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: smopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x60,0x56,0xd4,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0d45660 <unknown>
smopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: smopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x80,0x19,0xc2,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c21980 <unknown>
smopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: smopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x21,0xc8,0xda,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0dac821 <unknown>
smopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: smopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xc5,0x0a,0xde,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0de0ac5 <unknown>
smopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: smopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x22,0xf5,0xc1,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c1f522 <unknown>
smopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: smopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x87,0xa9,0xcb,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0cba987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/smopa-diagnostics.s b/llvm/test/MC/AArch64/SME/smopa-diagnostics.s
index 9351c12d68b68..435e6cb4b1650 100644
--- a/llvm/test/MC/AArch64/SME/smopa-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/smopa-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/smops-64.s b/llvm/test/MC/AArch64/SME/smops-64.s
index 5865204f00c81..e3c384a006168 100644
--- a/llvm/test/MC/AArch64/SME/smops-64.s
+++ b/llvm/test/MC/AArch64/SME/smops-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
smops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: smops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x10,0x00,0xc0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c00010 <unknown>
smops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: smops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x55,0x55,0xd5,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0d55555 <unknown>
smops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: smops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xb7,0xed,0xc8,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c8edb7 <unknown>
smops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: smops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xf7,0xff,0xdf,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0dffff7 <unknown>
smops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: smops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x35,0x0e,0xd0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0d00e35 <unknown>
smops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: smops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x31,0x84,0xde,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0de8431 <unknown>
smops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: smops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x70,0x56,0xd4,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0d45670 <unknown>
smops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: smops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x90,0x19,0xc2,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c21990 <unknown>
smops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: smops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x31,0xc8,0xda,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0dac831 <unknown>
smops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: smops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xd5,0x0a,0xde,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0de0ad5 <unknown>
smops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: smops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x32,0xf5,0xc1,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0c1f532 <unknown>
smops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: smops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x97,0xa9,0xcb,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0cba997 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/smops-diagnostics.s b/llvm/test/MC/AArch64/SME/smops-diagnostics.s
index 385876417c1f7..5d10a33aeb8ed 100644
--- a/llvm/test/MC/AArch64/SME/smops-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/smops-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/sumopa-64.s b/llvm/test/MC/AArch64/SME/sumopa-64.s
index 87a1f4b19f26a..df5a7ff5192a6 100644
--- a/llvm/test/MC/AArch64/SME/sumopa-64.s
+++ b/llvm/test/MC/AArch64/SME/sumopa-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
sumopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: sumopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x00,0x00,0xe0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e00000 <unknown>
sumopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: sumopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x45,0x55,0xf5,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0f55545 <unknown>
sumopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: sumopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xa7,0xed,0xe8,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e8eda7 <unknown>
sumopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: sumopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xe7,0xff,0xff,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0ffffe7 <unknown>
sumopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: sumopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x25,0x0e,0xf0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0f00e25 <unknown>
sumopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: sumopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x21,0x84,0xfe,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fe8421 <unknown>
sumopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: sumopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x60,0x56,0xf4,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0f45660 <unknown>
sumopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: sumopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x80,0x19,0xe2,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e21980 <unknown>
sumopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: sumopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x21,0xc8,0xfa,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fac821 <unknown>
sumopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: sumopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xc5,0x0a,0xfe,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fe0ac5 <unknown>
sumopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: sumopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x22,0xf5,0xe1,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e1f522 <unknown>
sumopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: sumopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x87,0xa9,0xeb,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0eba987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/sumopa-diagnostics.s b/llvm/test/MC/AArch64/SME/sumopa-diagnostics.s
index c9088846f9837..ab57f10b8598a 100644
--- a/llvm/test/MC/AArch64/SME/sumopa-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/sumopa-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/sumops-64.s b/llvm/test/MC/AArch64/SME/sumops-64.s
index d805572d132da..b88406f317846 100644
--- a/llvm/test/MC/AArch64/SME/sumops-64.s
+++ b/llvm/test/MC/AArch64/SME/sumops-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
sumops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: sumops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x10,0x00,0xe0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e00010 <unknown>
sumops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: sumops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x55,0x55,0xf5,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0f55555 <unknown>
sumops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: sumops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xb7,0xed,0xe8,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e8edb7 <unknown>
sumops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: sumops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xf7,0xff,0xff,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fffff7 <unknown>
sumops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: sumops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x35,0x0e,0xf0,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0f00e35 <unknown>
sumops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: sumops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x31,0x84,0xfe,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fe8431 <unknown>
sumops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: sumops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x70,0x56,0xf4,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0f45670 <unknown>
sumops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: sumops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x90,0x19,0xe2,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e21990 <unknown>
sumops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: sumops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x31,0xc8,0xfa,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fac831 <unknown>
sumops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: sumops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xd5,0x0a,0xfe,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0fe0ad5 <unknown>
sumops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: sumops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x32,0xf5,0xe1,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0e1f532 <unknown>
sumops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: sumops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x97,0xa9,0xeb,0xa0]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a0eba997 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/sumops-diagnostics.s b/llvm/test/MC/AArch64/SME/sumops-diagnostics.s
index 1c7bf587cee7d..874255ee9576e 100644
--- a/llvm/test/MC/AArch64/SME/sumops-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/sumops-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/umopa-64.s b/llvm/test/MC/AArch64/SME/umopa-64.s
index 872f7fe183d84..95a7a523c78b3 100644
--- a/llvm/test/MC/AArch64/SME/umopa-64.s
+++ b/llvm/test/MC/AArch64/SME/umopa-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
umopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: umopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x00,0x00,0xe0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e00000 <unknown>
umopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: umopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x45,0x55,0xf5,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1f55545 <unknown>
umopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: umopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xa7,0xed,0xe8,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e8eda7 <unknown>
umopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: umopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xe7,0xff,0xff,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1ffffe7 <unknown>
umopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: umopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x25,0x0e,0xf0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1f00e25 <unknown>
umopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: umopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x21,0x84,0xfe,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fe8421 <unknown>
umopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: umopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x60,0x56,0xf4,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1f45660 <unknown>
umopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: umopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x80,0x19,0xe2,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e21980 <unknown>
umopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: umopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x21,0xc8,0xfa,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fac821 <unknown>
umopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: umopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xc5,0x0a,0xfe,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fe0ac5 <unknown>
umopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: umopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x22,0xf5,0xe1,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e1f522 <unknown>
umopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: umopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x87,0xa9,0xeb,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1eba987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/umopa-diagnostics.s b/llvm/test/MC/AArch64/SME/umopa-diagnostics.s
index 552628f443a19..f39b52e1015a2 100644
--- a/llvm/test/MC/AArch64/SME/umopa-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/umopa-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/umops-64.s b/llvm/test/MC/AArch64/SME/umops-64.s
index 6554abb4be469..4e8be1e03ccf5 100644
--- a/llvm/test/MC/AArch64/SME/umops-64.s
+++ b/llvm/test/MC/AArch64/SME/umops-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
umops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: umops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x10,0x00,0xe0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e00010 <unknown>
umops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: umops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x55,0x55,0xf5,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1f55555 <unknown>
umops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: umops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xb7,0xed,0xe8,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e8edb7 <unknown>
umops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: umops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xf7,0xff,0xff,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fffff7 <unknown>
umops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: umops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x35,0x0e,0xf0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1f00e35 <unknown>
umops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: umops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x31,0x84,0xfe,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fe8431 <unknown>
umops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: umops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x70,0x56,0xf4,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1f45670 <unknown>
umops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: umops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x90,0x19,0xe2,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e21990 <unknown>
umops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: umops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x31,0xc8,0xfa,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fac831 <unknown>
umops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: umops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xd5,0x0a,0xfe,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1fe0ad5 <unknown>
umops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: umops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x32,0xf5,0xe1,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1e1f532 <unknown>
umops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: umops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x97,0xa9,0xeb,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1eba997 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/umops-diagnostics.s b/llvm/test/MC/AArch64/SME/umops-diagnostics.s
index c869cd9841ab2..c72358607ffa7 100644
--- a/llvm/test/MC/AArch64/SME/umops-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/umops-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/usmopa-64.s b/llvm/test/MC/AArch64/SME/usmopa-64.s
index 7da286c92c789..ec27a2383ef08 100644
--- a/llvm/test/MC/AArch64/SME/usmopa-64.s
+++ b/llvm/test/MC/AArch64/SME/usmopa-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
usmopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: usmopa za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x00,0x00,0xc0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c00000 <unknown>
usmopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: usmopa za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x45,0x55,0xd5,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1d55545 <unknown>
usmopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: usmopa za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xa7,0xed,0xc8,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c8eda7 <unknown>
usmopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: usmopa za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xe7,0xff,0xdf,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1dfffe7 <unknown>
usmopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: usmopa za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x25,0x0e,0xd0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1d00e25 <unknown>
usmopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: usmopa za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x21,0x84,0xde,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1de8421 <unknown>
usmopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: usmopa za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x60,0x56,0xd4,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1d45660 <unknown>
usmopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: usmopa za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x80,0x19,0xc2,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c21980 <unknown>
usmopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: usmopa za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x21,0xc8,0xda,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1dac821 <unknown>
usmopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: usmopa za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xc5,0x0a,0xde,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1de0ac5 <unknown>
usmopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: usmopa za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x22,0xf5,0xc1,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c1f522 <unknown>
usmopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: usmopa za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x87,0xa9,0xcb,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1cba987 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/usmopa-diagnostics.s b/llvm/test/MC/AArch64/SME/usmopa-diagnostics.s
index 2f3f9ef51f553..5f453379c77f0 100644
--- a/llvm/test/MC/AArch64/SME/usmopa-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/usmopa-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/test/MC/AArch64/SME/usmops-64.s b/llvm/test/MC/AArch64/SME/usmops-64.s
index a72596a882f07..e0126e1c1abe7 100644
--- a/llvm/test/MC/AArch64/SME/usmops-64.s
+++ b/llvm/test/MC/AArch64/SME/usmops-64.s
@@ -1,85 +1,85 @@
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
// RUN: | FileCheck %s --check-prefix=CHECK-ERROR
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
-// RUN: | llvm-objdump -d --mattr=+sme-i64 - | FileCheck %s --check-prefix=CHECK-INST
-// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
+// RUN: | llvm-objdump -d --mattr=+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
+// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-i16i64 < %s \
// RUN: | llvm-objdump -d --mattr=-sme - | FileCheck %s --check-prefix=CHECK-UNKNOWN
// Disassemble encoding and check the re-encoding (-show-encoding) matches.
-// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i64 < %s \
+// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-i16i64 < %s \
// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
-// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i64 -disassemble -show-encoding \
+// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-i16i64 -disassemble -show-encoding \
// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
usmops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-INST: usmops za0.d, p0/m, p0/m, z0.h, z0.h
// CHECK-ENCODING: [0x10,0x00,0xc0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c00010 <unknown>
usmops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-INST: usmops za5.d, p5/m, p2/m, z10.h, z21.h
// CHECK-ENCODING: [0x55,0x55,0xd5,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1d55555 <unknown>
usmops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-INST: usmops za7.d, p3/m, p7/m, z13.h, z8.h
// CHECK-ENCODING: [0xb7,0xed,0xc8,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c8edb7 <unknown>
usmops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-INST: usmops za7.d, p7/m, p7/m, z31.h, z31.h
// CHECK-ENCODING: [0xf7,0xff,0xdf,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1dffff7 <unknown>
usmops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-INST: usmops za5.d, p3/m, p0/m, z17.h, z16.h
// CHECK-ENCODING: [0x35,0x0e,0xd0,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1d00e35 <unknown>
usmops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-INST: usmops za1.d, p1/m, p4/m, z1.h, z30.h
// CHECK-ENCODING: [0x31,0x84,0xde,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1de8431 <unknown>
usmops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-INST: usmops za0.d, p5/m, p2/m, z19.h, z20.h
// CHECK-ENCODING: [0x70,0x56,0xd4,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1d45670 <unknown>
usmops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-INST: usmops za0.d, p6/m, p0/m, z12.h, z2.h
// CHECK-ENCODING: [0x90,0x19,0xc2,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c21990 <unknown>
usmops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-INST: usmops za1.d, p2/m, p6/m, z1.h, z26.h
// CHECK-ENCODING: [0x31,0xc8,0xda,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1dac831 <unknown>
usmops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-INST: usmops za5.d, p2/m, p0/m, z22.h, z30.h
// CHECK-ENCODING: [0xd5,0x0a,0xde,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1de0ad5 <unknown>
usmops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-INST: usmops za2.d, p5/m, p7/m, z9.h, z1.h
// CHECK-ENCODING: [0x32,0xf5,0xc1,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1c1f532 <unknown>
usmops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-INST: usmops za7.d, p2/m, p5/m, z12.h, z11.h
// CHECK-ENCODING: [0x97,0xa9,0xcb,0xa1]
-// CHECK-ERROR: instruction requires: sme-i64
+// CHECK-ERROR: instruction requires: sme-i16i64
// CHECK-UNKNOWN: a1cba997 <unknown>
diff --git a/llvm/test/MC/AArch64/SME/usmops-diagnostics.s b/llvm/test/MC/AArch64/SME/usmops-diagnostics.s
index a4d96ee9f301b..d58c1d57ea66e 100644
--- a/llvm/test/MC/AArch64/SME/usmops-diagnostics.s
+++ b/llvm/test/MC/AArch64/SME/usmops-diagnostics.s
@@ -1,4 +1,4 @@
-// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i64 2>&1 < %s| FileCheck %s
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s
// ------------------------------------------------------------------------- //
// Invalid tile
diff --git a/llvm/unittests/Support/TargetParserTest.cpp b/llvm/unittests/Support/TargetParserTest.cpp
index 4308d250cc9cf..16d9b5ddc3c48 100644
--- a/llvm/unittests/Support/TargetParserTest.cpp
+++ b/llvm/unittests/Support/TargetParserTest.cpp
@@ -1503,7 +1503,7 @@ TEST(TargetParserTest, AArch64ExtensionFeatures) {
AArch64::AEK_BF16, AArch64::AEK_I8MM, AArch64::AEK_F32MM,
AArch64::AEK_F64MM, AArch64::AEK_TME, AArch64::AEK_LS64,
AArch64::AEK_BRBE, AArch64::AEK_PAUTH, AArch64::AEK_FLAGM,
- AArch64::AEK_SME, AArch64::AEK_SMEF64, AArch64::AEK_SMEI64,
+ AArch64::AEK_SME, AArch64::AEK_SMEF64F64, AArch64::AEK_SMEI16I64,
AArch64::AEK_SME2, AArch64::AEK_HBC, AArch64::AEK_MOPS,
AArch64::AEK_PERFMON};
@@ -1560,8 +1560,8 @@ TEST(TargetParserTest, AArch64ExtensionFeatures) {
EXPECT_TRUE(llvm::is_contained(Features, "+pauth"));
EXPECT_TRUE(llvm::is_contained(Features, "+flagm"));
EXPECT_TRUE(llvm::is_contained(Features, "+sme"));
- EXPECT_TRUE(llvm::is_contained(Features, "+sme-f64"));
- EXPECT_TRUE(llvm::is_contained(Features, "+sme-i64"));
+ EXPECT_TRUE(llvm::is_contained(Features, "+sme-f64f64"));
+ EXPECT_TRUE(llvm::is_contained(Features, "+sme-i16i64"));
EXPECT_TRUE(llvm::is_contained(Features, "+sme2"));
EXPECT_TRUE(llvm::is_contained(Features, "+hbc"));
EXPECT_TRUE(llvm::is_contained(Features, "+mops"));
@@ -1639,8 +1639,8 @@ TEST(TargetParserTest, AArch64ArchExtFeature) {
{"f32mm", "nof32mm", "+f32mm", "-f32mm"},
{"f64mm", "nof64mm", "+f64mm", "-f64mm"},
{"sme", "nosme", "+sme", "-sme"},
- {"sme-f64", "nosme-f64", "+sme-f64", "-sme-f64"},
- {"sme-i64", "nosme-i64", "+sme-i64", "-sme-i64"},
+ {"sme-f64f64", "nosme-f64f64", "+sme-f64f64", "-sme-f64f64"},
+ {"sme-i16i64", "nosme-i16i64", "+sme-i16i64", "-sme-i16i64"},
{"sme2", "nosme2", "+sme2", "-sme2"},
{"hbc", "nohbc", "+hbc", "-hbc"},
{"mops", "nomops", "+mops", "-mops"},
More information about the llvm-commits
mailing list