aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/alpha/dl-machine.h14
2 files changed, 7 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index d06226f9a1..ccc3cf4d06 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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 fd2269bd30..4166e8c498 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;