Author: Paul Walker
Date: 2025-09-04T12:46:56+01:00
New Revision: 73c5bc5cfdc1e8e3dd8bbc048f9132170b80f748

URL: 
https://github.com/llvm/llvm-project/commit/73c5bc5cfdc1e8e3dd8bbc048f9132170b80f748
DIFF: 
https://github.com/llvm/llvm-project/commit/73c5bc5cfdc1e8e3dd8bbc048f9132170b80f748.diff

LOG: [SVE ACLE] Remove explicit sve2 requirement from crypto and b16b16 
builtins. (#156456)

The instructions have no direct dependency on SVE2, nor does the code
generator require it.

Added: 
    

Modified: 
    clang/include/clang/Basic/arm_sve.td
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesd.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aese.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesmc.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullb_128.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullt_128.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4e.c
    clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4ekey.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c
    clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c
    clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
    clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
    llvm/test/CodeGen/AArch64/sve2-intrinsics-sm4.ll

Removed: 
    


################################################################################
diff  --git a/clang/include/clang/Basic/arm_sve.td 
b/clang/include/clang/Basic/arm_sve.td
index b8b0f7fd1d959..9a9a9874fc979 100644
--- a/clang/include/clang/Basic/arm_sve.td
+++ b/clang/include/clang/Basic/arm_sve.td
@@ -1828,7 +1828,7 @@ let SVETargetGuard = "sve2,lut", SMETargetGuard = 
"sme2,lut" in {
 
////////////////////////////////////////////////////////////////////////////////
 // SVE2 - Optional
 
-let SVETargetGuard = "sve2,sve-aes", SMETargetGuard = "ssve-aes" in {
+let SVETargetGuard = "sve-aes", SMETargetGuard = "ssve-aes" in {
 def SVAESD   : SInst<"svaesd[_{d}]",   "ddd", "Uc", MergeNone, 
"aarch64_sve_aesd", [IsOverloadNone, VerifyRuntimeMode]>;
 def SVAESIMC : SInst<"svaesimc[_{d}]", "dd",  "Uc", MergeNone, 
"aarch64_sve_aesimc", [IsOverloadNone, VerifyRuntimeMode]>;
 def SVAESE   : SInst<"svaese[_{d}]",   "ddd", "Uc", MergeNone, 
"aarch64_sve_aese", [IsOverloadNone, VerifyRuntimeMode]>;
@@ -1845,12 +1845,12 @@ let SVETargetGuard = "sve-sha3", SMETargetGuard = 
"sve-sha3,sme2p1" in {
 def SVRAX1 : SInst<"svrax1[_{d}]",   "ddd", "lUl", MergeNone, 
"aarch64_sve_rax1", [IsOverloadNone, VerifyRuntimeMode]>;
 }
 
-let SVETargetGuard = "sve2-sm4", SMETargetGuard = InvalidMode in {
+let SVETargetGuard = "sve-sm4", SMETargetGuard = InvalidMode in {
 def SVSM4E    : SInst<"svsm4e[_{d}]",    "ddd", "Ui", MergeNone, 
"aarch64_sve_sm4e", [IsOverloadNone]>;
 def SVSM4EKEY : SInst<"svsm4ekey[_{d}]", "ddd", "Ui", MergeNone, 
"aarch64_sve_sm4ekey", [IsOverloadNone]>;
 }
 
-let SVETargetGuard = "sve2,sve-bitperm", SMETargetGuard = "ssve-bitperm" in {
+let SVETargetGuard = "sve-bitperm", SMETargetGuard = "ssve-bitperm" in {
 def SVBDEP   : SInst<"svbdep[_{d}]",   "ddd", "UcUsUiUl", MergeNone, 
"aarch64_sve_bdep_x", [VerifyRuntimeMode]>;
 def SVBDEP_N : SInst<"svbdep[_n_{d}]", "dda", "UcUsUiUl", MergeNone, 
"aarch64_sve_bdep_x", [VerifyRuntimeMode]>;
 def SVBEXT   : SInst<"svbext[_{d}]",   "ddd", "UcUsUiUl", MergeNone, 
"aarch64_sve_bext_x", [VerifyRuntimeMode]>;
@@ -1979,7 +1979,7 @@ let SVETargetGuard = "sve2p1", SMETargetGuard = "sme2" in 
{
   def SVPFALSE_COUNT_ALIAS : SInst<"svpfalse_c", "}v", "", MergeNone, "", 
[IsOverloadNone, VerifyRuntimeMode]>;
 }
 
-let SVETargetGuard = "sve2,sve-b16b16", SMETargetGuard = "sme2,sve-b16b16" in {
+let SVETargetGuard = "sve-b16b16", SMETargetGuard = "sme2,sve-b16b16" in {
 defm SVMUL_BF   : SInstZPZZ<"svmul",   "b", "aarch64_sve_fmul",   
"aarch64_sve_fmul_u", [VerifyRuntimeMode]>;
 defm SVADD_BF   : SInstZPZZ<"svadd",   "b", "aarch64_sve_fadd",   
"aarch64_sve_fadd_u", [VerifyRuntimeMode]>;
 defm SVSUB_BF   : SInstZPZZ<"svsub",   "b", "aarch64_sve_fsub",   
"aarch64_sve_fsub_u", [VerifyRuntimeMode]>;

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesd.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesd.c
index 17f4a54460297..813f189931033 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesd.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesd.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aese.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aese.c
index 768c8efbd57f1..6a1f981eb8486 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aese.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aese.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesmc.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesmc.c
index 249eaba246220..b4674a54dc9aa 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesmc.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_aesmc.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o 
- %s | FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o 
- -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
 
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
index 484a00af04cba..be7b795a6dfd1 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-bitperm 
-O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-bitperm 
-O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-bitperm -O1 -Werror -Wall -emit-llvm -o - %s | 
FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-bitperm -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature 
+ssve-bitperm -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: not %clang_cc1 -triple aarch64 -target-feature +sme -S 
-disable-O0-optnone -Werror -Wall -o /dev/null %s
 

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
index 953ef4d203783..a914478f0b89c 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-bitperm 
-O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-bitperm 
-O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-bitperm -O1 -Werror -Wall -emit-llvm -o - %s | 
FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-bitperm -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature 
+ssve-bitperm -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: not %clang_cc1 -triple aarch64 -target-feature +sme -S 
-disable-O0-optnone -Werror -Wall -o /dev/null %s
 

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
index 62ea1c5278bb5..788f7547fcf75 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-bitperm 
-O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-bitperm 
-O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-bitperm -O1 -Werror -Wall -emit-llvm -o - %s | 
FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-bitperm -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-bitperm -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature 
+ssve-bitperm -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: not %clang_cc1 -triple aarch64 -target-feature +sme -S 
-disable-O0-optnone -Werror -Wall -o /dev/null %s
 

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullb_128.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullb_128.c
index 3ca7ff7fd21e4..24420f70d1f52 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullb_128.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullb_128.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullt_128.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullt_128.c
index d97248c5b18fd..1d4d554298619 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullt_128.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_pmullt_128.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 
-Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-aes -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
 // RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4e.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4e.c
index ddd7e32d407ca..f7fdab54631c2 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4e.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4e.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve2-sm4 -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve2-sm4 -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve2-sm4 
-O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve2-sm4 
-O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-sm4 -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-sm4 -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-sm4 -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-sm4 -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 
 // REQUIRES: aarch64-registered-target
 

diff  --git a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4ekey.c 
b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4ekey.c
index d6c63914392e4..6b01bc885ed77 100644
--- a/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4ekey.c
+++ b/clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_sm4ekey.c
@@ -1,8 +1,8 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve2-sm4 -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve2 -target-feature +sve2-sm4 -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve2-sm4 
-O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
-// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve2-sm4 
-O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-sm4 -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck 
%s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -triple aarch64 -target-feature 
+sve -target-feature +sve-sm4 -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | 
FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-sm4 -O1 -Werror -Wall 
-emit-llvm -o - %s | FileCheck %s
+// RUN: %clang_cc1 -fclang-abi-compat=latest -DSVE_OVERLOADED_FORMS -triple 
aarch64 -target-feature +sve -target-feature +sve-sm4 -O1 -Werror -Wall 
-emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK
 
 // REQUIRES: aarch64-registered-target
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c
index 9d45b829c39bd..b8f3212e058de 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c
index a00ca93f9a6af..6f2ead67f08bc 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git 
a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
index 0ad3b448ee2cf..70cd8d6d49afe 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c
index fcd71acb38327..3ebdf483818d5 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git 
a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c
index e261eb4b8113c..f0581a854a136 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c
index fe6f19e9370a0..3e7e168e05424 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c
index 4c1f8d2676625..fd101dee019b9 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c
index 2939b684be744..ec0950f4c8865 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c 
b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c
index a27c316b53bd1..c666e8a2d2c75 100644
--- a/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c
+++ b/clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c
@@ -1,10 +1,10 @@
 // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
 // REQUIRES: aarch64-registered-target
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve2 -target-feature +sve-b16b16 -disable-O0-optnone -Werror 
-Wall -emit-llvm -o - -x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | 
FileCheck %s -check-prefix=CPP-CHECK
-// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - -x c++ %s | opt 
-S -p mem2reg,instcombine,tailcallelim | FileCheck %s -check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
%s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve 
-target-feature +sve-b16b16 -disable-O0-optnone -Werror -Wall -emit-llvm -o - 
-x c++ %s | opt -S -p mem2reg,instcombine,tailcallelim | FileCheck %s 
-check-prefix=CPP-CHECK
+// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature 
+sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 // RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +sme2 
-target-feature +sve-b16b16 -S -disable-O0-optnone -Werror -Wall -o /dev/null %s
 #include <arm_sve.h>
 

diff  --git 
a/clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp 
b/clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
index 62553821b065c..b251701f2998b 100644
--- a/clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
+++ b/clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
@@ -1,7 +1,7 @@
 // REQUIRES: aarch64-registered-target
 
-// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve 
-target-feature +sve2 -verify -verify-ignore-unexpected=error,note -emit-llvm 
-o - %s
-// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu 
-target-feature +sve -target-feature +sve2 -verify=overload 
-verify-ignore-unexpected=error,note -emit-llvm -o - %s
+// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -verify 
-verify-ignore-unexpected=error,note -emit-llvm -o - %s
+// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu 
-target-feature +sve -verify=overload -verify-ignore-unexpected=error,note 
-emit-llvm -o - %s
 
 #ifdef SVE_OVERLOADED_FORMS
 // A simple used,unused... macro, long enough to represent any SVE builtin.
@@ -14,110 +14,110 @@
 
 void test(uint8_t u8, uint16_t u16, uint32_t u32, uint64_t u64)
 {
-  // expected-error@+2 {{'svaesd_u8' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
-  // overload-error@+1 {{'svaesd' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
+  // expected-error@+2 {{'svaesd_u8' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
+  // overload-error@+1 {{'svaesd' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
   SVE_ACLE_FUNC(svaesd,_u8,,)(svundef_u8(), svundef_u8());
-  // expected-error@+2 {{'svaese_u8' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
-  // overload-error@+1 {{'svaese' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
+  // expected-error@+2 {{'svaese_u8' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
+  // overload-error@+1 {{'svaese' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
   SVE_ACLE_FUNC(svaese,_u8,,)(svundef_u8(), svundef_u8());
-  // expected-error@+2 {{'svaesimc_u8' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
-  // overload-error@+1 {{'svaesimc' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
+  // expected-error@+2 {{'svaesimc_u8' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
+  // overload-error@+1 {{'svaesimc' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
   SVE_ACLE_FUNC(svaesimc,_u8,,)(svundef_u8());
-  // expected-error@+2 {{'svaesmc_u8' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
-  // overload-error@+1 {{'svaesmc' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}
+  // expected-error@+2 {{'svaesmc_u8' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
+  // overload-error@+1 {{'svaesmc' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}
   SVE_ACLE_FUNC(svaesmc,_u8,,)(svundef_u8());
-  // expected-error@+2 {{'svbdep_u8' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_u8' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_u8,,)(svundef_u8(), svundef_u8());
-  // expected-error@+2 {{'svbdep_n_u8' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_n_u8' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_n_u8,,)(svundef_u8(), u8);
-  // expected-error@+2 {{'svbext_u8' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_u8' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_u8,,)(svundef_u8(), svundef_u8());
-  // expected-error@+2 {{'svbext_n_u8' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_n_u8' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_n_u8,,)(svundef_u8(), u8);
-  // expected-error@+2 {{'svbgrp_u8' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_u8' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_u8,,)(svundef_u8(), svundef_u8());
-  // expected-error@+2 {{'svbgrp_n_u8' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_n_u8' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_n_u8,,)(svundef_u8(), u8);
   
-  // expected-error@+2 {{'svbdep_u16' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_u16' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_u16,,)(svundef_u16(), svundef_u16());
-  // expected-error@+2 {{'svbdep_n_u16' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_n_u16' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_n_u16,,)(svundef_u16(), u16);
-  // expected-error@+2 {{'svbext_u16' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_u16' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_u16,,)(svundef_u16(), svundef_u16());
-  // expected-error@+2 {{'svbext_n_u16' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_n_u16' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_n_u16,,)(svundef_u16(), u16);
-  // expected-error@+2 {{'svbgrp_u16' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_u16' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_u16,,)(svundef_u16(), svundef_u16());
-  // expected-error@+2 {{'svbgrp_n_u16' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_n_u16' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_n_u16,,)(svundef_u16(), u16);
   
-  // expected-error@+2 {{'svbdep_u32' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_u32' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_u32,,)(svundef_u32(), svundef_u32());
-  // expected-error@+2 {{'svbdep_n_u32' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_n_u32' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_n_u32,,)(svundef_u32(), u32);
-  // expected-error@+2 {{'svbext_u32' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_u32' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_u32,,)(svundef_u32(), svundef_u32());
-  // expected-error@+2 {{'svbext_n_u32' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_n_u32' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_n_u32,,)(svundef_u32(), u32);
-  // expected-error@+2 {{'svbgrp_u32' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_u32' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_u32,,)(svundef_u32(), svundef_u32());
-  // expected-error@+2 {{'svbgrp_n_u32' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_n_u32' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_n_u32,,)(svundef_u32(), u32);
-  // expected-error@+2 {{'svsm4e_u32' needs target feature sve,sve2-sm4}}
-  // overload-error@+1 {{'svsm4e' needs target feature sve,sve2-sm4}}
+  // expected-error@+2 {{'svsm4e_u32' needs target feature sve,sve-sm4}}
+  // overload-error@+1 {{'svsm4e' needs target feature sve,sve-sm4}}
   SVE_ACLE_FUNC(svsm4e,_u32,,)(svundef_u32(), svundef_u32());
-  // expected-error@+2 {{'svsm4ekey_u32' needs target feature sve,sve2-sm4}}
-  // overload-error@+1 {{'svsm4ekey' needs target feature sve,sve2-sm4}}
+  // expected-error@+2 {{'svsm4ekey_u32' needs target feature sve,sve-sm4}}
+  // overload-error@+1 {{'svsm4ekey' needs target feature sve,sve-sm4}}
   SVE_ACLE_FUNC(svsm4ekey,_u32,,)(svundef_u32(), svundef_u32());
   
-  // expected-error@+2 {{'svbdep_u64' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_u64' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_u64,,)(svundef_u64(), svundef_u64());
-  // expected-error@+2 {{'svbdep_n_u64' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbdep_n_u64' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbdep' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbdep,_n_u64,,)(svundef_u64(), u64);
-  // expected-error@+2 {{'svbext_u64' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_u64' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_u64,,)(svundef_u64(), svundef_u64());
-  // expected-error@+2 {{'svbext_n_u64' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbext_n_u64' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbext' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbext,_n_u64,,)(svundef_u64(), u64);
-  // expected-error@+2 {{'svbgrp_u64' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_u64' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_u64,,)(svundef_u64(), svundef_u64());
-  // expected-error@+2 {{'svbgrp_n_u64' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
-  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve2,sve-bitperm)|(sme,ssve-bitperm)}}
+  // expected-error@+2 {{'svbgrp_n_u64' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
+  // overload-error@+1 {{'svbgrp' needs target feature 
(sve,sve-bitperm)|(sme,ssve-bitperm)}}
   SVE_ACLE_FUNC(svbgrp,_n_u64,,)(svundef_u64(), u64);
-  // expected-error@+2 {{'svpmullb_pair_u64' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
-  // overload-error@+1 {{'svpmullb_pair' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
+  // expected-error@+2 {{'svpmullb_pair_u64' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
+  // overload-error@+1 {{'svpmullb_pair' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
   SVE_ACLE_FUNC(svpmullb_pair,_u64,,)(svundef_u64(), svundef_u64());
-  // expected-error@+2 {{'svpmullb_pair_n_u64' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
-  // overload-error@+1 {{'svpmullb_pair' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
+  // expected-error@+2 {{'svpmullb_pair_n_u64' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
+  // overload-error@+1 {{'svpmullb_pair' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
   SVE_ACLE_FUNC(svpmullb_pair,_n_u64,,)(svundef_u64(), u64);
-  // expected-error@+2 {{'svpmullt_pair_u64' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
-  // overload-error@+1 {{'svpmullt_pair' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
+  // expected-error@+2 {{'svpmullt_pair_u64' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
+  // overload-error@+1 {{'svpmullt_pair' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
   SVE_ACLE_FUNC(svpmullt_pair,_u64,,)(svundef_u64(), svundef_u64());
-  // expected-error@+2 {{'svpmullt_pair_n_u64' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
-  // overload-error@+1 {{'svpmullt_pair' needs target feature 
(sve,sve2,sve-aes)|(sme,ssve-aes)}}}
+  // expected-error@+2 {{'svpmullt_pair_n_u64' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
+  // overload-error@+1 {{'svpmullt_pair' needs target feature 
(sve,sve-aes)|(sme,ssve-aes)}}}
   SVE_ACLE_FUNC(svpmullt_pair,_n_u64,,)(svundef_u64(), u64);
   // expected-error@+2 {{'svrax1_u64' needs target feature 
