target-supports.exp (check_effective_target_scheduling): New Function.
authorGeorg-Johann Lay <avr@gjlay.de>
Mon, 11 Jul 2011 07:54:17 +0000 (07:54 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Mon, 11 Jul 2011 07:54:17 +0000 (07:54 +0000)
* lib/target-supports.exp (check_effective_target_scheduling):
New Function.
* gcc.dg/pr46614.c: Add dg-require-effective-target scheduling.
* gcc.dg/pr45055.c: Ditto.
* gcc.dg/pr45353.c: Ditto.
* g++.dg/pr45056.C: Ditto.

From-SVN: r176136

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/pr45056.C
gcc/testsuite/gcc.dg/pr45055.c
gcc/testsuite/gcc.dg/pr45353.c
gcc/testsuite/gcc.dg/pr46614.c
gcc/testsuite/lib/target-supports.exp

index de47be95c16acbee32c8edcbfcf7cd05a0c29c23..6e4c33e765dadf34cf62d2d213daa4f67bd8faa6 100644 (file)
@@ -1,3 +1,12 @@
+2011-07-11  Georg-Johann Lay  <avr@gjlay.de>
+       
+       * lib/target-supports.exp (check_effective_target_scheduling):
+       New Function.
+       * gcc.dg/pr46614.c: Add dg-require-effective-target scheduling.
+       * gcc.dg/pr45055.c: Ditto.
+       * gcc.dg/pr45353.c: Ditto.
+       * g++.dg/pr45056.C: Ditto.
+
 2011-07-11  Georg-Johann Lay  <avr@gjlay.de>
        
        * gcc.dg/compat/struct-by-value-16_main.c: Skip AVR.
index a69107e35a463d0d9f301c8930db924d6e07eb03..1f3fda08f8fe08a5f4b029bad12fe5105f6935ea 100644 (file)
@@ -1,5 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O -fschedule-insns2 -fschedule-insns -g" } */
+/* { dg-require-effective-target scheduling } */
 
 template < class _T1, class _T2 > struct pair
 {
index ebd8cbf21a503d46491d0f90526b6829fc2b4b1f..899de50498bdd5060e105041eb6171c24f1d475e 100644 (file)
@@ -1,6 +1,7 @@
 /* PR debug/45055 */
 /* { dg-do compile } */
 /* { dg-options "-O2 -ftracer -fsched-pressure -funroll-loops -fschedule-insns -fcompare-debug" } */
+/* { dg-require-effective-target scheduling } */
 
 int colormap[10];
 
index e3277a88025e34d653673fa4d8653a5d6a69c2bb..0d704f8d16bc84caab37461526541d41e0fad296 100644 (file)
@@ -1,6 +1,7 @@
 /* PR rtl-optimization/45353 */
 /* { dg-do compile } */
 /* { dg-options "-O2 -fschedule-insns -fselective-scheduling" } */
+/* { dg-require-effective-target scheduling } */
 
 void
 foo ()
index 8e757803ef4bede1c948ad0d1fc8a35e319e9b0c..92bcf4e0161e74aad11ff96d48cf086854fc72e8 100644 (file)
@@ -1,6 +1,7 @@
 /* PR rtl-optimization/46614 */
 /* { dg-do run } */
 /* { dg-options "-O -fno-rename-registers -fsched2-use-superblocks -fschedule-insns2 -funroll-loops" } */
+/* { dg-require-effective-target scheduling } */
 
 extern void abort (void);
 
index 6ef87ab13aef80bb35d0c2b2743106a31d205457..cf44f1e3675f304df019de6ced2a225579e6f978 100644 (file)
@@ -712,6 +712,14 @@ proc check_effective_target_function_sections {} {
     } "-ffunction-sections"]
 }
 
+# Return 1 if instruction scheduling is available, 0 otherwise.
+
+proc check_effective_target_scheduling {} {
+    return [check_no_compiler_messages scheduling object {
+       void foo (void) { }
+    } "-fschedule-insns"]
+}
+
 # Return 1 if compilation with -fgraphite is error-free for trivial 
 # code, 0 otherwise.