diff options
author | Andreas Krebbel <Andreas.Krebbel@de.ibm.com> | 2014-05-05 07:53:35 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2014-05-05 07:53:35 +0000 |
commit | f668cd6f2be34526a20dcedff00cac876c6760c6 (patch) | |
tree | 7914e6311529355029fd05132ff9b77c9b4b3185 /gcc | |
parent | cb8f1a57612438e0922264c142cfa9c71aa67771 (diff) | |
download | gcc-f668cd6f2be34526a20dcedff00cac876c6760c6.zip gcc-f668cd6f2be34526a20dcedff00cac876c6760c6.tar.gz gcc-f668cd6f2be34526a20dcedff00cac876c6760c6.tar.bz2 |
hoist-register-pressure-1.c: Replace int with long.
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.dg/hoist-register-pressure-1.c: Replace int with long.
Disable asm scan for s390.
* gcc.dg/hoist-register-pressure-2.c: Likewise.
* gcc.dg/hoist-register-pressure-3.c: Likewise.
From-SVN: r210060
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/hoist-register-pressure-1.c | 14 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/hoist-register-pressure-2.c | 14 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/hoist-register-pressure-3.c | 14 |
4 files changed, 34 insertions, 15 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8cbc790..d64a06f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> + + * gcc.dg/hoist-register-pressure-1.c: Replace int with long. + Disable asm scan for s390. + * gcc.dg/hoist-register-pressure-2.c: Likewise. + * gcc.dg/hoist-register-pressure-3.c: Likewise. + 2014-05-05 Bin Cheng <bin.cheng@arm.com> PR tree-optimization/60363 diff --git a/gcc/testsuite/gcc.dg/hoist-register-pressure-1.c b/gcc/testsuite/gcc.dg/hoist-register-pressure-1.c index f5b5302..4aabcb7 100644 --- a/gcc/testsuite/gcc.dg/hoist-register-pressure-1.c +++ b/gcc/testsuite/gcc.dg/hoist-register-pressure-1.c @@ -1,14 +1,18 @@ /* { dg-options "-Os -fdump-rtl-hoist" } */ -/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { nonpic } } } } */ +/* The rtl hoist pass requires that the expression to be hoisted can + be assigned without clobbering cc. For a PLUS rtx on S/390 this + requires a load address instruction which is fine on 64 bit but + cannot be used on 31 bit since it does a 31 bit add only. */ +/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { { ! s390-*-* } && nonpic } } } } */ /* { dg-final { cleanup-rtl-dump "hoist" } } */ #define BUF 100 -int a[BUF]; +long a[BUF]; -void com (int); -void bar (int); +void com (long); +void bar (long); -int foo (int x, int y, int z) +long foo (long x, long y, long z) { /* "x+y" won't be hoisted if "-fira-hoist-pressure" is disabled, because its rtx_cost is too small. */ diff --git a/gcc/testsuite/gcc.dg/hoist-register-pressure-2.c b/gcc/testsuite/gcc.dg/hoist-register-pressure-2.c index 30408f3..f1c927e 100644 --- a/gcc/testsuite/gcc.dg/hoist-register-pressure-2.c +++ b/gcc/testsuite/gcc.dg/hoist-register-pressure-2.c @@ -1,14 +1,18 @@ /* { dg-options "-Os -fdump-rtl-hoist" } */ -/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" } } */ +/* The rtl hoist pass requires that the expression to be hoisted can + be assigned without clobbering cc. For a PLUS rtx on S/390 this + requires a load address instruction which is fine on 64 bit but + cannot be used on 31 bit since it does a 31 bit add only. */ +/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { ! s390-*-* } } } } */ /* { dg-final { cleanup-rtl-dump "hoist" } } */ #define BUF 100 -int a[BUF]; +long a[BUF]; -void com (int); -void bar (int); +void com (long); +void bar (long); -int foo (int x, int y, int z) +long foo (long x, long y, long z) { /* "x+y" won't be hoisted if "-fira-hoist-pressure" is disabled, because its rtx_cost is too small. */ diff --git a/gcc/testsuite/gcc.dg/hoist-register-pressure-3.c b/gcc/testsuite/gcc.dg/hoist-register-pressure-3.c index b050f89..24abaa6 100644 --- a/gcc/testsuite/gcc.dg/hoist-register-pressure-3.c +++ b/gcc/testsuite/gcc.dg/hoist-register-pressure-3.c @@ -1,14 +1,18 @@ /* { dg-options "-Os -fdump-rtl-hoist" } */ -/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" } } */ +/* The rtl hoist pass requires that the expression to be hoisted can + be assigned without clobbering cc. For a PLUS rtx on S/390 this + requires a load address instruction which is fine on 64 bit but + cannot be used on 31 bit since it does a 31 bit add only. */ +/* { dg-final { scan-rtl-dump "PRE/HOIST: end of bb .* copying expression" "hoist" { target { ! s390-*-* } } } } */ /* { dg-final { cleanup-rtl-dump "hoist" } } */ #define BUF 100 -int a[BUF]; +long a[BUF]; -void com (int); -void bar (int); +void com (long); +void bar (long); -int foo (int x, int y, int z) +long foo (long x, long y, long z) { /* "x+y" won't be hoisted if "-fira-hoist-pressure" is disabled, because its rtx_cost is too small. */ |