[committed] RISC-V testsuite adjustments for c23

Mix of fixes and workarounds by passing in -std=gnu17.  The former is the
preferred approach, but occasionally we have code that's just fugly to fix.

gcc/testsuite/
	* gcc.target/riscv/cmo-32.c: Pass in -std=gnu17.
	* gcc.target/riscv/cmo-64.c: Likewise.
	* gcc.target/riscv/pr98777.c: Likewise.
	* gcc.target/riscv/rvv/vsetvl/pr115214.c: Likewise.
	* gcc.target/riscv/rvv/autovec/pr113469.c: Likewise.
	* gcc.target/riscv/rvv/autovec/pr111391-1.c: Fix prototype for c23.
	* gcc.target/riscv/rvv/vsetvl/vsetvl_bug-1.c: Likewise.
	* gcc.target/riscv/sum-of-two-s12-const-2.c: Likewise.
	* gcc.target/riscv/target-attr-01.c: Likewise.
	* gcc.target/riscv/target-attr-02.c: Likewise.
	* gcc.target/riscv/target-attr-03.c: Likewise.
	* gcc.target/riscv/target-attr-04.c: Likewise.
	* gcc.target/riscv/target-attr-05.c: Likewise.
	* gcc.target/riscv/target-attr-06.c: Likewise.
	* gcc.target/riscv/target-attr-07.c: Likewise.
	* gcc.target/riscv/target-attr-08.c: Likewise.
	* gcc.target/riscv/target-attr-09.c: Likewise.
	* gcc.target/riscv/target-attr-10.c: Likewise.
	* gcc.target/riscv/target-attr-11.c: Likewise.
	* gcc.target/riscv/target-attr-12.c: Likewise.
	* gcc.target/riscv/target-attr-13.c: Likewise.
	* gcc.target/riscv/target-attr-14.c: Likewise.
	* gcc.target/riscv/target-attr-15.c: Likewise.
	* gcc.target/riscv/target-attr-bad-01.c: Likewise.
	* gcc.target/riscv/target-attr-bad-02.c: Likewise.
	* gcc.target/riscv/target-attr-bad-03.c: Likewise.
	* gcc.target/riscv/target-attr-bad-04.c: Likewise.
	* gcc.target/riscv/target-attr-bad-05.c: Likewise.
	* gcc.target/riscv/target-attr-bad-06.c: Likewise.
	* gcc.target/riscv/target-attr-bad-07.c: Likewise.
	* gcc.target/riscv/target-attr-bad-08.c: Likewise.
	* gcc.target/riscv/target-attr-bad-09.c: Likewise.
	* gcc.target/riscv/target-attr-bad-10.c: Likewise.
This commit is contained in:
Jeff Law 2024-11-16 11:30:04 -07:00
parent 9c18fe5056
commit e30bc91e96
33 changed files with 38 additions and 40 deletions

View file

@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target rv32} */
/* { dg-options "-march=rv32gc_zicbom_zicbop_zicboz -mabi=ilp32" } */
/* { dg-options "-march=rv32gc_zicbom_zicbop_zicboz -mabi=ilp32 -std=gnu17" } */
#include "riscv_cmo.h"

View file

