aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@redhat.com>2004-09-16 20:37:09 +0000
committerFrank Ch. Eigler <fche@gcc.gnu.org>2004-09-16 20:37:09 +0000
commit8304ad70b7cc364c1ac15601c88c569af8527929 (patch)
tree3ef0fc16fc871b1fa7bb6b7cfcf47b60e184390c /gcc
parent9fae925b0054a850342419833ee04af01891fd14 (diff)
downloadgcc-8304ad70b7cc364c1ac15601c88c569af8527929.zip
gcc-8304ad70b7cc364c1ac15601c88c569af8527929.tar.gz
gcc-8304ad70b7cc364c1ac15601c88c569af8527929.tar.bz2
bprob.exp, bprob.exp: Iterate tests with -ftree-based-profiling also.
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/g++.dg/bprob/bprob.exp24
-rw-r--r--gcc/testsuite/gcc.misc-tests/bprob.exp24
-rw-r--r--gcc/testsuite/lib/profopt.exp15
4 files changed, 44 insertions, 25 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index e36b90e..62c5c37 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -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
diff --git a/gcc/testsuite/g++.dg/bprob/bprob.exp b/gcc/testsuite/g++.dg/bprob/bprob.exp
index ea458fa..90cb99a 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
}
diff --git a/gcc/testsuite/gcc.misc-tests/bprob.exp b/gcc/testsuite/gcc.misc-tests/bprob.exp
index 8fde682..554bf76 100644
--- a/gcc/testsuite/gcc.misc-tests/bprob.exp
+++ b/gcc/testsuite/gcc.misc-tests/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 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
+ }
}
diff --git a/gcc/testsuite/lib/profopt.exp b/gcc/testsuite/lib/profopt.exp
index 4d32ff2..e8a7ac1 100644
--- a/gcc/testsuite/lib/profopt.exp
+++ b/gcc/testsuite/lib/profopt.exp
@@ -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