]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
hoist-register-pressure-1.c: Replace int with long.
authorAndreas Krebbel <Andreas.Krebbel@de.ibm.com>
Mon, 5 May 2014 07:53:35 +0000 (07:53 +0000)
committerAndreas Krebbel <krebbel@gcc.gnu.org>
Mon, 5 May 2014 07:53:35 +0000 (07:53 +0000)
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

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/hoist-register-pressure-1.c
gcc/testsuite/gcc.dg/hoist-register-pressure-2.c
gcc/testsuite/gcc.dg/hoist-register-pressure-3.c

index 8cbc790b276e66887e2424ffd159e46b1800bf49..d64a06f60d90ae9eb58b10e5af45459d26cbc662 100644 (file)
@@ -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
index f5b5302b3c5f028038ad4aab6b607cc39194f0d4..4aabcb78daf72423709a877a38a9c7f3c0f7853a 100644 (file)
@@ -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.  */
index 30408f318c4d070de59bc61c504d8a725030f133..f1c927ec434ad66e677eb3d19e3d0eb2b2e68ab8 100644 (file)
@@ -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.  */
index b050f89823fa3685842d22d30e1398dd94ca9a8c..24abaa6ade4c8552386e3ea5e83da76358ef0383 100644 (file)
@@ -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.  */