diff --git a/gcc/config/aarch64/aarch64-option-extensions.def b/gcc/config/aarch64/aarch64-option-extensions.def index cc42bd518dc..aa8d315c240 100644 --- a/gcc/config/aarch64/aarch64-option-extensions.def +++ b/gcc/config/aarch64/aarch64-option-extensions.def @@ -261,17 +261,17 @@ AARCH64_OPT_EXTENSION("fp8", FP8, (SIMD), (), (), "f8cvt") AARCH64_OPT_EXTENSION("fp8fma", FP8FMA, (FP8), (), (), "f8fma") -AARCH64_OPT_EXTENSION("ssve-fp8fma", SSVE_FP8FMA, (SME2,FP8), (), (), "smesf8fma") +AARCH64_OPT_EXTENSION("ssve-fp8fma", SSVE_FP8FMA, (SME2, FP8), (), (), "smesf8fma") AARCH64_OPT_EXTENSION("faminmax", FAMINMAX, (SIMD), (), (), "faminmax") -AARCH64_OPT_EXTENSION("fp8dot4", FP8DOT4, (FP8FMA), (), (), "f8dp4") +AARCH64_OPT_EXTENSION("fp8dot4", FP8DOT4, (FP8), (), (), "f8dp4") -AARCH64_OPT_EXTENSION("ssve-fp8dot4", SSVE_FP8DOT4, (SSVE_FP8FMA), (), (), "smesf8dp4") +AARCH64_OPT_EXTENSION("ssve-fp8dot4", SSVE_FP8DOT4, (SME2, FP8), (), (), "smesf8dp4") -AARCH64_OPT_EXTENSION("fp8dot2", FP8DOT2, (FP8DOT4), (), (), "f8dp2") +AARCH64_OPT_EXTENSION("fp8dot2", FP8DOT2, (FP8), (), (), "f8dp2") -AARCH64_OPT_EXTENSION("ssve-fp8dot2", SSVE_FP8DOT2, (SSVE_FP8DOT4), (), (), "smesf8dp2") +AARCH64_OPT_EXTENSION("ssve-fp8dot2", SSVE_FP8DOT2, (SME2, FP8), (), (), "smesf8dp2") AARCH64_OPT_EXTENSION("lut", LUT, (SIMD), (), (), "lut") diff --git a/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c b/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c index 0dcfbec05ba..97d68b94512 100644 --- a/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c +++ b/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c @@ -292,7 +292,7 @@ #ifndef __ARM_FEATURE_FP8 #error Foo #endif -#ifndef __ARM_FEATURE_FP8FMA +#ifdef __ARM_FEATURE_FP8FMA #error Foo #endif #ifndef __ARM_FEATURE_FP8DOT4 @@ -306,10 +306,10 @@ #ifndef __ARM_FEATURE_FP8 #error Foo #endif -#ifndef __ARM_FEATURE_FP8FMA +#ifdef __ARM_FEATURE_FP8FMA #error Foo #endif -#ifndef __ARM_FEATURE_FP8DOT4 +#ifdef __ARM_FEATURE_FP8DOT4 #error Foo #endif #ifndef __ARM_FEATURE_FP8DOT2 diff --git a/gcc/testsuite/gcc.target/aarch64/simd/vmla_lane_indices_1.c b/gcc/testsuite/gcc.target/aarch64/simd/vmla_lane_indices_1.c index d1a69f4ba54..739ff4c6a75 100644 --- a/gcc/testsuite/gcc.target/aarch64/simd/vmla_lane_indices_1.c +++ b/gcc/testsuite/gcc.target/aarch64/simd/vmla_lane_indices_1.c @@ -2,7 +2,7 @@ #include "arm_neon.h" -#pragma GCC target "+fp8dot4+fp8dot2" +#pragma GCC target "+fp8fma" void test(float16x4_t f16, float16x8_t f16q, float32x2_t f32, diff --git a/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_1.c b/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_1.c index 9ad789a8ad2..fa0df46db22 100644 --- a/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_1.c +++ b/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_1.c @@ -2,7 +2,7 @@ #include -#pragma GCC target ("arch=armv8.2-a+sve2+fp8dot2") +#pragma GCC target ("arch=armv8.2-a+sve2+fp8fma+fp8dot4+fp8dot2") void test (svfloat16_t f16, svmfloat8_t f8, fpm_t fpm, diff --git a/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c b/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c index dec00e3abf1..f6fce2f5c40 100644 --- a/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c +++ b/gcc/testsuite/gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c @@ -2,7 +2,7 @@ #include -#pragma GCC target ("arch=armv8.2-a+ssve-fp8fma+ssve-fp8dot2") +#pragma GCC target ("arch=armv8.2-a+ssve-fp8fma+ssve-fp8dot4+ssve-fp8dot2") void f1 (svfloat16_t f16, svmfloat8_t f8, fpm_t fpm, diff --git a/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c b/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c index 83fe5cff5d3..ce16f8b2672 100644 --- a/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c +++ b/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c @@ -4,9 +4,9 @@ #include "test_sve_acle.h" -#pragma GCC target "+fp8dot2" +#pragma GCC target "+fp8dot2+fp8dot4" #ifdef STREAMING_COMPATIBLE -#pragma GCC target "+ssve-fp8dot2" +#pragma GCC target "+ssve-fp8dot2+ssve-fp8dot4" #endif /* diff --git a/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_mf8.c b/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_mf8.c index 12e28e3284f..c22019990eb 100644 --- a/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_mf8.c +++ b/gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/dot_mf8.c @@ -4,9 +4,9 @@ #include "test_sve_acle.h" -#pragma GCC target "+fp8dot2" +#pragma GCC target "+fp8dot2+fp8dot4" #ifdef STREAMING_COMPATIBLE -#pragma GCC target "+ssve-fp8dot2" +#pragma GCC target "+ssve-fp8dot2+ssve-fp8dot4" #endif /*