diff options
author | Marcus Shawcroft <marcus.shawcroft@arm.com> | 2013-10-03 10:54:36 +0000 |
---|---|---|
committer | Marcus Shawcroft <mshawcroft@gcc.gnu.org> | 2013-10-03 10:54:36 +0000 |
commit | 24c569251d2a19a0a75af13d7fc85802ad574801 (patch) | |
tree | 92b06892e5bf6395636e47d54e10b35a6f92734f /gcc/testsuite | |
parent | 2ab8f063e9957882ce55f8585694a140486eae03 (diff) | |
download | gcc-24c569251d2a19a0a75af13d7fc85802ad574801.zip gcc-24c569251d2a19a0a75af13d7fc85802ad574801.tar.gz gcc-24c569251d2a19a0a75af13d7fc85802ad574801.tar.bz2 |
[AArch64] Fix PR58460
PR58460, the add and sub shifted register instruction forms in AArch64
do not permit the stack register. This patch removes k constraint
from the relevant patterns and adds reduced form of the test case.
From-SVN: r203157
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/aarch64/pr58460.c | 35 |
2 files changed, 40 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4b7c6ee..44628c5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2013-10-03 Marcus Shawcroft <marcus.shawcroft@arm.com> + + PR target/58460 + * gcc.target/aarch64/pr58460.c: New file. + 2013-10-02 Tobias Burnus <burnus@net-b.de> PR fortran/58593 diff --git a/gcc/testsuite/gcc.target/aarch64/pr58460.c b/gcc/testsuite/gcc.target/aarch64/pr58460.c new file mode 100644 index 0000000..a7e149a --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/pr58460.c @@ -0,0 +1,35 @@ +/* { dg-do run } */ +/* { dg-options "-O" } */ +extern unsigned long x1; + +char * +f (char *a, char *b) +{ + return a; +} + +int +g (char *a) +{ + return 2; +} + +void +h (char *p[]) +{ + char n[x1][512]; + char *l = f (p[1], " "); + if (g (p[0])) + n[0][0] = '\0'; + while (l && *l) + { + } +} + +unsigned long x1; + +int +main () +{ + return 0; +} |