diff --git a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp --- a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp +++ b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp @@ -3284,6 +3284,8 @@ {"sme", {AArch64::FeatureSME}}, {"sme-f64", {AArch64::FeatureSMEF64}}, {"sme-i64", {AArch64::FeatureSMEI64}}, + {"hbc", {AArch64::FeatureHBC}}, + {"mops", {AArch64::FeatureMOPS}}, // FIXME: Unsupported extensions {"lor", {}}, {"rdma", {}}, diff --git a/llvm/test/MC/AArch64/directive-arch_extension.s b/llvm/test/MC/AArch64/directive-arch_extension.s --- a/llvm/test/MC/AArch64/directive-arch_extension.s +++ b/llvm/test/MC/AArch64/directive-arch_extension.s @@ -83,3 +83,12 @@ .arch_extension flagm cfinv // CHECK: cfinv + +.arch_extension hbc +lbl: + bc.eq lbl +// CHECK: bc.eq lbl + +.arch_extension mops +cpyfp [x0]!, [x1]!, x2! +// CHECK: cpyfp [x0]!, [x1]!, x2!