From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1851) id A71C238515D5; Wed, 26 May 2021 07:34:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A71C238515D5 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Martin Liska To: gcc-cvs@gcc.gnu.org Subject: [gcc r12-1063] DOC: update documentation of __gcov_{dump,reset} X-Act-Checkin: gcc X-Git-Author: Martin Liska X-Git-Refname: refs/heads/master X-Git-Oldrev: 0eac9c60ac1f28eeb7bb0a56e533865d984015f6 X-Git-Newrev: 403bb89bd7f4ec03d4dcbdf8668d0187358631a0 Message-Id: <20210526073401.A71C238515D5@sourceware.org> Date: Wed, 26 May 2021 07:34:01 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 May 2021 07:34:01 -0000 https://gcc.gnu.org/g:403bb89bd7f4ec03d4dcbdf8668d0187358631a0 commit r12-1063-g403bb89bd7f4ec03d4dcbdf8668d0187358631a0 Author: Martin Liska Date: Tue May 25 09:52:01 2021 +0200 DOC: update documentation of __gcov_{dump,reset} gcc/ChangeLog: PR gcov-profile/100751 * doc/gcov.texi: Document that __gcov_dump can be called just once and that __gcov_reset resets run-time counters. Diff: --- gcc/doc/gcov.texi | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gcc/doc/gcov.texi b/gcc/doc/gcov.texi index 1ad99e5569e..d076721b93c 100644 --- a/gcc/doc/gcov.texi +++ b/gcc/doc/gcov.texi @@ -885,13 +885,15 @@ same source lines, the line counts themselves might seem inconsistent. Long-running applications can use the @code{__gcov_reset} and @code{__gcov_dump} facilities to restrict profile collection to the program region of -interest. Calling @code{__gcov_reset(void)} will clear all profile counters -to zero, and calling @code{__gcov_dump(void)} will cause the profile information -collected at that point to be dumped to @file{.gcda} output files. +interest. Calling @code{__gcov_reset(void)} will clear all run-time profile +counters to zero, and calling @code{__gcov_dump(void)} will cause the profile +information collected at that point to be dumped to @file{.gcda} output files +(the function can be called just once). Instrumented applications use a static destructor with priority 99 to invoke the @code{__gcov_dump} function. Thus @code{__gcov_dump} is executed after all user defined static destructors, as well as handlers registered with @code{atexit}. + If an executable loads a dynamic shared object via dlopen functionality, @option{-Wl,--dynamic-list-data} is needed to dump all profile data.