Re: [PATCH] Handle aggregate pass-through for self-recursive call (PR ipa/92794)

2019-12-18 Thread Feng Xue OS
>> +static bool >> +self_recursive_agg_pass_through_p (cgraph_edge *cs, ipa_agg_jf_item *jfunc, >> +int i) >> +{ >> + if (cs->caller == cs->callee->function_symbol () > I don't know if self-recursive calls can be interposed at all, if yes > you need to add the av

Re: [PATCH] Handle aggregate pass-through for self-recursive call (PR ipa/92794)

2019-12-18 Thread Jan Hubicka
> Hi, > > On Tue, Dec 17 2019, Feng Xue OS wrote: > > If argument for a self-recursive call is a simple pass-through, the call > > edge is also considered as source of any value originated from > > non-recursive call to the function. Scalar pass-through and full aggregate > > pass-through due to p

Re: [PATCH] Handle aggregate pass-through for self-recursive call (PR ipa/92794)

2019-12-18 Thread Martin Jambor
Hi, On Tue, Dec 17 2019, Feng Xue OS wrote: > If argument for a self-recursive call is a simple pass-through, the call > edge is also considered as source of any value originated from > non-recursive call to the function. Scalar pass-through and full aggregate > pass-through due to pointer pass-th

[PATCH] Handle aggregate pass-through for self-recursive call (PR ipa/92794)

2019-12-17 Thread Feng Xue OS
If argument for a self-recursive call is a simple pass-through, the call edge is also considered as source of any value originated from non-recursive call to the function. Scalar pass-through and full aggregate pass-through due to pointer pass-through have also been handled. But we missed another k