(sve,sve-sha3)|(sme,sve-sha3,sme2p1)}}
   // overload-error@+1 {{'svrax1' needs target feature 
(sve,sve-sha3)|(sme,sve-sha3,sme2p1)}}

diff  --git a/clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp 
b/clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
index f191a442fefe3..b6f2887c0f9c5 100644
--- a/clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
+++ b/clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve 
-target-feature +sve2 -verify -verify-ignore-unexpected=error,note -emit-llvm 
-o - %s
+// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -verify 
-verify-ignore-unexpected=error,note -emit-llvm -o - %s
 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sme 
-target-feature +sme2 -verify -verify-ignore-unexpected=error,note -emit-llvm 
-o - %s
 // REQUIRES: aarch64-registered-target
 
@@ -29,28 +29,28 @@ void test_with_sve_b16b16(svbool_t pg, svbfloat16_t op1, 
svbfloat16_t op2, svbfl
 
 void test_no_sve_b16b16(svbool_t pg, svbfloat16_t op1, svbfloat16_t op2, 
svbfloat16_t op3) MODE_ATTR
 {
-  // expected-error@+1 {{'svclamp_bf16' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svclamp_bf16' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svclamp_bf16(op1, op2, op3);
-  // expected-error@+1 {{'svadd_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svadd_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svadd_bf16_m(pg, op1, op2);
-  // expected-error@+1 {{'svmax_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmax_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmax_bf16_m(pg, op1, op2);
-  // expected-error@+1 {{'svmaxnm_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmaxnm_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmaxnm_bf16_m(pg, op1, op2);
-  // expected-error@+1 {{'svmin_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmin_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmin_bf16_m(pg, op1, op2);
-  // expected-error@+1 {{'svminnm_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svminnm_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svminnm_bf16_m(pg, op1, op2);
-  // expected-error@+1 {{'svmla_lane_bf16' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmla_lane_bf16' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmla_lane_bf16(op1, op2, op3, 1);
-  // expected-error@+1 {{'svmla_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmla_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmla_bf16_m(pg, op1, op2, op3);
-  // expected-error@+1 {{'svmls_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmls_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmls_bf16_m(pg, op1, op2, op3);
-  // expected-error@+1 {{'svmul_lane_bf16' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmul_lane_bf16' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmul_lane_bf16(op1, op2, 1);
-  // expected-error@+1 {{'svmul_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svmul_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svmul_bf16_m(pg, op1, op2);
-  // expected-error@+1 {{'svsub_bf16_m' needs target feature 
(sve,sve2,sve-b16b16)|(sme,sme2,sve-b16b16)}}
+  // expected-error@+1 {{'svsub_bf16_m' needs target feature 
(sve,sve-b16b16)|(sme,sme2,sve-b16b16)}}
   svsub_bf16_m(pg, op1, op2);
 }

diff  --git a/llvm/test/CodeGen/AArch64/sve2-intrinsics-sm4.ll 
b/llvm/test/CodeGen/AArch64/sve2-intrinsics-sm4.ll
index fb7dcb3485c68..e1050c1b551c7 100644
--- a/llvm/test/CodeGen/AArch64/sve2-intrinsics-sm4.ll
+++ b/llvm/test/CodeGen/AArch64/sve2-intrinsics-sm4.ll
@@ -1,5 +1,4 @@
 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
-; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve2-sm4 < %s | FileCheck %s
 ; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve,+sve-sm4 < %s | FileCheck %s
 
 ;


        
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to