+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
-# 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
# 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 {
# 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
}
-# 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
# 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
# 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
+ }
}
-# 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
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."
}
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