https://gcc.gnu.org/g:d46be332818361d7a31065c6d46df7181505ab30

commit r15-8290-gd46be332818361d7a31065c6d46df7181505ab30
Author: Kyrylo Tkachov <ktkac...@nvidia.com>
Date:   Mon Mar 17 08:24:18 2025 -0700

    aarch64: Add +sve2p1 to -march=armv9.4-a flags
    
    The ArmARM says:
    "In an Armv9.4 implementation, if FEAT_SVE2 is implemented, FEAT_SVE2p1
    is implemented."
    
    We should enable +sve2p1 as part of -march=armv9.4-a, which this patch does.
    This makes gcc consistent with gas.
    Bootstrapped and tested on aarch64-none-linux-gnu.
    
    Signed-off-by: Kyrylo Tkachov <ktkac...@nvidia.com>
    
    gcc/
    
            * config/aarch64/aarch64-arches.def (...): Add SVE2p1.
            * doc/invoke.texi (AArch64 Options): Document +sve2p1 in
            -march=armv9.4-a.

Diff:
---
 gcc/config/aarch64/aarch64-arches.def | 2 +-
 gcc/doc/invoke.texi                   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/config/aarch64/aarch64-arches.def 
b/gcc/config/aarch64/aarch64-arches.def
index 34a792d69510..bf56fe9b4449 100644
--- a/gcc/config/aarch64/aarch64-arches.def
+++ b/gcc/config/aarch64/aarch64-arches.def
@@ -45,7 +45,7 @@ AARCH64_ARCH("armv9-a",       generic_armv9_a,   V9A  ,     
9,  (V8_5A, SVE2))
 AARCH64_ARCH("armv9.1-a",     generic_armv9_a,   V9_1A,     9,  (V8_6A, V9A))
 AARCH64_ARCH("armv9.2-a",     generic_armv9_a,   V9_2A,     9,  (V8_7A, V9_1A))
 AARCH64_ARCH("armv9.3-a",     generic_armv9_a,   V9_3A,     9,  (V8_8A, V9_2A))
-AARCH64_ARCH("armv9.4-a",     generic_armv9_a,   V9_4A,     9,  (V8_9A, V9_3A))
+AARCH64_ARCH("armv9.4-a",     generic_armv9_a,   V9_4A,     9,  (V8_9A, V9_3A, 
SVE2p1))
 AARCH64_ARCH("armv9.5-a",     generic_armv9_a,   V9_5A,     9,  (V9_4A, CPA, 
FAMINMAX, LUT))
 
 #undef AARCH64_ARCH
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 7bef9bbf1c00..1819bcdcdfb9 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -21708,7 +21708,7 @@ and the features that they enable by default:
 @item @samp{armv9.1-a} @tab Armv9.1-A @tab @samp{armv9-a}, @samp{+bf16}, 
@samp{+i8mm}
 @item @samp{armv9.2-a} @tab Armv9.2-A @tab @samp{armv9.1-a}, @samp{+wfxt}, 
@samp{+xs}
 @item @samp{armv9.3-a} @tab Armv9.3-A @tab @samp{armv9.2-a}, @samp{+mops}
-@item @samp{armv9.4-a} @tab Armv9.4-A @tab @samp{armv9.3-a}
+@item @samp{armv9.4-a} @tab Armv9.4-A @tab @samp{armv9.3-a}, @samp{+sve2p1}
 @item @samp{armv9.5-a} @tab Armv9.4-A @tab @samp{armv9.4-a}, @samp{cpa}, 
@samp{+faminmax}, @samp{+lut}
 @item @samp{armv8-r} @tab Armv8-R @tab @samp{armv8-r}
 @end multitable

Reply via email to