summaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorfche <fche@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-16 20:37:09 +0000
committerfche <fche@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-16 20:37:09 +0000
commit6ab3444ba2be989344d53d83999ce6a64fe15465 (patch)
tree3ef0fc16fc871b1fa7bb6b7cfcf47b60e184390c /gcc/testsuite
parentdd2d357d725d0584196a8afb67d48eb8e318b5fa (diff)
downloadgcc-6ab3444ba2be989344d53d83999ce6a64fe15465.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87612 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-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 e36b90e4878..62c5c373c59 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 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
}
diff --git a/gcc/testsuite/gcc.misc-tests/bprob.exp b/gcc/testsuite/gcc.misc-tests/bprob.exp
index 8fde6829f83..554bf76dde9 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 4d32ff2fdbe..e8a7ac12354 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