This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 2/4] Enhancement of call graph API

On 05/30/14 00:47, Martin Liška wrote:
    this patch enhances callgraph API to enable more precise control of
expand_thunk; another function becomes global.

Bootstrapped and tested on x86_64-linux.
OK for trunk?


2014-05-29  Martin Liska  <>

     * cgraph.h (expand_thunk): New argument added.
     (address_taken_from_non_vtable_p): New global function.
     * ipa-visibility.c (address_taken_from_non_vtable_p): Likewise.
     * cgraphclones.c (duplicate_thunk_for_node): Argument added to call.
     * cgraphunit.c (analyze_function): Likewise.
     (assemble_thunks_and_aliases): Argument added to call.
     (expand_thunk): New argument forces to produce GIMPLE thunk.
Only concern here is the location of the prototype for address_taken_from_non_vtable_p. Though I guess other things form ipa-visibility.c are prototyped in cgraph.h.

Can you put the prototype here in cgraph.h:

/* In ipa-visibility.c */
bool cgraph_local_node_p (struct cgraph_node *);

Otherwise OK.

Real curious to see the meat of the optimization now :-)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]