aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/bprob/bprob.exp
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/g++.dg/bprob/bprob.exp')
-rw-r--r--gcc/testsuite/g++.dg/bprob/bprob.exp24
1 files changed, 15 insertions, 9 deletions
diff --git a/gcc/testsuite/g++.dg/bprob/bprob.exp b/gcc/testsuite/g++.dg/bprob/bprob.exp
index ea458fa1797..90cb99a8228 100644
--- a/gcc/testsuite/g++.dg/bprob/bprob.exp
+++ b/gcc/testsuite/g++.dg/bprob/bprob.exp
@@ -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
}