This is the mail archive of the
mailing list for the GCC project.
Re: a new libgcov interface: __gcov_dump_all
- From: Xinliang David Li <davidxl at google dot com>
- To: Nathan Sidwell <nathan at acm dot org>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Jan Hubicka <hubicka at ucw dot cz>
- Date: Sun, 20 Jul 2014 13:38:11 -0700
- Subject: Re: a new libgcov interface: __gcov_dump_all
- Authentication-results: sourceware.org; auth=none
- References: <CAAkRFZLuXyevU9xUmq1AFKEq+JjTH-G=Oe0pWWY=MkkxMR5jHA at mail dot gmail dot com> <53CC1BBC dot 1020008 at acm dot org>
The gcov_info chain is not duplicated -- there is already one chain
(linking only modules of the library) per shared library in current
implementation. My change does not affect underlying behavior at all
-- it merely introduces a new interface to access private dumper
methods associated with shared libs.
On Sun, Jul 20, 2014 at 12:42 PM, Nathan Sidwell <firstname.lastname@example.org> wrote:
> On 07/18/14 22:41, Xinliang David Li wrote:
>> Hi, the following patch implements a new dumper interface to allow
>> dumping of profile data for all instrumented shared libraries.
>> For good reasons, existing libgcov implements the dumping on a
>> per-shared library basis (i.e., gcov_exit is hidden, gcov_list is file
>> static). This allows each shared library's profile data to be dumped
>> independently with separate summary data. The downside is that there
>> is no interface that can be invoked to dump profile data for all
>> shared modules.
> This seems like useful functionality, but I don't think this is the right
> way to do this. You're duplicating the gcov info object chain. Why can't
> you expose gcov_list from gcov-driver.c (possibly with a different name, of