Re: Cgraph thunk reorg

2011-05-25 Thread Jan Hubicka
> Honza, > > After we debugged this offline, I assume that you applied a version of > the patch to trunk? Hi, sorry, there was a miscommunication. I was still waiting for a confirmation that the patch works and I do not recall receiving any. I was not waiting very actively, I must admit, since I

Re: Cgraph thunk reorg

2011-05-25 Thread David Edelsohn
Honza, After we debugged this offline, I assume that you applied a version of the patch to trunk? Thanks, David On Fri, May 13, 2011 at 3:14 PM, David Edelsohn wrote: > Honza, > > Testing is not complete, but testcases that failed with DECL_ONE_ONLY > error now are passing with the later versio

Re: Cgraph thunk reorg

2011-05-15 Thread H.J. Lu
On Fri, May 6, 2011 at 4:02 PM, Jan Hubicka wrote: > Hi, > given that the patch has received feedback and I have weekend for fixing the > fallout, I decided to commit the following version today.  It contains fix in > visibility handling of thunks that has shown in Mozilla build. > > >        * cg

Re: Cgraph thunk reorg

2011-05-13 Thread Jan Hubicka
Hi, I built a cros with --enable-languages=c,c++ --disable-bootstrap --target=powerpc-ibm-aix5.3.0.0 and tried to compile covariant2.C and some of the other testcases you mention, but I don't get the ICE. Anything that could help me to reproduce this? Honza > Honza, > > This patch seems to have

Re: Cgraph thunk reorg

2011-05-11 Thread Jan Hubicka
> Honza, > > This patch seems to have introduced approximately 150 new G++ > testsuite failures on AIX. The errors all are verify_cgraph_node ICEs > related to thunks. > > The all have a similar pattern: Hmm, thanks. It seems that visibility needs even more tweaking. I am currently on a trip ti

Re: Cgraph thunk reorg

2011-05-10 Thread David Edelsohn
Honza, This patch seems to have introduced approximately 150 new G++ testsuite failures on AIX. The errors all are verify_cgraph_node ICEs related to thunks. The all have a similar pattern: /src/gcc/testsuite/g++.dg/abi/covariant2.C:31:20: error: non-DECL_ONE_ONLY node in a same_comdat_group li

Re: Cgraph thunk reorg

2011-05-06 Thread Jan Hubicka
Hi, given that the patch has received feedback and I have weekend for fixing the fallout, I decided to commit the following version today. It contains fix in visibility handling of thunks that has shown in Mozilla build. * cgraph.c (cgraph_add_thunk): Create real function node instead

Re: Cgraph thunk reorg

2011-05-06 Thread Jan Hubicka
Forgot to reply this one... > > *** assemble_thunk (struct cgraph_node *node > > *** 1406,1411 > > --- 1427,1433 > > free_after_compilation (cfun); > > set_cfun (NULL); > > TREE_ASM_WRITTEN (thunk_fndecl) = 1; > > + node->thunk.thunk_p = false; >

Re: Cgraph thunk reorg

2011-05-06 Thread Jan Hubicka
> > *** cgraph_add_thunk (struct cgraph_node *de > > *** 621,626 > > --- 622,636 > > node->thunk.virtual_offset_p = virtual_offset != NULL; > > node->thunk.alias = real_alias; > > node->thunk.thunk_p = true; > > + node->local.finalized = true; > > + > > + if (

Re: Cgraph thunk reorg

2011-05-06 Thread Mike Stump
On May 6, 2011, at 5:12 AM, Jan Hubicka wrote: > 2) As real functions calling the function they are associated with. > > Because backend don't handle alternative entry points, we really > implement > thunks as small functions that usually tail call into the associated > functions

Re: Cgraph thunk reorg

2011-05-06 Thread Michael Matz
Hi, On Fri, 6 May 2011, Jan Hubicka wrote: > > *** dump_cgraph_node (FILE *f, struct cgraph > *** 1874,1880 > if (node->only_called_at_exit) > fprintf (f, " only_called_at_exit"); > > ! fprintf (f, "\n called by: "); > for (edge = node->callers; edge; edge

Re: Cgraph thunk reorg

2011-05-06 Thread Richard Guenther
On Fri, 6 May 2011, Jan Hubicka wrote: > Hi, > this patch implements thunks as real cgraph nodes instead of alias nodes. I > am not > entirely happy about it, but I can't come with anything better. > > The main problem is that thunks can be seen in two ways: > > 1) As alternative entry point