<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glibc/elf/rtld.c, branch cvs/initial</title>
<subtitle>Fork of glibc for development</subtitle>
<id>https://git.zx2c4.com/glibc/atom/elf/rtld.c?h=cvs%2Finitial</id>
<link rel='self' href='https://git.zx2c4.com/glibc/atom/elf/rtld.c?h=cvs%2Finitial'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/'/>
<updated>2002-11-24T23:56:47Z</updated>
<entry>
<title>* sysdeps/posix/readv.c: Include &lt;errno.h&gt;, use __set_errno macro.</title>
<updated>2002-11-24T23:56:47Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-11-24T23:56:47Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=bf2cc5fb028fecf8d6b1adffd952f7402f685923'/>
<id>urn:sha1:bf2cc5fb028fecf8d6b1adffd952f7402f685923</id>
<content type='text'>
	* sysdeps/posix/writev.c: Likewise.
	From Momchil Velikov &lt;velco@fadata.bg&gt;.

	* elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
	calling *GL(dl_error_catch_tsd) for a thread-local location.
	* elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
	(dl_main): Same for GL(dl_error_catch_tsd) initialization.
	* elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].

	* libio/iofflush.c: Add libc_hidden_def.
	* libio/iofwrite.c: Likewise.
	* sysdeps/generic/sigtimedwait.c: Likewise.
	* sysdeps/generic/sigwaitinfo.c: Likewise.
	* sysdeps/posix/sigwait.c: Likewise.
	Reported by Momchil Velikov &lt;velco@fadata.bg&gt;.

	* inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
	to match &lt;arpa/inet.h&gt; declaration.
	* inet/inet_netof.c (inet_netof): Likewise.
	* inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
	Reported by Momchil Velikov &lt;velco@fadata.bg&gt;.
</content>
</entry>
<entry>
<title>* sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional</title>
<updated>2002-10-11T10:52:20Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-10-11T10:52:20Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=ce460d04a5bd10d7353ca37dfa9d34275449fb3b'/>
<id>urn:sha1:ce460d04a5bd10d7353ca37dfa9d34275449fb3b</id>
<content type='text'>
	changed from [USE_TLS &amp;&amp; HAVE___THREAD].

	* sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
	Disable TLS relocs if [RTLD_BOOTSTRAP &amp;&amp; !USE___THREAD].
	* sysdeps/x86_64/dl-machine.h
	(elf_machine_type_class, elf_machine_rela): Likewise.
	* sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
	Likewise.

	* include/link.h (struct link_map): Remove member l_tls_tp_initialized.
	* elf/rtld.c (_dl_start_final, dl_main): Don't use it.
	(_dl_start): Conditionalize PT_TLS check on [USE___THREAD].

	* sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
	instead of ___tls_get_addr.
	(___tls_get_addr_internal): Add attribute_hidden to decl.

	* sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
	_dl_error_catch_tsd.
	* elf/rtld.c (startup_error_tsd): New function.
	(dl_main): Point _dl_error_catch_tsd at that.
	* elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
	use new function pointer instead.
	* elf/dl-tsd.c: New file.
	* elf/Makefile (routines): Add it.

