Re: Reduced call graph

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Hi,

On Fri, Nov 18, 2011 at 5:12 AM, Christopher Li <sparse@xxxxxxxxxxx> wrote:
> In order to find out all the call graphs, you need to at least run
> very file in sparse. Then for each function, after linearization, you
> can find out all the "call" instruction. A easier but not so precise
> way is examine the "access" list in the entry point. That will
> include every symbol rather than just function called.
>
> e.g.
>
>                struct entrypoint *ep;
>                pseudo_t p;
>
>                expand_symbol(sym);
>                ep = linearize_symbol(sym);
>
>                FOR_EACH_PTR(ep->accesses, p) {
>                        printf("   pseudo: %p type %d %s\n", p, p->type, show_pseudo(p));
>                } END_FOR_EACH_PTR(p);
>
> You just filter out the non-function symbols. However you need to write
> some code to do that recursively.

Thanks. Can I trace function callbacks too? I think it involves
keeping track of callbacks until they are called..
-- 
Duy
--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Newbies FAQ]     [Kernel List]     [Site Home]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]     [Trinity Fuzzer Tool]

Powered by Linux