Commit 48f3c266 by Tejas Belagod Committed by Tejas Belagod

asm-adder-clobber-lr.c: Remove duplication.

2013-04-04  Tejas Belagod  <tejas.belagod@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.

From-SVN: r197481
parent 51a905b2
2013-04-04 Tejas Belagod <tejas.belagod@arm.com>
* 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.
2013-04-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/56213
......
......@@ -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;
}
......@@ -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;
}
......@@ -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 } } */
......@@ -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 } } */
......@@ -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 } } */
......@@ -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 } } */
......@@ -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 } } */
......@@ -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 } } */
......@@ -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 } } */
......@@ -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 } } */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment