This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [C++ patch] one more missed mark_used


> On Fri, 2003-08-01 at 04:40, Jan Hubicka wrote:
> > > > On Wed, 2003-07-30 at 10:31, Jan Hubicka wrote:
> > > > > Hi,
> > > > > typeinfo is not produced in unit-at-a-time when it is referenced via EH
> > > > > tables only.
> > > > 
> > > > How is this getting output when *not* in unit-at-a-time mode?
> > > > 
> > > > I'd like to avoid marking it in two separate places.
> > > It is not marked as used, it is just marked as referenced during output
> > > of EH tables that is done udring expansion of the function - i.e too
> > > late for me.  Perhaps we can also move expansion of EH tables into
> > > lower_function but I am not quite sure this is possible as I don't
> > > understand the machinery enought.
> > Actually it gets used later.  It is in build_eh_type_type that is called
> > via callback from the backend during expanding the eh handler.
> 
> So, why doesn't that work in unit-at-a-time mode?  If it can't be made

It does not work because  what we emit is fixed before we start
assembling, so during the assembling process we can't invent another
data (and possibly funtions) to be needed.
The callback is still needed to return the proper type, but we may drop
the mark_used in it.

Honza
> to work there, then we should eliminate the emission during the callback
> and just always do mark_used at the point you suggested.
> 
> -- 
> Mark Mitchell
> CodeSourcery, LLC
> mark@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]