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. --- .../gcc.target/csky/{and3a.c => ck801-and.c} | 3 ++- gcc/testsuite/gcc.target/csky/ck801-branch.c | 3 ++- gcc/testsuite/gcc.target/csky/ck801-constpool.c | 17 +++++++++++++++++ gcc/testsuite/gcc.target/csky/constpool-1.c | 7 +++---- gcc/testsuite/gcc.target/csky/constpool-2.c | 8 ++++---- gcc/testsuite/gcc.target/csky/constpool-3.c | 15 --------------- 6 files changed, 28 insertions(+), 25 deletions(-) rename gcc/testsuite/gcc.target/csky/{and3a.c => ck801-and.c} (64%) create mode 100644 gcc/testsuite/gcc.target/csky/ck801-constpool.c delete mode 100644 gcc/testsuite/gcc.target/csky/constpool-3.c 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 3d706f6eb58..7c79879278d 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 95e69624475..e4dafb37e89 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 00000000000..5c92f39d0ab --- /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 5c7cfdc73bd..d654420bc3f 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 d654420bc3f..e3a6e095f5b 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 e3a6e095f5b..00000000000 --- 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" } } */ -- 2.32.1 (Apple Git-133)