Re: [RFC] Teaching SCC merging about unit local trees

2014-07-09 Thread Jan Hubicka
Richard, > > That is, have a tree_may_be_mergeable_p (), call it during the DFS > walk storing it alongside the visited edges and thus obtain a result > for each SCC, stream that as a flag (a special hash value is ugly, > but well ... I guess it works). The important part is to make an SCC > !tre

Re: [RFC] Teaching SCC merging about unit local trees

2014-06-12 Thread Jan Hubicka
> On Thu, Jun 12, 2014 at 10:47 AM, Jan Hubicka wrote: > > Richard, > > as briefly discussed before, I would like to teach LTO type merging to not > > merge > > types that was declared in anonymous namespaces and use C++ ODR type names > > (stored in DECL_ASSEMBLER_NAME of the TYPE_DECL) to break

Re: [RFC] Teaching SCC merging about unit local trees

2014-06-12 Thread Jan Hubicka
> > That is, have a tree_may_be_mergeable_p (), call it during the DFS > walk storing it alongside the visited edges and thus obtain a result > for each SCC, stream that as a flag (a special hash value is ugly, > but well ... I guess it works). The important part is to make an SCC > !tree_may_be_

Re: [RFC] Teaching SCC merging about unit local trees

2014-06-12 Thread Richard Biener
On Thu, Jun 12, 2014 at 12:34 PM, Richard Biener wrote: > On Thu, Jun 12, 2014 at 12:29 PM, Richard Biener > wrote: >> On Thu, Jun 12, 2014 at 10:47 AM, Jan Hubicka wrote: >>> Richard, >>> as briefly discussed before, I would like to teach LTO type merging to not >>> merge >>> types that was de

Re: [RFC] Teaching SCC merging about unit local trees

2014-06-12 Thread Richard Biener
On Thu, Jun 12, 2014 at 12:29 PM, Richard Biener wrote: > On Thu, Jun 12, 2014 at 10:47 AM, Jan Hubicka wrote: >> Richard, >> as briefly discussed before, I would like to teach LTO type merging to not >> merge >> types that was declared in anonymous namespaces and use C++ ODR type names >> (stor

Re: [RFC] Teaching SCC merging about unit local trees

2014-06-12 Thread Richard Biener
On Thu, Jun 12, 2014 at 10:47 AM, Jan Hubicka wrote: > Richard, > as briefly discussed before, I would like to teach LTO type merging to not > merge > types that was declared in anonymous namespaces and use C++ ODR type names > (stored in DECL_ASSEMBLER_NAME of the TYPE_DECL) to break down canoni

[RFC] Teaching SCC merging about unit local trees

2014-06-12 Thread Jan Hubicka
Richard, as briefly discussed before, I would like to teach LTO type merging to not merge types that was declared in anonymous namespaces and use C++ ODR type names (stored in DECL_ASSEMBLER_NAME of the TYPE_DECL) to break down canonical types by their names. First thing I need to arrange IMO is