From: Ulrich Drepper Date: Sat, 20 Feb 1999 18:22:38 +0000 (+0000) Subject: (elf_machine_runtime_setup): DT_PLTGOT entry is already relocated. X-Git-Tag: upstream/2.30~10627^2~2925 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e675032fec82b43337fde2840fdf1df0bb30b68a;p=external%2Fglibc.git (elf_machine_runtime_setup): DT_PLTGOT entry is already relocated. --- diff --git a/sysdeps/alpha/dl-machine.h b/sysdeps/alpha/dl-machine.h index 6e11380..21059f5 100644 --- a/sysdeps/alpha/dl-machine.h +++ b/sysdeps/alpha/dl-machine.h @@ -98,7 +98,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) /* The GOT entries for the functions in the PLT have not been filled in yet. Their initial contents are directed to the PLT which arranges for the dynamic linker to be called. */ - plt = l->l_addr + l->l_info[DT_PLTGOT]->d_un.d_ptr; + plt = l->l_info[DT_PLTGOT]->d_un.d_ptr; /* This function will be called to perform the relocation. */ if (!profile) diff --git a/sysdeps/m68k/dl-machine.h b/sysdeps/m68k/dl-machine.h index 8ce24a7..afa68ef 100644 --- a/sysdeps/m68k/dl-machine.h +++ b/sysdeps/m68k/dl-machine.h @@ -80,7 +80,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) to push an offset into the .rela.plt section, push _GLOBAL_OFFSET_TABLE_[1], and then jump to _GLOBAL_OFFSET_TABLE_[2]. */ - got = (Elf32_Addr *) (l->l_addr + l->l_info[DT_PLTGOT]->d_un.d_ptr); + got = (Elf32_Addr *) l->l_info[DT_PLTGOT]->d_un.d_ptr; got[1] = (Elf32_Addr) l; /* Identify this shared object. */ /* The got[2] entry contains the address of a function which gets diff --git a/sysdeps/mips/dl-machine.h b/sysdeps/mips/dl-machine.h index 749ea00..6896e53 100644 --- a/sysdeps/mips/dl-machine.h +++ b/sysdeps/mips/dl-machine.h @@ -156,8 +156,7 @@ elf_machine_got_rel (struct link_map *map, int lazy) (ref)? sym_loadaddr + ref->st_value: 0; \ }) - got = (ElfW(Addr) *) ((void *) map->l_addr - + map->l_info[DT_PLTGOT]->d_un.d_ptr); + got = (ElfW(Addr) *) map->l_info[DT_PLTGOT]->d_un.d_ptr; /* got[0] is reserved. got[1] is also reserved for the dynamic object generated by gnu ld. Skip these reserved entries from relocation. */ @@ -232,8 +231,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) Their initial contents will arrange when called to put an offset into the .dynsym section in t8, the return address in t7 and then jump to _GLOBAL_OFFSET_TABLE[0]. */ - got = (ElfW(Addr) *) ((void *) l->l_addr - + l->l_info[DT_PLTGOT]->d_un.d_ptr); + got = (ElfW(Addr) *) l->l_info[DT_PLTGOT]->d_un.d_ptr; /* This function will get called to fix up the GOT entry indicated by the register t8, and then jump to the resolved address. */ @@ -350,7 +348,7 @@ __dl_runtime_resolve (ElfW(Word) sym_index, \ const char *strtab \ = (const void *) l->l_info[DT_STRTAB]->d_un.d_ptr; \ const ElfW(Addr) *got \ - = (const ElfW(Addr) *) (l->l_addr + l->l_info[DT_PLTGOT]->d_un.d_ptr); \ + = (const ElfW(Addr) *) l->l_info[DT_PLTGOT]->d_un.d_ptr; \ const ElfW(Word) local_gotno \ = (const ElfW(Word)) l->l_info[DT_MIPS (LOCAL_GOTNO)]->d_un.d_val; \ const ElfW(Word) gotsym \