This is the mail archive of the
mailing list for the binutils project.
[PATCH] ld/ld.texinfo: Do not constrain dynamic linker lazy binding behaviour.
- From: Carlos O'Donell <carlos at redhat dot com>
- To: binutils at sourceware dot org, Nick Clifton <nickc at redhat dot com>
- Cc: Florian Weimer <fweimer at redhat dot com>, Suprateeka R Hegde <hegdesmailbox at gmail dot com>
- Date: Thu, 7 Jul 2016 12:09:40 -0400
- Subject: [PATCH] ld/ld.texinfo: Do not constrain dynamic linker lazy binding behaviour.
- Authentication-results: sourceware.org; auth=none
The resolution of function symbols under lazy binding should
not be constrained by the binutils documentation.
The lazy binding can theoretically happen at any time between
load of the shared object and the function call. Under some
conditions it may be desirable to have it happen earlier than
the function call time.
For the sake of the argument consider a future optimization where
we might be able to do a bulk resolution of all symbols in a given
shared object, and so lazy resolution of _all_ symbols for a given
shared object happens at the first call to a function from the
shared object rather than at each call.
No regressions on x86_64, and pdf of the manual looks good.
OK to checkin?
2016-07-07 Carlos O'Donell <firstname.lastname@example.org>
* ld.texinfo (Command Line Options,lazy): Lazy binding can
happen at any time between load and function call.
diff --git a/ld/ld.texinfo b/ld/ld.texinfo
index bc16764..4599b98 100644
@@ -1122,9 +1122,9 @@ but the primary executable.
When generating an executable or shared library, mark it to tell the
-dynamic linker to defer function call resolution to the point when
-the function is called (lazy binding), rather than at load time.
-Lazy binding is the default.
+dynamic linker to defer function call resolution to a future time
+which may be as late as when the function is called (lazy binding),
+rather than at load time. Lazy binding is the default.
Marks the object that its filters be processed immediately at