Hi,

The attached patch fixes duplication in a test case for gcc.target/aarch64/.

Tested on aarch64-none-elf. OK for trunk and branch?

Thanks,
Tejas Belagod
ARM.

2013-04-03  Tejas Belagod  <tejas.bela...@arm.com>

testsuite/
        * gcc.target/aarch64/inc/asm-adder-clobber-lr.c: Remove duplication.
        * gcc.target/aarch64/inc/asm-adder-no-clobber-lr.c: Likewise.
        * gcc.target/aarch64/test-framepointer-1.c: Likewise.
        * gcc.target/aarch64/test-framepointer-2.c: Likewise.
        * gcc.target/aarch64/test-framepointer-3.c: Likewise.
        * gcc.target/aarch64/test-framepointer-4.c: Likewise.
        * gcc.target/aarch64/test-framepointer-5.c: Likewise.
        * gcc.target/aarch64/test-framepointer-6.c: Likewise.
        * gcc.target/aarch64/test-framepointer-7.c: Likewise.
        * gcc.target/aarch64/test-framepointer-8.c: Likewise.
diff --git a/gcc/testsuite/gcc.target/aarch64/asm-adder-clobber-lr.c 
b/gcc/testsuite/gcc.target/aarch64/asm-adder-clobber-lr.c
index 8a02abc..540c79b 100644
--- a/gcc/testsuite/gcc.target/aarch64/asm-adder-clobber-lr.c
+++ b/gcc/testsuite/gcc.target/aarch64/asm-adder-clobber-lr.c
@@ -21,28 +21,3 @@ main (int argc, char** argv)
 
   return 0;
 }
-
-extern void abort (void);
-
-int
-adder (int a, int b)
-{
-  int result;
-  __asm__ ("add %w0,%w1,%w2" : "=r"(result) : "r"(a), "r"(b) : "x30");
-  return result;
-}
-
-int
-main (int argc, char** argv)
-{
-  int i;
-  int total = argc;
-  for (i = 0; i < 20; i++)
-    total = adder (total, i);
-
-  if (total != (190 + argc))
-    abort ();
-
-  return 0;
-}
-
diff --git a/gcc/testsuite/gcc.target/aarch64/asm-adder-no-clobber-lr.c 
b/gcc/testsuite/gcc.target/aarch64/asm-adder-no-clobber-lr.c
index f60cfd3..2543d50 100644
--- a/gcc/testsuite/gcc.target/aarch64/asm-adder-no-clobber-lr.c
+++ b/gcc/testsuite/gcc.target/aarch64/asm-adder-no-clobber-lr.c
@@ -21,28 +21,3 @@ main (int argc, char** argv)
 
   return 0;
 }
