This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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: [PATCH] tile: support very large shared objects


> > csu/ is not enough.  You also need to use the flag for all of *_nonshared.a
> > (.oS files).  That too is code that's always statically linked into
> > applications.
> 
> I did think about this.  My conclusion was that since *_nonshared.a is
> linked last, it will always be at the end of the generated object, so jumps
> and calls will always be able to "reach" other things linked in from
> *_nonshared.a as well as the PLT, which immediately follows the text
> section.  Thus, no need for large model.  In practice this does appear to
> be the case.  (And this large model code is noticeably slower than regular
> mode, and we've verified that it works at the customer with the actual
> large object this way, for what that's worth.)

There are many ways to arrive at a situation where these assumptions fall
down.  In general, we try to keep things fully general-purpose and not bake
in presumptions of this nature about what users do in the range of valid
inputs.  But since this is for a machine-specific, rarely-used option we'll
leave it up to you to decide about those tradeoffs.


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