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" } } */