-
-extern void abort (void);
-
-int
-adder (int a, int b)
-{
-  int result;
-  __asm__ ("add %w0,%w1,%w2" : "=r"(result) : "r"(a), "r"(b) : );
-  return result;
-}
-
-int
-main (int argc, char** argv)
-{
-  int i;
-  int total = argc;
-  for (i = 0; i < 20; i++)
-    total = adder (total, i);
-
-  if (total != (190 + argc))
-    abort ();
-
-  return 0;
-}
-
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-1.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-1.c
index ae10959..e44ca6d 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-1.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-1.c
@@ -13,18 +13,3 @@
 /* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 2 
} } */
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-no-clobber-lr.c"
-
-/* omit-frame-pointer is FALSE.
-   omit-leaf-frame-pointer is FALSE.
-   LR is not being clobbered in the leaf.
-
-   With no frame pointer omissions, we expect a frame record
-   for main and the leaf.  */
-
-/* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 2 
} } */
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-2.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-2.c
index 71bc58d..40e4835 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-2.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-2.c
@@ -13,18 +13,3 @@
 /* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fomit-frame-pointer -mno-omit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-no-clobber-lr.c"
-
-/* omit-frame-pointer is TRUE.
-   omit-leaf-frame-pointer is false, but irrelevant due to omit-frame-pointer.
-   LR is not being clobbered in the leaf.
-
-   Since we asked to have no frame pointers anywhere, we expect no frame
-   record in main or the leaf.  */
-
-/* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-3.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-3.c
index de1b32c..98cb2e0 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-3.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-3.c
@@ -13,18 +13,3 @@
 /* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fomit-frame-pointer -momit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-no-clobber-lr.c"
-
-/* omit-frame-pointer is TRUE.
-   omit-leaf-frame-pointer is true, but irrelevant due to omit-frame-pointer.
-   LR is not being clobbered in the leaf.
-
-   Since we asked to have no frame pointers anywhere, we expect no frame
-   record in main or the leaf.  */
-
-/* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-4.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-4.c
index d339263..4143a7a 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-4.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-4.c
@@ -14,19 +14,3 @@
 /* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 1 
} } */
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fno-omit-frame-pointer -momit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-no-clobber-lr.c"
-
-/* omit-frame-pointer is FALSE.
-   omit-leaf-frame-pointer is TRUE.
-   LR is not being clobbered in the leaf.
-
-   Unless we are removing all frame records, it's OK to remove the frame
-   record for a leaf where LR is not clobbered.  Therefore, we expect a
-   frame record only in main.  */
-
-/* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 1 
} } */
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-5.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-5.c
index 4be297a..c22bdc3 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-5.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-5.c
@@ -13,18 +13,3 @@
 /* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 2 
} } */
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-clobber-lr.c"
-
-/* omit-frame-pointer is FALSE.
-   omit-leaf-frame-pointer is FALSE.
-   LR is being clobbered in the leaf.
-
-   With no frame pointer omissions, we expect a frame record for main
-   and the leaf.  */
-
-/* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 2 
} } */
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-6.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-6.c
index bf53962..e08ee43 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-6.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-6.c
@@ -13,18 +13,3 @@
 /* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fomit-frame-pointer -mno-omit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-clobber-lr.c"
-
-/* omit-frame-pointer is TRUE.
-   omit-leaf-frame-pointer is false, but irrelevant due to omit-frame-pointer.
-   LR is being clobbered in the leaf.
-
-   Since we asked to have no frame pointers anywhere, we expect no frame
-   record in main or the leaf.  */
-
-/* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-7.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-7.c
index 9e88ae3..e8f7cab 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-7.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-7.c
@@ -13,18 +13,3 @@
 /* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fomit-frame-pointer -momit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-clobber-lr.c"
-
-/* omit-frame-pointer is TRUE.
-   omit-leaf-frame-pointer is true, but irrelevant due to omit-frame-pointer.
-   LR is being clobbered in the leaf.
-
-   Since we asked to have no frame pointers anywhere, we expect no frame
-   record in main or the leaf.  */
-
-/* { dg-final { scan-assembler-not "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" } } 
*/
-
-/* { dg-final { cleanup-saved-temps } } */
diff --git a/gcc/testsuite/gcc.target/aarch64/test-framepointer-8.c 
b/gcc/testsuite/gcc.target/aarch64/test-framepointer-8.c
index 08d7667..c09b687 100644
--- a/gcc/testsuite/gcc.target/aarch64/test-framepointer-8.c
+++ b/gcc/testsuite/gcc.target/aarch64/test-framepointer-8.c
@@ -14,19 +14,3 @@
 /* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 2 
} } */
 
 /* { dg-final { cleanup-saved-temps } } */
-/* { dg-do run } */
-/* { dg-options "-O2 -fno-omit-frame-pointer -momit-leaf-frame-pointer 
-fno-inline --save-temps" } */
-
-#include "asm-adder-clobber-lr.c"
-
-/* omit-frame-pointer is FALSE.
-   omit-leaf-frame-pointer is TRUE.
-   LR is being clobbered in the leaf.
-
-   Unless we are removing all frame records (which we aren't), it's
-   not OK to remove the frame record for a leaf where LR is clobbered.
-   Therefore, we expect a frame record in main and leaf.  */
-
-/* { dg-final { scan-assembler-times "stp\tx29, x30, \\\[sp, -\[0-9\]+\\\]!" 2 
} } */
-
-/* { dg-final { cleanup-saved-temps } } */

Reply via email to