From: Xianmiao Qu Date: Tue, 1 Nov 2022 07:49:03 +0000 (+0800) Subject: C-SKY: Skip other CPUs if the testcases are only for ck801. X-Git-Tag: basepoints/gcc-14~2124 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b86703a050c61d0dc81410de707b078a27ce4732;p=thirdparty%2Fgcc.git C-SKY: Skip other CPUs if the testcases are only for ck801. Refine some testcases for ck801, if the testcase is only for ck801, add the filename prefix "ck801-", and add dg-skip-if to skip other CPUs. gcc/testsuite/ * gcc.target/csky/and3a.c: Rename to ... * gcc.target/csky/ck801-and.c: ... this. * gcc.target/csky/constpool-3.c: Rename to ... * gcc.target/csky/constpool-2.c: ... this, Rename to ... * gcc.target/csky/constpool-1.c: ... this, Rename to ... * gcc.target/csky/ck801-constpool.c: ... this, and skip if the CPU is not ck801. * gcc.target/csky/ck801-branch.c: Skip if the CPU is not ck801. --- diff --git a/gcc/testsuite/gcc.target/csky/and3a.c b/gcc/testsuite/gcc.target/csky/ck801-and.c similarity index 64% rename from gcc/testsuite/gcc.target/csky/and3a.c rename to gcc/testsuite/gcc.target/csky/ck801-and.c index 3d706f6eb58b..7c79879278da 100644 --- a/gcc/testsuite/gcc.target/csky/and3a.c +++ b/gcc/testsuite/gcc.target/csky/ck801-and.c @@ -1,5 +1,6 @@ /* { dg-do compile } */ -/* { dg-csky-options "-mcpu=ck801 -O1" } */ +/* { dg-skip-if "test is specific to ck801" { csky-*-* } { "*" } { "-mcpu=ck801" } } */ +/* { dg-csky-options "-O1" } */ /* Test special code generation patterns for bit operators. */ diff --git a/gcc/testsuite/gcc.target/csky/ck801-branch.c b/gcc/testsuite/gcc.target/csky/ck801-branch.c index 95e696244757..e4dafb37e894 100644 --- a/gcc/testsuite/gcc.target/csky/ck801-branch.c +++ b/gcc/testsuite/gcc.target/csky/ck801-branch.c @@ -1,5 +1,6 @@ /* { dg-do compile } */ -/* { dg-csky-options "-mcpu=ck801 -O1 -fno-reorder-blocks" } */ +/* { dg-skip-if "test is specific to ck801" { csky-*-* } { "*" } { "-mcpu=ck801" } } */ +/* { dg-csky-options "-O1 -fno-reorder-blocks" } */ /* Test branch generation on CK801, which cannot rely on assembler branch relaxation because long branches clobber lr. */ diff --git a/gcc/testsuite/gcc.target/csky/ck801-constpool.c b/gcc/testsuite/gcc.target/csky/ck801-constpool.c new file mode 100644 index 000000000000..5c92f39d0ab9 --- /dev/null +++ b/gcc/testsuite/gcc.target/csky/ck801-constpool.c @@ -0,0 +1,17 @@ +/* { dg-do compile } */ +/* { dg-skip-if "test is specific to ck801" { csky-*-* } { "*" } { "-mcpu=ck801" } } */ +/* { dg-csky-options "-O1" } */ + +/* Make sure that constant pools are emitted by the compiler for ck801. + If this is deferred to the assembler, the compiler will compute + incorrect branch offsets. */ + +void f (unsigned int *u, long long int *l, float *f, double *d) +{ + *u = 0xdeadbeef; + *l = 0xcafef00dc0ffeeULL; + *f = 3.14159F; + *d = 2.718281828459; +} + +/* { dg-final { scan-assembler-times "\\.long" 6 } } */ diff --git a/gcc/testsuite/gcc.target/csky/constpool-1.c b/gcc/testsuite/gcc.target/csky/constpool-1.c index 5c7cfdc73bdb..d654420bc3f3 100644 --- a/gcc/testsuite/gcc.target/csky/constpool-1.c +++ b/gcc/testsuite/gcc.target/csky/constpool-1.c @@ -1,9 +1,8 @@ /* { dg-do compile } */ -/* { dg-csky-options "-mcpu=ck801 -O1" } */ +/* { dg-csky-options "-mcpu=ck810f -O1 -mconstpool" } */ -/* Make sure that constant pools are emitted by the compiler for ck801. - If this is deferred to the assembler, the compiler will compute - incorrect branch offsets. */ +/* Make sure that constant pools are emitted by the compiler when + -mconstpool is provided. */ void f (unsigned int *u, long long int *l, float *f, double *d) { diff --git a/gcc/testsuite/gcc.target/csky/constpool-2.c b/gcc/testsuite/gcc.target/csky/constpool-2.c index d654420bc3f3..e3a6e095f5b9 100644 --- a/gcc/testsuite/gcc.target/csky/constpool-2.c +++ b/gcc/testsuite/gcc.target/csky/constpool-2.c @@ -1,8 +1,8 @@ /* { dg-do compile } */ -/* { dg-csky-options "-mcpu=ck810f -O1 -mconstpool" } */ +/* { dg-csky-options "-mcpu=ck810f -O1 -mno-constpool" } */ -/* Make sure that constant pools are emitted by the compiler when - -mconstpool is provided. */ +/* Make sure that constant pools are not emitted by the compiler when + -mno-constpool is provided. */ void f (unsigned int *u, long long int *l, float *f, double *d) { @@ -12,4 +12,4 @@ void f (unsigned int *u, long long int *l, float *f, double *d) *d = 2.718281828459; } -/* { dg-final { scan-assembler-times "\\.long" 6 } } */ +/* { dg-final { scan-assembler-not "\\.long" } } */ diff --git a/gcc/testsuite/gcc.target/csky/constpool-3.c b/gcc/testsuite/gcc.target/csky/constpool-3.c deleted file mode 100644 index e3a6e095f5b9..000000000000 --- a/gcc/testsuite/gcc.target/csky/constpool-3.c +++ /dev/null @@ -1,15 +0,0 @@ -/* { dg-do compile } */ -/* { dg-csky-options "-mcpu=ck810f -O1 -mno-constpool" } */ - -/* Make sure that constant pools are not emitted by the compiler when - -mno-constpool is provided. */ - -void f (unsigned int *u, long long int *l, float *f, double *d) -{ - *u = 0xdeadbeef; - *l = 0xcafef00dc0ffeeULL; - *f = 3.14159F; - *d = 2.718281828459; -} - -/* { dg-final { scan-assembler-not "\\.long" } } */