This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH 2/4] Enhancement of call graph API
- From: Jeff Law <law at redhat dot com>
- To: Martin Liška <mliska at suse dot cz>, gcc-patches at gcc dot gnu dot org
- Cc: hubicka at ucw dot cz
- Date: Fri, 30 May 2014 10:42:03 -0600
- Subject: Re: [PATCH 2/4] Enhancement of call graph API
- Authentication-results: sourceware.org; auth=none
- References: <b53aa4cb95e80fa8934fd1a3a6d5b68615f08fab dot 1401432413 dot git dot mliska at suse dot cz> <5388298F dot 9070306 at suse dot cz>
On 05/30/14 00:47, Martin Liška wrote:
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.
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 <firstname.lastname@example.org>
* 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.
Can you put the prototype here in cgraph.h:
/* In ipa-visibility.c */
bool cgraph_local_node_p (struct cgraph_node *);
Real curious to see the meat of the optimization now :-)