bprob.exp, bprob.exp: Iterate tests with -ftree-based-profiling also.
authorFrank Ch. Eigler <fche@redhat.com>
Thu, 16 Sep 2004 20:37:09 +0000 (20:37 +0000)
committerFrank Ch. Eigler <fche@gcc.gnu.org>
Thu, 16 Sep 2004 20:37:09 +0000 (20:37 +0000)
2004-09-16  Frank Ch. Eigler  <fche@redhat.com>

* gcc.misc-tests/bprob.exp, g++.dg/bprob/bprob.exp: Iterate tests
with -ftree-based-profiling also.
* lib/profopt.exp: Support late-set profile_option/feedback_option.

From-SVN: r87612

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/bprob/bprob.exp
gcc/testsuite/gcc.misc-tests/bprob.exp
gcc/testsuite/lib/profopt.exp

index e36b90e48783d196d04ca098411bb43146951ce6..62c5c373c599a774facb50eb5cd5b2530a27de14 100644 (file)
@@ -1,3 +1,9 @@
+2004-09-16  Frank Ch. Eigler  <fche@redhat.com>
+
+       * gcc.misc-tests/bprob.exp, g++.dg/bprob/bprob.exp: Iterate tests
+       with -ftree-based-profiling also.
+       * lib/profopt.exp: Support late-set profile_option/feedback_option.
+
 2004-09-16  Victor Leikehman  <lei@il.ibm.com>
 
        PR/15364
index ea458fa17979be9ba45d781c697652f4358df0ec..90cb99a8228b405d5fe3ca7ad8de81fa99befd90 100644 (file)
@@ -1,4 +1,4 @@
-#   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+#   Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -27,8 +27,6 @@ if { ![check_profiling_available "-fprofile-arcs"] } {
 
 # The procedures in profopt.exp need these parameters.
 set tool g++
-set profile_option -fprofile-arcs
-set feedback_option -fbranch-probabilities
 set prof_ext gcda
 
 if $tracelevel then {
@@ -52,12 +50,20 @@ if $tracelevel then {
 # Load support procs.
 load_lib profopt.exp
 
+set profile_options "-fprofile-arcs"
+set feedback_options "-fbranch-probabilities"
+if {[check_profiling_available "-ftree-based-profiling"]} {
+    lappend profile_options "-ftree-based-profiling -fprofile-arcs"
+    lappend feedback_options "-ftree-based-profiling -fbranch-probabilities"
+}
+
 # Main loop.
-foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.C]] {
-    # If we're only testing specific files and this isn't one of them, skip it.
-    if ![runtest_file_p $runtests $src] then {
-       continue
+foreach profile_option $profile_options feedback_option $feedback_options {
+    foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.C]] {
+        # If we're only testing specific files and this isn't one of them, skip it.
+        if ![runtest_file_p $runtests $src] then {
+            continue
+        }
+        profopt-execute $src
     }
-
-    profopt-execute $src
 }
index 8fde6829f837be284847d8f4085d329191b75147..554bf76dde9df1dd4691089af499060edb1db6ad 100644 (file)
@@ -1,4 +1,4 @@
-#   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+#   Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -27,8 +27,6 @@ if { ![check_profiling_available "-fprofile-arcs"] } {
 
 # The procedures in profopt.exp need these parameters.
 set tool gcc
-set profile_option -fprofile-arcs
-set feedback_option -fbranch-probabilities
 set prof_ext gcda
 set perf_ext tim
 
@@ -49,11 +47,19 @@ if $tracelevel then {
 # Load support procs.
 load_lib profopt.exp
 
-foreach src [lsort [glob -nocomplain $srcdir/$subdir/bprob-*.c]] {
-    # If we're only testing specific files and this isn't one of them, skip it.
-    if ![runtest_file_p $runtests $src] then {
-       continue
-    }
+set profile_options "-fprofile-arcs"
+set feedback_options "-fbranch-probabilities"
+if {[check_profiling_available "-ftree-based-profiling"]} {
+    lappend profile_options "-ftree-based-profiling -fprofile-arcs"
+    lappend feedback_options "-ftree-based-profiling -fbranch-probabilities"
+}
 
-    profopt-execute $src
+foreach profile_option $profile_options feedback_option $feedback_options {
+    foreach src [lsort [glob -nocomplain $srcdir/$subdir/bprob-*.c]] {
+        # If we're only testing specific files and this isn't one of them, skip it.
+        if ![runtest_file_p $runtests $src] then {
+            continue
+        }
+        profopt-execute $src
+    }
 }
index 4d32ff2fdbe77b57c45dddfc24261368d9a50f14..e8a7ac123541f46fca774950e13e3279a961d169 100644 (file)
@@ -1,4 +1,4 @@
-#   Copyright (C) 2001 Free Software Foundation, Inc.
+#   Copyright (C) 2001, 2004 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -37,12 +37,6 @@ global tool profile_option feedback_option prof_ext
 if ![info exists tool] {
     error "Tools is not specified."
 }
-if ![info exists profile_option] {
-    error "No profile option specified for first compile."
-}
-if ![info exists feedback_option] {
-    error "No feedback option specified for second compile."
-}
 if ![info exists prof_ext] {
     error "No profile data file extension specified."
 }
@@ -130,6 +124,13 @@ proc profopt-execute { src } {
     global tool profile_option feedback_option prof_ext perf_ext perf_delta
     global verbose
 
+    if ![info exists profile_option] {
+        error "No profile option specified for first compile."
+    }
+    if ![info exists feedback_option] {
+        error "No feedback option specified for second compile."
+    }
+
     regsub "^$srcdir/?" $src "" testcase
     # If we couldn't rip $srcdir out of `src' then just do the best we can.
     # The point is to reduce the unnecessary noise in the logs.  Don't strip