Re: Add few cases to operand_equal_p

2015-05-27 Thread Jan Hubicka
> Yes, so this shows using original bodies for inlining isn't the issue. > The issue is that we can't really ignore TBAA (completely?) when > merging function bodies, independent of any issues that pop up > when inlining merged bodies. We should have the above as testcase Yes. > in the testsuite

Re: Add few cases to operand_equal_p

2015-05-27 Thread Richard Biener
On Tue, 26 May 2015, Jan Hubicka wrote: > > > Will do if we agree on having this. > > > > > > I know you would like ipa-icf to keep original bodies and use them for > > > inlining declaring alias sets to be function local. This is wrong plan. > > > Consder: > > > > > > void t(int *ptr) > > >

Re: Add few cases to operand_equal_p

2015-05-26 Thread Jan Hubicka
> > Will do if we agree on having this. > > > > I know you would like ipa-icf to keep original bodies and use them for > > inlining declaring alias sets to be function local. This is wrong plan. > > Consder: > > > > void t(int *ptr) > > { > > *ptr=1; > > } > > > > int a(int *ptr1, int *ptr

Re: Add few cases to operand_equal_p

2015-05-26 Thread Richard Biener
On Fri, 22 May 2015, Jan Hubicka wrote: > > > + case OBJ_TYPE_REF: > > > + { > > > + if (!operand_equal_p (OBJ_TYPE_REF_EXPR (arg0), > > > + OBJ_TYPE_REF_EXPR (arg1), flags)) > > > + return false; > > > + if (flag_devirtualize && virtual_method_call_p (arg

Re: Add few cases to operand_equal_p

2015-05-22 Thread Jan Hubicka
> > > + case OBJ_TYPE_REF: > > > + { > > > + if (!operand_equal_p (OBJ_TYPE_REF_EXPR (arg0), > > > + OBJ_TYPE_REF_EXPR (arg1), flags)) > > > + return false; > > > + if (flag_devirtualize && virtual_method_call_p (arg0)) > > > + { > > > + if (t

Re: Add few cases to operand_equal_p

2015-05-22 Thread Jan Hubicka
> > + case OBJ_TYPE_REF: > > + { > > + if (!operand_equal_p (OBJ_TYPE_REF_EXPR (arg0), > > + OBJ_TYPE_REF_EXPR (arg1), flags)) > > + return false; > > + if (flag_devirtualize && virtual_method_call_p (arg0)) > > + { > > + if (t

Re: Add few cases to operand_equal_p

2015-05-22 Thread Richard Biener
On Fri, 22 May 2015, Jan Hubicka wrote: > Hi, > I am working on patch that makes operand_equal_p replace logic from > ipa-icf-gimple's compare_op via a valueizer hook. Currently the patch however > cuts number of merges on firefox to half (apparently becuase it gives up on > some tree codes too e

Add few cases to operand_equal_p

2015-05-22 Thread Jan Hubicka
Hi, I am working on patch that makes operand_equal_p replace logic from ipa-icf-gimple's compare_op via a valueizer hook. Currently the patch however cuts number of merges on firefox to half (apparently becuase it gives up on some tree codes too early) The patch bellow merges code from ipa-icf-gim