]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
aarch64: Define __ARM_FEATURE_FAMINMAX
authorRichard Sandiford <richard.sandiford@arm.com>
Tue, 22 Apr 2025 16:19:15 +0000 (17:19 +0100)
committerRichard Sandiford <richard.sandiford@arm.com>
Tue, 22 Apr 2025 16:19:15 +0000 (17:19 +0100)
We implemented FAMINMAX ACLE support but failed to define the
associated feature macro.

gcc/
* config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define
__ARM_FEATURE_FAMINMAX.

gcc/testsuite/
* gcc.target/aarch64/pragma_cpp_predefs_4.c: Test
__ARM_FEATURE_FAMINMAX.

gcc/config/aarch64/aarch64-c.cc
gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c

index d1e2ab9831dad3dc0bf7efd5c75146aec48aab16..98337b7f693bc4f7a743d6d74b02ed3dad4d80e3 100644 (file)
@@ -293,6 +293,7 @@ aarch64_update_cpp_builtins (cpp_reader *pfile)
   aarch64_def_or_undef (TARGET_SME2, "__ARM_FEATURE_SME2", pfile);
   aarch64_def_or_undef (AARCH64_HAVE_ISA (SME2p1),
                        "__ARM_FEATURE_SME2p1", pfile);
+  aarch64_def_or_undef (TARGET_FAMINMAX, "__ARM_FEATURE_FAMINMAX", pfile);
 
   /* Not for ACLE, but required to keep "float.h" correct if we switch
      target between implementations that do or do not support ARMv8.2-A
index dcac6d5eb6584d10a0d8eda730a100e24821be1a..3799fb46df125cd040d0445883626c99f1f04552 100644 (file)
 #ifndef __ARM_FEATURE_FP8DOT2
 #error Foo
 #endif
+
+#pragma GCC target "arch=armv9.4-a"
+#ifdef __ARM_FEATURE_FAMINMAX
+#error Foo
+#endif
+
+#pragma GCC target "arch=armv9.5-a"
+#ifndef __ARM_FEATURE_FAMINMAX
+#error Foo
+#endif
+
+#pragma GCC target "arch=armv8-a+faminmax"
+#ifndef __ARM_FEATURE_FAMINMAX
+#error Foo
+#endif