[PATCH] Enable IPA-CP on functions with variable number of arguments or type attributes

Jan Hubicka hubicka@ucw.cz
Fri Sep 2 14:14:00 GMT 2011


> On Fri, Sep 2, 2011 at 2:27 PM, Martin Jambor <mjambor@suse.cz> wrote:
> > Hi,
> >
> > currently IPA-CP switches itself off on functions with are called with
> > variable number of arguments or on those whose signature cannot be
> > changed because of type attributes.  This patch turns it on for both,
> > not changing the parameters of its clones in the latter case.
> >
> > Whether the function's signature can be changed is determined by
> > looking at node->local.can_change_signature which is set appropriately
> > already since my last patch (rev 178386).
> >
> > This patch also replaces ipa-prop's own node_versionable flag with
> > inline_summary (node)->versionable.  Frankly, I find it very confusing
> > that this flag is in the inline summary even though it is set in
> > ipa-prop (except for thunks - a case we currently never care about
> > anyway) and used only in ipa-cp.  I also think this is a property of
> > the node (rather than an inlining parameter) as much as
> > can_change_signature is - would a patch moving it to node->local be
> > acceptable?
> 
> I think so, or even node->global?

It is function local property, so node->local.
I did the same with can_change_signature, so this is fine with me.  They ended up in inline
summaries only becuase they used to be computed there.

Honza



More information about the Gcc-patches mailing list