Commit 00da60d4 by Martin Liska Committed by Martin Liska

GCOV: document behavior of -fkeep-{static,inline}-functions (PR gcov-profile/82633).

2017-10-31  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/82633
	* doc/gcov.texi: Document -fkeep-{static,inline}-functions and
	their interaction with GCOV infrastructure.
	* configure.ac: Add -fkeep-{inline,static}-functions to
	coverage_flags.
	* configure: Regenerate.

From-SVN: r254257
parent 00ca3ed2
2017-10-31 Martin Liska <mliska@suse.cz>
PR gcov-profile/82633
* doc/gcov.texi: Document -fkeep-{static,inline}-functions and
their interaction with GCOV infrastructure.
* configure.ac: Add -fkeep-{inline,static}-functions to
coverage_flags.
* configure: Regenerate.
2017-10-31 Uros Bizjak <ubizjak@gmail.com> 2017-10-31 Uros Bizjak <ubizjak@gmail.com>
PR target/82772 PR target/82772
...@@ -7321,10 +7321,10 @@ fi ...@@ -7321,10 +7321,10 @@ fi
if test "${enable_coverage+set}" = set; then : if test "${enable_coverage+set}" = set; then :
enableval=$enable_coverage; case "${enableval}" in enableval=$enable_coverage; case "${enableval}" in
yes|noopt) yes|noopt)
coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O0" coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O0 -fkeep-inline-functions -fkeep-static-functions"
;; ;;
opt) opt)
coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O2" coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O2 -fkeep-inline-functions -fkeep-static-functions"
;; ;;
no) no)
# a.k.a. --disable-coverage # a.k.a. --disable-coverage
......
...@@ -728,10 +728,10 @@ AC_ARG_ENABLE(coverage, ...@@ -728,10 +728,10 @@ AC_ARG_ENABLE(coverage,
default is noopt])], default is noopt])],
[case "${enableval}" in [case "${enableval}" in
yes|noopt) yes|noopt)
coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O0" coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O0 -fkeep-inline-functions -fkeep-static-functions"
;; ;;
opt) opt)
coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O2" coverage_flags="-fprofile-arcs -ftest-coverage -frandom-seed=\$@ -O2 -fkeep-inline-functions -fkeep-static-functions"
;; ;;
no) no)
# a.k.a. --disable-coverage # a.k.a. --disable-coverage
......
...@@ -328,6 +328,13 @@ handlers, respectively. Given @samp{-a} option, unexecuted blocks are ...@@ -328,6 +328,13 @@ handlers, respectively. Given @samp{-a} option, unexecuted blocks are
marked @samp{$$$$$} or @samp{%%%%%}, depending on whether a basic block marked @samp{$$$$$} or @samp{%%%%%}, depending on whether a basic block
is reachable via non-exceptional or exceptional paths. is reachable via non-exceptional or exceptional paths.
Note that GCC can completely remove the bodies of functions that are
not needed -- for instance if they are inlined everywhere. Such functions
are marked with @samp{-}, which can be confusing.
Use the @option{-fkeep-inline-functions} and @option{-fkeep-static-functions}
options to retain these functions and
allow gcov to properly show their @var{execution_count}.
Some lines of information at the start have @var{line_number} of zero. Some lines of information at the start have @var{line_number} of zero.
These preamble lines are of the form These preamble lines are of the form
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment