Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-13 Thread Jan Hubicka
> Hi Honza, > > I reverted this patch after it was reported that it resulted in > bootstrap compare failure in some targets. > > I reproduced it and tracked to a mistake in the patch that introduced it. > > That is, in propagate_vr_accross_jump_function, I had: > > if (src_lats->m_value

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-13 Thread kugan
Hi Honza, I reverted this patch after it was reported that it resulted in bootstrap compare failure in some targets. I reproduced it and tracked to a mistake in the patch that introduced it. That is, in propagate_vr_accross_jump_function, I had: if (src_lats->m_value_range.bottom_p

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-11 Thread Bin.Cheng
On Tue, Nov 8, 2016 at 10:13 AM, kugan wrote: > Hi, > > > > On 04/11/16 04:36, Martin Jambor wrote: >> >> Hi, >> >> On Fri, Oct 28, 2016 at 02:03:47PM +1100, kugan wrote: >>> >>> >>> ...snip... >>> >>> I have also separated the constant parameter conversion out and posted as >>> https://gcc.gnu.or

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-08 Thread Jan Hubicka
> Hi, > > > On 04/11/16 04:36, Martin Jambor wrote: > >Hi, > > > >On Fri, Oct 28, 2016 at 02:03:47PM +1100, kugan wrote: > >> > >>...snip... > >> > >>I have also separated the constant parameter conversion out and posted as > >>https://gcc.gnu.org/ml/gcc-patches/2016-10/msg02309.html. This is now

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-08 Thread kugan
Hi, On 04/11/16 04:36, Martin Jambor wrote: Hi, On Fri, Oct 28, 2016 at 02:03:47PM +1100, kugan wrote: ...snip... I have also separated the constant parameter conversion out and posted as https://gcc.gnu.org/ml/gcc-patches/2016-10/msg02309.html. This is now handling just unary pass-through

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-03 Thread Martin Jambor
Hi, On Fri, Oct 28, 2016 at 02:03:47PM +1100, kugan wrote: > > ...snip... > > I have also separated the constant parameter conversion out and posted as > https://gcc.gnu.org/ml/gcc-patches/2016-10/msg02309.html. This is now > handling just unary pass-through jump functions. > > Bootstrapped and

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-10-27 Thread kugan
Hi, On 28/10/16 01:58, Jan Hubicka wrote: gcc/testsuite/ChangeLog: 2016-10-25 Kugan Vivekanandarajah * gcc.dg/ipa/vrp7.c: New test. gcc/ChangeLog: 2016-10-25 Kugan Vivekanandarajah * ipa-cp.c (ipa_get_jf_pass_through_result): Skip unary expressions. (propagate

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-10-27 Thread Jan Hubicka
> gcc/testsuite/ChangeLog: > > 2016-10-25 Kugan Vivekanandarajah > > * gcc.dg/ipa/vrp7.c: New test. > > > gcc/ChangeLog: > > 2016-10-25 Kugan Vivekanandarajah > > * ipa-cp.c (ipa_get_jf_pass_through_result): Skip unary expressions. > (propagate_vr_accross_jump_function

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-10-27 Thread Martin Jambor
Hi, On Tue, Oct 25, 2016 at 10:18:25AM +1100, kugan wrote: > Hi, > > Attached RFC patch handles unary pass-through jump functions for ipa-vrp > such that in the following case: > > int bar (int j) > { > foo (~j); > foo (abs (j)); > foo (j); > return 0; > } Thanks for working on this. A

[RFC] Handle unary pass-through jump functions for ipa-vrp

2016-10-24 Thread kugan
Hi, Attached RFC patch handles unary pass-through jump functions for ipa-vrp such that in the following case: int bar (int j) { foo (~j); foo (abs (j)); foo (j); return 0; } We can infer value ranges for argument foo from bar. See test-case vrp7.c in the patch. I will also try to h