This is the mail archive of the gcc-help@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: effect of -fPIC on code speed


Miles Bader <miles@gnu.org> writes:

> Sure, then the gcc doc can say "(see <all-about-pic> for details)"... :)

OK, so first write that document....


> Are symbols in a shared object loaded with e.g. dlopen "visible" (in the
> sense of being unified with symbols in the executable, not visible via a
> special lookup like dlsym)?

When a library is opened by dlopen the executable has already been
dynamically linked, and in any case the dlopen'ed library comes last in
the symbol lookup order.  So the question is only meaningful with regard
to what happens to symbol references in the dlopen'ed library.  The
answer to that question depends on the RTLD_DEEPBIND flag to dlopen (and
of course on whether the library has the DT_SYMBOLIC tag or DF_SYMBOLIC
flag).  The RTLD_GLOBAL flag controls whether the dlopen'ed shared
library's symbols are available for linking with subsequent dlopen'ed
libraries.

Ian


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