[hurd,commited] hurd: Avoid some PLTs in libc and librt
Joseph Myers
joseph@codesourcery.com
Tue Apr 3 00:17:00 GMT 2018
As a general matter, calling __foo instead of foo is something done for
namespace reasons, if there is a standard namespace (or, in principle, one
such as _DEFAULT_SOURCE, though we don't test that) including a function
in the calling file, but not foo. It may also fix local PLT issues, if
__foo is not exported from the library in question, but if there are only
PLT issues not namespace ones, the *_hidden_proto / *_hidden_def macros
would typically be called as a sufficient solution to the PLT issues.
Calling __foo does of course introduce the need for declarations of __foo
that may not have been previously needed, and those may need to replicate
properties of the public declarations of foo, such as attributes or the
presence of inline versions, to avoid regressions.
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list