diff options
author | Richard Henderson <rth@redhat.com> | 2005-02-07 03:11:46 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2005-02-07 03:11:46 +0000 |
commit | a6e73dea18611ac02b324e85167e195550b9f697 (patch) | |
tree | 8b9394b4147a6c5745ac2d9a3e83896b4498df8c | |
parent | 75df54b7c8df57a368525292acc1a9869c4d68db (diff) | |
download | glibc-a6e73dea18611ac02b324e85167e195550b9f697.zip glibc-a6e73dea18611ac02b324e85167e195550b9f697.tar.gz glibc-a6e73dea18611ac02b324e85167e195550b9f697.tar.bz2 |
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP all the time.
2005-02-06 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP
all the time.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/alpha/dl-machine.h | 14 |
2 files changed, 7 insertions, 12 deletions
@@ -1,3 +1,8 @@ +2005-02-06 Richard Henderson <rth@redhat.com> + + * sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP + all the time. + 2004-11-03 Marcus Brinkmann <marcus@gnu.org> * configure.in (sysnames): Append sysdeps/generic for each add-on. diff --git a/sysdeps/alpha/dl-machine.h b/sysdeps/alpha/dl-machine.h index fd2269b..4166e8c 100644 --- a/sysdeps/alpha/dl-machine.h +++ b/sysdeps/alpha/dl-machine.h @@ -423,26 +423,16 @@ elf_machine_rela (struct link_map *map, return; else { + struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type); Elf64_Addr sym_value; Elf64_Addr sym_raw_value; -#if defined USE_TLS && !defined RTLD_BOOTSTRAP - struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type); sym_raw_value = sym_value = reloc->r_addend; - if (sym) + if (sym_map) { sym_raw_value += sym->st_value; sym_value = sym_raw_value + sym_map->l_addr; } -#else - Elf64_Addr loadbase = RESOLVE (&sym, version, r_type); - sym_raw_value = sym_value = reloc->r_addend; - if (sym) - { - sym_raw_value += sym->st_value; - sym_value = sym_raw_value + loadbase; - } -#endif if (r_type == R_ALPHA_GLOB_DAT) *reloc_addr = sym_value; |