This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC] Bare bones of virtual call tracking
- From: Xinliang David Li <davidxl at google dot com>
- To: Jan Hubicka <hubicka at ucw dot cz>
- Cc: Jason Merrill <jason at redhat dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Martin Jambor <mjambor at suse dot cz>
- Date: Thu, 15 Aug 2013 10:07:51 -0700
- Subject: Re: [RFC] Bare bones of virtual call tracking
- References: <20130812121624 dot GF22678 at kam dot mff dot cuni dot cz> <5208FF6C dot 3060408 at redhat dot com> <20130813225117 dot GE30983 at kam dot mff dot cuni dot cz> <20130814061440 dot GB21037 at kam dot mff dot cuni dot cz> <520BBBF4 dot 5050908 at redhat dot com> <20130815161710 dot GA26705 at kam dot mff dot cuni dot cz> <CAAkRFZ+WD1efZD0CRmE=zK9tqpP20MmW703ritsEq=h0DC4qgQ at mail dot gmail dot com> <20130815164658 dot GB20005 at kam dot mff dot cuni dot cz>
On Thu, Aug 15, 2013 at 9:46 AM, Jan Hubicka <hubicka@ucw.cz> wrote:
>> Some suggestions for the future:
>>
>> 1) add summary info in the odr dump -- i.e. for each node, dump the
>> number of direct bases, direct subtypes, number of all bases, all
>> subtypes;
>
> OK, can add that.
>> 2) add statistics dump -- average size of a hierarchy subgraph
>>
>> 3) Dump the graph using top-order -- starting from roots of each sub-graph;
>
> This is already done - dumping recursively dumps subtypes and we dump only
> types without bases. Problem is that with multiple inheritance types appear twice.
>
>> 4) Add VCG dump per-hierarchy.
>
> Hmm, may be nice - firefox definitely has huge graph.
That is why the graph should be split up and dumped independently. If
the design is such that all types are derived from one common root
class we have a problem here :)
>
> Currently my type graph is very partial - I have no nodes for types without
> virtual methods at all.
Those are not probably interesting anyways.
David
> This is because types_same_for_odr is not able to give
> exact answer (it gives false positives for templates). Hope to solve it
> incrementaly.
>
> I found many bugs at random places, so will push those out first and send
> updated patch.
>
> Honza