@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target rv64 } */
/* { dg-options "-march=rv64gc_zicbom_zicbop_zicboz -mabi=lp64d" } */
/* { dg-options "-march=rv64gc_zicbom_zicbop_zicboz -mabi=lp64d -std=gnu17" } */
#include "riscv_cmo.h"

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-fstrict-aliasing" } */
/* { dg-options "-fstrict-aliasing -std=gnu17" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
typedef struct {

View file

@ -1,11 +1,11 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -Wno-int-conversion -Wno-implicit-function -Wno-incompatible-pointer-types -Wno-implicit-function-declaration -Ofast -ftree-vectorize" } */
int d ();
typedef struct
{
int b;
} c;
int d (c *);
int
e (char *f, long g)
{

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv32gcv -mabi=ilp32d -O3 -fno-vect-cost-model" } */
/* { dg-options "-march=rv32gcv -mabi=ilp32d -O3 -fno-vect-cost-model -std=gnu17" } */
struct a {
int b;

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-mrvv-vector-bits=scalable -march=rv64gcv -mabi=lp64d -O3 -w" } */
/* { dg-options "-mrvv-vector-bits=scalable -march=rv64gcv -mabi=lp64d -O3 -w -std=gnu17" } */
/* { dg-skip-if "" { *-*-* } { "-flto" } } */
#include <riscv_vector.h>

View file

@ -13,9 +13,7 @@ int yabba = 1;
int
f (a, b)
unsigned char a;
unsigned long b;
f (unsigned char a, unsigned long b)
{
long i, j, p, q, r, s;

View file

@ -6,7 +6,7 @@
/* { dg-options { -march=rv64gcv -mabi=lp64d -O2 } } */
/* { dg-skip-if "" { *-*-* } { "-O0" "O1" "-Og" "-Os" "-Oz" } } */
int a() {
int a(char x[]) {
char b[4096];
if (a(b))
a(b);

View file

@ -10,7 +10,7 @@
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0" } } */
long foo () __attribute__((target("arch=rv64gc_zba")));
long foo (long a, long b) __attribute__((target("arch=rv64gc_zba")));
long foo (long a, long b)
{
return a + (b * 2);

View file

@ -10,7 +10,7 @@
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0" } } */
long foo () __attribute__((target("arch=+zba")));
long foo (long a, long b) __attribute__((target("arch=+zba")));
long foo (long a, long b)
{
return a + (b * 2);

View file

@ -11,7 +11,7 @@
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0" } } */
long foo () __attribute__((target("arch=rv64gc")));
long foo (long a, long b) __attribute__((target("arch=rv64gc")));
long foo (long a, long b)
{
return a + (b * 2);

View file

@ -13,7 +13,7 @@
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zmmul1p0_zaamo1p0_zalrsc1p0" } } */
long foo () __attribute__((target("cpu=sifive-u74")));
long foo (long a, long b) __attribute__((target("cpu=sifive-u74")));
long foo (long a, long b)
{
return a + (b * 2);

View file

@ -11,7 +11,7 @@
** sh1add\s*a0,a1,a0
** ...
*/
long foo () __attribute__((target("cpu=sifive-u74;arch=rv64gc_zba")));
long foo (long a, long b) __attribute__((target("cpu=sifive-u74;arch=rv64gc_zba")));
long foo (long a, long b)
{
return a + (b * 2);

View file

@ -11,7 +11,7 @@
** sh1add\s*a0,a1,a0
** ...
*/
long foo ()
long foo (long a, long b)
__attribute__((target("cpu=sifive-u74;tune=sifive-5-series;arch=rv64gc_zba")));
long foo (long a, long b)
{

View file

@ -9,7 +9,7 @@
** # tune = sifive-5-series
** ...
*/
long foo () __attribute__((target("tune=sifive-5-series")));
long foo (long a, long b) __attribute__((target("tune=sifive-5-series")));
long foo (long a, long b)
{
return a + (b * 2);

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
/* { dg-final { check-function-bodies "**" "" } } */
long foo ()
long foo (long a, long b)
__attribute__((target("arch=rv64gc_zbb")))
__attribute__((target("arch=rv64gc_zba")));

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
/* { dg-final { check-function-bodies "**" "" } } */
long foo ()
long foo (long a, long b)
__attribute__((target("cpu=sifive-e20")))
__attribute__((target("cpu=sifive-u74")));

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
/* { dg-final { check-function-bodies "**" "" } } */
long foo ()
long foo (long a, long b)
__attribute__((target("tune=rocket")))
__attribute__((target("tune=sifive-u74")));

View file

@ -3,10 +3,10 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
/* { dg-final { check-function-bodies "**" "" } } */
long foo ()
long foo (long a, long b)
__attribute__((target("arch=rv64gc_zbb")));
long foo ()
long foo (long a, long b)
__attribute__((target("arch=rv64gc_zba")));
/*

View file

@ -3,10 +3,10 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
/* { dg-final { check-function-bodies "**" "" } } */
long foo ()
long foo (long a, long b)
__attribute__((target("cpu=sifive-e20")));
long foo ()
long foo (long a, long b)
__attribute__((target("cpu=sifive-u74")));
/*

View file

@ -3,10 +3,10 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
/* { dg-final { check-function-bodies "**" "" } } */
long foo ()
long foo (long a, long b)
__attribute__((target("tune=rocket")));
long foo ()
long foo (long a, long b)
__attribute__((target("tune=sifive-u74")));
/*

View file

@ -10,7 +10,7 @@
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0" } } */
long foo () __attribute__((target("arch=rv64gc_zba")));
long foo (long a, long b) __attribute__((target("arch=rv64gc_zba")));
long foo (long a, long b)
{
return a + (b * 2);
@ -35,7 +35,7 @@ long bar (long a, long b)
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_xtheadba1p0" } } */
long foo_th () __attribute__((target("arch=rv64gc_xtheadba")));
long foo_th (long, long) __attribute__((target("arch=rv64gc_xtheadba")));
long foo_th (long a, long b)
{
return a + (b * 2);

View file

@ -10,7 +10,7 @@
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_zba1p0" } } */
long foo () __attribute__((target("arch=rv64gc_zba")));
long foo (long a, long b) __attribute__((target("arch=rv64gc_zba")));
long foo (long a, long b)
{
return a + (b * 2);
@ -35,7 +35,7 @@ long bar (long a, long b)
** ...
*/
/* { dg-final { scan-assembler ".option arch, rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zaamo1p0_zalrsc1p0_zca1p0_zcd1p0_xtheadba1p0" } } */
long foo_th () __attribute__((target("arch=+xtheadba")));
long foo_th (long, long) __attribute__((target("arch=+xtheadba")));
long foo_th (long a, long b)
{
return a + (b * 2);

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("arch=rv64gc_zba;;"))); /* { dg-error "malformed" } */
long foo(long a, long b) __attribute__((target("arch=rv64gc_zba;;"))); /* { dg-error "malformed" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("cpu=xyz-cpu"))); /* { dg-error "unknown CPU" } */
long foo(long a, long b) __attribute__((target("cpu=xyz-cpu"))); /* { dg-error "unknown CPU" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("tune=xyz-cpu"))); /* { dg-error "unknown TUNE" } */
long foo(long a, long b) __attribute__((target("tune=xyz-cpu"))); /* { dg-error "unknown TUNE" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target(123))); /* { dg-error "argument not a string" } */
long foo(long a, long b) __attribute__((target(123))); /* { dg-error "argument not a string" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target(""))); /* { dg-warning "empty string in attribute .target." } */
long foo(long a, long b) __attribute__((target(""))); /* { dg-warning "empty string in attribute .target." } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("arch=*x"))); /* { dg-error "must start with \\+ or rv" } */
long foo(long a, long b) __attribute__((target("arch=*x"))); /* { dg-error "must start with \\+ or rv" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -3,7 +3,7 @@
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("arch=+zbb_zba"))); /* { dg-error "extension 'zbb_zba' starts with 'z' but is unsupported standard extension" } */
long foo(long a, long b) __attribute__((target("arch=+zbb_zba"))); /* { dg-error "extension 'zbb_zba' starts with 'z' but is unsupported standard extension" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -2,7 +2,7 @@
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("arch=rv64gc_zba;arch=rv64gc_zba"))); /* { dg-error "arch appears more than once" } */
long foo(long a, long b) __attribute__((target("arch=rv64gc_zba;arch=rv64gc_zba"))); /* { dg-error "arch appears more than once" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -2,7 +2,7 @@
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("cpu=sifive-u74;cpu=sifive-u74"))); /* { dg-error "cpu appears more than once" } */
long foo(long a, long b) __attribute__((target("cpu=sifive-u74;cpu=sifive-u74"))); /* { dg-error "cpu appears more than once" } */
long foo(long a, long b){
return a + (b * 2);
}

View file

@ -2,7 +2,7 @@
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
/* { dg-options "-march=rv64gc -O2 -mabi=lp64" } */
long foo() __attribute__((target("tune=sifive-u74;tune=sifive-u74"))); /* { dg-error "tune appears more than once" } */
long foo(long a, long b) __attribute__((target("tune=sifive-u74;tune=sifive-u74"))); /* { dg-error "tune appears more than once" } */
long foo(long a, long b){
return a + (b * 2);
}