This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [C++] Avoid one place of frontend calling into targetm
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: Jan Hubicka <jh at suse dot cz>, Mark Mitchell <mark at codesourcery dot com>, gcc-patches at gcc dot gnu dot org
- Date: Sun, 6 May 2007 12:05:26 +0200
- Subject: Re: [C++] Avoid one place of frontend calling into targetm
- References: <20070423001523.GJ23507@kam.mff.cuni.cz> <200705060208.l4628QQ30220@makai.watson.ibm.com>
> The difference in assembly for init/copy3.C is an additional
> global constructor that calls the first global constructor
>
> _Z41__static_initialization_and_destruction_0ii:
> ...
>
> _GLOBAL__I_copies:
> ...
> bl ._Z41__static_initialization_and_destruction_0ii
>
> _GLOBAL__I_0_copies:
> ...
> bl ._GLOBAL__I_copies
Looks like C++ frontend is keeping DECL_STATIC_CONSTRUCTOR on bit too
many functions, but I am not at all sure why. Would be possible to have
a testcase + diff of what is going wrong so I can throw it into a cross?
Thanks,
Honza
>
> David