2002-10-07  Roland McGrath  &lt;roland@redhat.com&gt;

	* elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
	writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
	take _dl_load_lock around calling __writev.

	* sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
	(INLINE_SYSCALL): Use that.

	* sysdeps/generic/dl-sysdep.h: New file.
	* sysdeps/mach/hurd/dl-sysdep.h: New file.
	* sysdeps/generic/ldsodefs.h: Include &lt;dl-sysdep.h&gt;.
	* include/errno.h [IS_IN_rtld]: Include &lt;dl-sysdep.h&gt; to define ...
	[RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
	access it directly.
	* elf/dl-minimal.c (__errno_location): Removed.
	* sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
	Use GOTOFF access for errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.h
	[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.

	* sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
	Use PC-relative access for errno.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h
	[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.

	* include/tls.h: New file.
	(USE___THREAD): New macro.
	Define to 1 under [USE_TLS &amp;&amp; HAVE___THREAD] and only when compiling
	libc or libpthread.
	* sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
	changed from [USE_TLS &amp;&amp; HAVE___THREAD].
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
	* sysdeps/unix/i386/sysdep.S: Likewise.
	* sysdeps/unix/x86_64/sysdep.S: Likewise.
	* include/errno.h: Likewise.
	* include/netdb.h: Likewise.
	* include/resolv.h: Likewise.

	* sysdeps/generic/errno.c: New file.
	* csu/Makefile (aux): New variable, list errno.
	* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
	* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
	* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
	* sysdeps/unix/alpha/sysdep.S: Likewise.
	* sysdeps/generic/start.c: Likewise.
	* sysdeps/unix/start.c: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.

	* manual/search.texi (Tree Search Function, Hash Search Function):
	Mention search.h clearly.

2002-10-05  Roland McGrath  &lt;roland@redhat.com&gt;

	* elf/dl-fxstat64.c: File removed.
	* elf/dl-xstat64.c: File removed.
	* elf/Makefile (rtld-routines): Remove them.
	* sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
	Instead, use strong_alias instead of versioned_symbol in the
	!SHLIB_COMPAT case.
	* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.

	* include/shlib-compat.h
	(SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
	[! NOT_IN_libc] (IS_IN_libc): Define it.
	* cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
	* elf/Makefile (CPPFLAGS-.os): Likewise.

	* sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
	Return the status instead of calling exit.

	* Makeconfig (CFLAGS): Prepend -std=gnu99.
	* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
	Remove superfluous rm command, whose @ plus make bugs hid
	all these commands from the make output.

	* include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
	* Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
	Use that file's contents instead of literal echo's for the prologue.
	* include/features.h: Include &lt;gnu/stubs.h&gt; unconditionally.
	* include/gnu/stubs.h: New file.

2002-09-30  Roland McGrath  &lt;roland@redhat.com&gt;

	* elf/rtld-Rules: New file.
	* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
	$(objpfx)rtld-libc.a): New targets.
	(generated): Add them.
	(reloc-link): Remove -o $@ from the variable.
	($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
	(distribute): Add rtld-Rules.
	(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
	* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
	(common-mostlyclean, common-clean): Clean up rtld-* files.
	* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
</content>
</entry>
<entry>
<title>* elf/rtld.c (_dl_start): Fix conditional for declaring CNT.</title>
<updated>2002-09-29T09:35:51Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-09-29T09:35:51Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=3c25964fb000ed7f6bd4ec30d02b3819c581b4b3'/>
<id>urn:sha1:3c25964fb000ed7f6bd4ec30d02b3819c581b4b3</id>
<content type='text'>
	* aclocal.m4 (LIBC_PROG_BINUTILS): Don't clobber $RANLIB with ranlib
	before we check it.
</content>
</entry>
<entry>
<title>* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64): Add a cast.</title>
<updated>2002-09-17T06:56:24Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-09-17T06:56:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=735d67f2f832234be907c48866edb821b76b87c4'/>
<id>urn:sha1:735d67f2f832234be907c48866edb821b76b87c4</id>
<content type='text'>
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
	New macro.

	* elf/rtld.c [HP_TIMING_NONAVAIL]: Fix last change for this case.
</content>
</entry>
<entry>
<title>* include/unistd.h: Uncomment libc_hidden_proto for _exit.</title>
<updated>2002-09-17T05:42:29Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-09-17T05:42:29Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=4874b009bd4c92e46bd9bd2be1d4c4e0a7c4516e'/>
<id>urn:sha1:4874b009bd4c92e46bd9bd2be1d4c4e0a7c4516e</id>
<content type='text'>
	* sysdeps/mach/hurd/_exit.c: Add libc_hidden_def.
	* sysdeps/generic/_exit.c: Likewise.

2002-09-12  Jakub Jelinek  &lt;jakub@redhat.com&gt;

	* elf/rtld.c (struct dl_start_final_info): New.
	(_dl_start_final): Change second argument to struct
	dl_start_final_info *.  Set start_time from info.
	(_dl_start): Remove bootstrap_map variable, add info.
	Define bootstrap_map as macro.  If not DONT_USE_BOOTSTRAP_MAP,
	store HP_TIMING_NOW result into info.start_time.
</content>
</entry>
<entry>
<title>* elf/rtld.c (_dl_start_final): Move _begin, _end decls outside the fn.</title>
<updated>2002-09-12T10:12:33Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-09-12T10:12:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=65da9563c76080002eb5018b4666220e15c9d70d'/>
<id>urn:sha1:65da9563c76080002eb5018b4666220e15c9d70d</id>
<content type='text'>
	(_dl_start) [DONT_USE_BOOTSTRAP_MAP]: Use &amp;_begin instead of l_addr to
	find the ELF header.
</content>
</entry>
<entry>
<title>* elf/rtld.c (dl_main) [USE_TLS]: Adjust l_tls_initimage of main</title>
<updated>2002-09-12T09:15:22Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-09-12T09:15:22Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=75aafc716bfcf989abc986c68d506e8a4f991ade'/>
<id>urn:sha1:75aafc716bfcf989abc986c68d506e8a4f991ade</id>
<content type='text'>
	executable if needed, in case it's actually a shared object.
</content>
</entry>
<entry>
<title>2002-09-02  Jakub Jelinek  &lt;jakub@redhat.com&gt;</title>
<updated>2002-09-02T20:19:26Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-09-02T20:19:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=d89ae1d5efcbaf58ed541d22966a4fb3f8094f9d'/>
<id>urn:sha1:d89ae1d5efcbaf58ed541d22966a4fb3f8094f9d</id>
<content type='text'>
        * elf/rtld.c (dl_main): If prelinking succeeded, mark all objects
        as relocated.
</content>
</entry>
<entry>
<title>* locale/programs/ld-ctype.c (ctype_read): When given a repertoire</title>
<updated>2002-08-26T11:39:12Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-08-26T11:39:12Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=ffa8d2a098d6dd46ba661e4ef0241974bdbc5faf'/>
<id>urn:sha1:ffa8d2a098d6dd46ba661e4ef0241974bdbc5faf</id>
<content type='text'>
	name of "", store a null pointer instead.

	* configure.in (elf): Set to yes for freebsd*, netbsd*.
	* configure: Regenerated.

	* locale/xlocale.c [! (USE_TLS &amp;&amp; HAVE___THREAD)] (__libc_tsd_LOCALE):
	Initialize this instead of __libc_tsd_LOCALE_data.

	* sysdeps/unix/grantpt.c (pts_name): Convert ENOTTY return from
	ptsname_r to EINVAL.

	* sysdeps/generic/ptsname.c (__ptsname_r): Return ENOSYS instead of 0.

	* rt/Makefile: Revert last change, it was inappropriate to presume aio
	implementations depend on pthreads.
	* rt/tst-aio.c (do_test): Exit happy if first failure is ENOSYS.
	* rt/tst-aio64.c (do_test): Likewise.
	* rt/tst-aio2.c (do_test): Likewise.
	* rt/tst-aio3.c (do_test): Likewise.
	* rt/tst-aio4.c (do_test): Likewise.
	* rt/tst-aio5.c (do_test): Likewise.
	* rt/tst-aio6.c (do_test): Likewise.
	* rt/tst-aio7.c (do_test): Likewise.

	* sysdeps/generic/bits/libc-lock.h (__libc_setspecific): Use a cast to
	void so as to avoid compiler warnings.

	* libio/oldstdfiles.c [! _IO_MTSAFE_IO] (DEF_STDFILE): Don't define
	_IO_wide_data_FD, which is never used here.

	* libio/iofread.c
	[! _IO_MTSAFE_IO] (fread_unlocked): Add libc_hidden_ver defn.
	* libio/iofputs.c [! _IO_MTSAFE_IO] (fputs_unlocked): Likewise.
	* libio/iofgets.c [! _IO_MTSAFE_IO] (fgets_unlocked): Likewise.

	* include/resolv.h [! _LIBC_REENTRANT] (_res): #undef it before decl.
	* include/netdb.h [! _LIBC_REENTRANT] (h_errno): Declare normal extern.

	* misc/syslog.c (openlog): Conditionalize locking on [_LIBC_REENTRANT].
	(closelog): Likewise.

2002-07-06  Bruno Haible  &lt;bruno@clisp.org&gt;

	* sysdeps/alpha/fpu/fpu_control.h: Comment fix.

	* sysdeps/unix/sysv/linux/alpha/pipe.S: Moved to ...
	* sysdeps/unix/alpha/pipe.S: ... here.
	* sysdeps/unix/bsd/osf/alpha/pipe.S: File removed.

	* sysdeps/unix/i386/brk.S: Rename local label to '.Lhere' in ELF.

	* sysdeps/unix/i386/brk.S: Add PSEUDO_END invocation.
	* sysdeps/unix/i386/fork.S: Likewise.
	* sysdeps/unix/i386/pipe.S: Likewise.
	* sysdeps/unix/i386/wait.S: Likewise.

	* sysdeps/unix/fork.S: Fix PSEUDO_END argument.
	* sysdeps/unix/arm/fork.S: Likewise.

	* sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.
	* sysdeps/unix/sysv/linux/hppa/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.
	* sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.
	* sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h (PSEUDO): Swap DO_CALL
	arguments.
	(DO_CALL): Swap argument order.

	* sysdeps/i386/sysdep.h (PSEUDO): Fix syntax error.
	(L): Define right for ELF.
	* sysdeps/unix/sysv/linux/i386/sysdep.h (L): Remove definition.
	Now defined in sysdeps/i386/sysdep.h.

	* sysdeps/posix/readv.c: Ansify function definition.
	* sysdeps/posix/writev.c: Likewise.

	* stdio-common/tst-fseek.c (main): Don't assume that off_t and size_t
	have the same size. Avoid direct cast from size_t to off_t.

	* login/tst-utmp.c (simulate_login): Don't leave garbage after the
	nul byte in entry[n].ut_user.
	(simulate_logout): Likewise.

	* login/programs/utmpdump.c (print_entry): Test _HAVE_UT_TYPE,
	_HAVE_UT_PID, _HAVE_UT_ID, _HAVE_UT_HOST, instead of assuming the
	existence of corresponding members of 'struct utmp'.
	* login/tst-utmp.c: Trivialize the test if testing 'struct utmp' and
	!_HAVE_UT_TYPE.

	* sysdeps/unix/opendir.c (__opendir): If st_blksize is 0 or too small,
	allocate a buffer of at least BUFSIZ bytes, not just of
	sizeof (struct dirent).

	* sysdeps/generic/glob.c: Include &lt;limits.h&gt;.
	(NAME_MAX): Define a fallback.
	(glob_in_dir): Allocate enough room for a 'struct dirent64' on the
	stack.
	* posix/tst-dir.c: Include &lt;stddef.h&gt;, for offsetof.
	(main): Allocate enough room for a 'struct dirent64' on the stack.
	* posix/tst-gnuglob.c (my_DIR): Allocate enough room for a
	'struct dirent'.

	* sysdeps/unix/sysv/linux/init-first.c: Don't include
	kernel-features.h.

	* inet/htontest.c: Include &lt;sys/types.h&gt;.

	* sysdeps/generic/sys/sysinfo.h: Surround with __{BEGIN,END}_DECLS.

	* include/sys/sysctl.h: Comment fix.

	* elf/rtld.c (_rtld_global) [! _LIBC_REENTRANT]: Don't initialize
	_dl_load_lock.
	* libio/fileno.c (fileno_unlocked): Define regardless of _IO_MTSAFE_IO.

	* sysdeps/unix/bsd/bsd4.4/syscalls.list (__sigaltstack): New alias.

	* sysdeps/unix/inet/syscalls.list (__connect_internal): New alias.
	(__getpeername): New alias.
	(__getsockname): New alias.
	(__socket): New alias.

	* sysdeps/unix/common/syscalls.list (getpgid): Remove.

	* sysdeps/unix/syscalls.list (__chown_internal): New alias.
	(__fcntl_internal): New alias.
	(__profil): New alias.
</content>
</entry>
<entry>
<title>* sysdeps/generic/utmp_file.c (UNLOCK_FILE): Clear alarm before</title>
<updated>2002-08-25T20:14:50Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@gnu.org</email>
</author>
<published>2002-08-25T20:14:50Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/glibc/commit/?id=6ce3881de539b0a76673da3ea6fdac7453b47910'/>
<id>urn:sha1:6ce3881de539b0a76673da3ea6fdac7453b47910</id>
<content type='text'>
	resetting handler, to avoid the possibility of a spurious SIGALRM
	delivered to the user's handler.
	Reported by Amit D. Chaudhary &lt;amitc@brocade.com&gt;,

	* misc/Makefile (CFLAGS-init-misc.c): Varaible removed.  It served to
	set -fkeep-inline-functions, which is not needed for the current file.

	* sysdeps/generic/ldsodefs.h: Add attribute_hidden to *_internal decls.
	(_dl_setup_hash): Add attribute_hidden.
	(_dl_sysdep_start, _dl_sysdep_start_cleanup): Likewise.
	(_dl_sysdep_read_whole_file, _dl_dprintf): Likewise.
	(_dl_new_object, _dl_map_object_deps): Likewise.
	(_dl_map_object_deps_internal): Remove decl.
	* elf/rtld.c (__mempcpy, _exit): Redeclare locally as hidden.

	* sysdeps/i386/dl-machine.h [PI_STATIC_AND_HIDDEN
	&amp;&amp; HAVE_VISIBILITY_ATTRIBUTE &amp;&amp; HAVE_HIDDEN
	&amp;&amp; !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]
	(elf_machine_dynamic, elf_machine_load_address): Rewritten without asm,
	instead relying on the compiler to produce only GOTOFF variable refs.
</content>
</entry>
</feed>
