From 8304ad70b7cc364c1ac15601c88c569af8527929 Mon Sep 17 00:00:00 2001 From: "Frank Ch. Eigler" Date: Thu, 16 Sep 2004 20:37:09 +0000 Subject: [PATCH] bprob.exp, bprob.exp: Iterate tests with -ftree-based-profiling also. 2004-09-16 Frank Ch. Eigler * 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 | 6 ++++++ gcc/testsuite/g++.dg/bprob/bprob.exp | 24 +++++++++++++++--------- gcc/testsuite/gcc.misc-tests/bprob.exp | 24 +++++++++++++++--------- gcc/testsuite/lib/profopt.exp | 15 ++++++++------- 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 + + * 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 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 -- 2.30.2