diff options
author | Ulrich Drepper <drepper@redhat.com> | 2006-09-05 02:02:55 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2006-09-05 02:02:55 +0000 |
commit | 71213dc2589554dc8f8061e9b04e80c55d098b6a (patch) | |
tree | 9e513edb4f70a4b9f59fc5daee81a85068bff27c | |
parent | 03eeff83892d66bd06f85eab3172ab4679273f6e (diff) | |
download | glibc-71213dc2589554dc8f8061e9b04e80c55d098b6a.zip glibc-71213dc2589554dc8f8061e9b04e80c55d098b6a.tar.gz glibc-71213dc2589554dc8f8061e9b04e80c55d098b6a.tar.bz2 |
* Makerules (shlib.lds): If have-hash-style, put .hash sectioncvs/fedora-glibc-20060905T0633
at the end of the RO segment.
2006-09-04 Ulrich Drepper <drepper@redhat.com>
* elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
style hash table format is used.
2006-09-04 Jakub Jelinek <jakub@redhat.com>
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | Makerules | 8 | ||||
-rw-r--r-- | elf/do-lookup.h | 2 |
3 files changed, 19 insertions, 1 deletions
@@ -1,5 +1,15 @@ 2006-09-04 Jakub Jelinek <jakub@redhat.com> + * Makerules (shlib.lds): If have-hash-style, put .hash section + at the end of the RO segment. + +2006-09-04 Ulrich Drepper <drepper@redhat.com> + + * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new + style hash table format is used. + +2006-09-04 Jakub Jelinek <jakub@redhat.com> + * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after randomization rather than before. * resolv/res_init.c (res_randomid): Don't call gettimeofday here. @@ -487,7 +487,13 @@ $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules -Wl,--verbose 2>&1 | \ sed > $@T \ -e '/^=========/,/^=========/!d;/^=========/d' \ - -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ + $(if $(filter yes,$(have-hash-style)), \ + -e 's/^.*\.gnu\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ + -e '/^[ ]*\.hash[ ]*:.*$$/{h;d;}' \ + -e '/DATA_SEGMENT_ALIGN/{H;g}' \ + , \ + -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ + ) \ -e 's/^.*\*(\.dynbss).*$$/& \ PROVIDE(__start___libc_freeres_ptrs = .); \ *(__libc_freeres_ptrs) \ diff --git a/elf/do-lookup.h b/elf/do-lookup.h index f40ab9d..2585d83 100644 --- a/elf/do-lookup.h +++ b/elf/do-lookup.h @@ -195,6 +195,8 @@ do_lookup_x (const char *undef_name, uint_fast32_t new_hash, while ((*hasharr++ & 1u) == 0); } } + /* No symbol found. */ + symidx = SHN_UNDEF; } else { |