aboutsummaryrefslogtreecommitdiff
path: root/elf/dl-reloc.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-08-23 23:36:47 +0000
committerUlrich Drepper <drepper@redhat.com>2001-08-23 23:36:47 +0000
commit647eb037f3d9dee0bf6e9410c6445c4223cf832a (patch)
treefc725d27ed5ffef239f38f7aabb08227b285dfd2 /elf/dl-reloc.c
parente515fbc5fd53ff4186249a2c070f41fd73aa1c2c (diff)
downloadglibc-647eb037f3d9dee0bf6e9410c6445c4223cf832a.tar
glibc-647eb037f3d9dee0bf6e9410c6445c4223cf832a.tar.gz
glibc-647eb037f3d9dee0bf6e9410c6445c4223cf832a.tar.bz2
glibc-647eb037f3d9dee0bf6e9410c6445c4223cf832a.zip
Update.
2001-08-23 Jakub Jelinek <jakub@redhat.com> * elf/ldconfig.c (search_dir): Remove stale symlinks. 2001-08-23 Jakub Jelinek <jakub@redhat.com> * elf/dl-lookup.c (lookup_cache, lookup_cache_versioned): New. (_dl_lookup_symbol): Lookup relocations in cache and store successfull lookups in cache. (_dl_lookup_versioned_symbol): Likewise. * elf/dl-reloc.c (_dl_relocate_object): Initialize cache for relocation lookup. * elf/rtld.c (print_statistics): Output _dl_num_cache_relocations. * sysdeps/generic/ldsodefs.h (struct lookup_cache): New definition. (lookup_cache, lookup_cache_versioned): Add declarations. 2001-08-23 Ulrich Drepper <drepper@redhat.com> * stdlib/tst-random.c (main): Swap parameters in fail call. Patch by Pete Bevin <pete@petebevin.com>. 2001-08-23 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/inttypes.h: Use __gwchar_t instead of __wchar_t. * malloc/obstack.c: Indent preprocessor directives. Patch by Jim Meyering <meyering@ascend.com>.
Diffstat (limited to 'elf/dl-reloc.c')
-rw-r--r--elf/dl-reloc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c
index dbbc19c233..b46d3bcf47 100644
--- a/elf/dl-reloc.c
+++ b/elf/dl-reloc.c
@@ -89,8 +89,15 @@ cannot make segment writable for relocation"));
: l->l_addr)
#include "dynamic-link.h"
+ /* Start symbol lookup caching for this object. */
+ _dl_lookup_cache.map = l;
+ _dl_lookup_cache_versioned.map = l;
+
ELF_DYNAMIC_RELOCATE (l, lazy, consider_profiling);
+ _dl_lookup_cache.map = NULL;
+ _dl_lookup_cache_versioned.map = NULL;
+
if (__builtin_expect (consider_profiling, 0))
{
/* Allocate the array which will contain the already found