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: -funit-at-a-time x nested fns x inlining of enclosing fn


> On Sat, 10 Jul 2004 12:23:33 +0200, Jan Hubicka <jh@suse.cz> wrote:
> 
> > One place where parent-child relationship is needed are the nested
> > functions of extern inline functions.
> > Tought these are static we must not emit these unless we inlined the
> > origin unlike normal static functions in non-unit-at-a-time mode.
> 
> Hmm?  It seems to me that we need a copy iff we emit a call to the
> function.  How is this different from other statics?

In non-unit-at-a-time we emit offline copy of all non-inline static
functions, while emmiting of nested inline functions has been controled
by inlineness of the outermost origin instead of function itself.  There
are tests in the testsuite for this behaviour and definitly in the
context of extern inline it is only sane implementation of this crazy
combinations of extensions.

What about simply deferring each inlined function?  I am traveling right
now, but I will make patch for this in two days or so.

Honza
> 
> Jason


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