From beab0a3ecb2fa839295869fcff1c10237b99d085 Mon Sep 17 00:00:00 2001 From: Andrew Pinski Date: Tue, 19 Nov 2024 19:49:38 -0800 Subject: [PATCH] aarch64: Fix aarch64 after moving to C23 This fixes a few aarch64 specific testcases after the move to default to GNU C23. For the SME testcases, the GNU C23 cases as `()` changing to mean `(void)` instead of a non-prototype declaration; the non-prototype declaration merging was confusing some of the time so the updated way is the expected way even for that. For pic-*.c `-Wno-old-style-definition` was added not to warn about old style definitions. For pr113573.c, I added `-std=gnu17` since I was not sure if `(...)` with C23 would invoke the same issue. tested for aarch64-linux-gnu. PR testsuite/117680 gcc/testsuite/ChangeLog: * gcc.target/aarch64/pic-constantpool1.c: Add -Wno-old-style-definition. * gcc.target/aarch64/pic-symrefplus.c: Likewise. * gcc.target/aarch64/pr113573.c: Add `-std=gnu17` * gcc.target/aarch64/sme/streaming_mode_1.c: Correct testcase. * gcc.target/aarch64/sme/za_state_1.c: Likewise. * gcc.target/aarch64/sme/za_state_2.c: Likewise. Signed-off-by: Andrew Pinski --- gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c | 2 +- gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c | 2 +- gcc/testsuite/gcc.target/aarch64/pr113573.c | 2 +- gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c | 4 ++-- gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c | 4 ++-- gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c b/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c index 755c0b67ea45..1a5da9aacfa8 100644 --- a/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c +++ b/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c @@ -1,4 +1,4 @@ -/* { dg-options "-O2 -mcmodel=small -fPIC" } */ +/* { dg-options "-Wno-old-style-definition -O2 -mcmodel=small -fPIC" } */ /* { dg-do compile } */ /* { dg-require-effective-target fpic } */ diff --git a/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c b/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c index 0c5e7fe7fb47..ca019ce3b33e 100644 --- a/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c +++ b/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c @@ -1,4 +1,4 @@ -/* { dg-options "-O2 -mcmodel=small -fPIC -fno-builtin" } */ +/* { dg-options "-Wno-old-style-definition -O2 -mcmodel=small -fPIC -fno-builtin" } */ /* { dg-do compile } */ /* { dg-require-effective-target fpic } */ diff --git a/gcc/testsuite/gcc.target/aarch64/pr113573.c b/gcc/testsuite/gcc.target/aarch64/pr113573.c index fc8607f7218c..30175c4cb5c8 100644 --- a/gcc/testsuite/gcc.target/aarch64/pr113573.c +++ b/gcc/testsuite/gcc.target/aarch64/pr113573.c @@ -1,4 +1,4 @@ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -std=gnu17" } */ #pragma GCC aarch64 "arm_neon.h" typedef __Uint8x8_t uint8x8_t; diff --git a/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c b/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c index 8874b05b882c..cb1b05948d83 100644 --- a/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c +++ b/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c @@ -7,7 +7,7 @@ void sc_b (); void sc_b () [[arm::streaming_compatible]]; // { dg-error "conflicting types" } void sc_c () [[arm::streaming_compatible]]; -void sc_c () {} // Inherits attribute from declaration (confusingly). +void sc_c () {} // { dg-error "conflicting types" } void sc_d (); void sc_d () [[arm::streaming_compatible]] {} // { dg-error "conflicting types" } @@ -33,7 +33,7 @@ void s_b (); void s_b () [[arm::streaming]]; // { dg-error "conflicting types" } void s_c () [[arm::streaming]]; -void s_c () {} // Inherits attribute from declaration (confusingly). +void s_c () {} // { dg-error "conflicting types" } void s_d (); void s_d () [[arm::streaming]] {} // { dg-error "conflicting types" } diff --git a/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c b/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c index 856880e21093..7d7989b18b34 100644 --- a/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c +++ b/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c @@ -7,7 +7,7 @@ void shared_b (); void shared_b () [[arm::inout("za")]]; // { dg-error "conflicting types" } void shared_c () [[arm::inout("za")]]; -void shared_c () {} // Inherits attribute from declaration (confusingly). +void shared_c () {} // { dg-error "conflicting types" } void shared_d (); void shared_d () [[arm::inout("za")]] {} // { dg-error "conflicting types" } @@ -33,7 +33,7 @@ void preserved_b (); void preserved_b () [[arm::preserves("za")]]; // { dg-error "conflicting types" } void preserved_c () [[arm::preserves("za")]]; -void preserved_c () {} // Inherits attribute from declaration (confusingly). +void preserved_c () {} // { dg-error "conflicting types" } void preserved_d (); void preserved_d () [[arm::preserves("za")]] {} // { dg-error "conflicting types" } diff --git a/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c b/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c index 572ff309f8df..6f5803078df5 100644 --- a/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c +++ b/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c @@ -30,7 +30,7 @@ void shared_b () [[arm::inout("za")]]; void shared_c () [[arm::in("za")]] {} // { dg-error "conflicting types" } void shared_d () [[arm::in("za")]]; -[[arm::new("za")]] void shared_d () {} // { dg-error "cannot create a new 'za' scope since 'za' is shared with callers" } +[[arm::new("za")]] void shared_d () {} // { dg-error "conflicting types" } [[arm::new("za")]] void shared_e () {} void shared_e () [[arm::out("za")]]; // { dg-error "conflicting types" }