From 188dbb07f1cfd26aef9c470a430e3b26f5be829a Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 15 Jun 2009 18:25:20 +0000 Subject: [PATCH] 2009-06-15 H.J. Lu * elf32-i386.c (elf_i386_allocate_dynrelocs): Update comments. * elf64-x86-64.c (elf64_x86_64_allocate_dynrelocs): Likewise. --- bfd/ChangeLog | 5 +++++ bfd/elf32-i386.c | 10 +++++----- bfd/elf64-x86-64.c | 10 +++++----- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e89dc00..4d4469b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2009-06-15 H.J. Lu + * elf32-i386.c (elf_i386_allocate_dynrelocs): Update comments. + * elf64-x86-64.c (elf64_x86_64_allocate_dynrelocs): Likewise. + +2009-06-15 H.J. Lu + * elf32-i386.c (elf_i386_check_relocs): Reformat. * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise. diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index 6cbf428..c9e2c1d 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -2141,11 +2141,11 @@ elf_i386_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) asection *plt, *gotplt, *relplt; /* When a shared library references a STT_GNU_IFUNC symbol - defined in executable. the .got.plt slot in the shared library - will contain address of the .plt slot in the binary and only - its .got.plt will contain the resolved function that should be - called. Pointer equality won't work correctly. PIE should - be used if pointer equality is required here. */ + defined in executable, the address of the resolved function + may be used. But in non-shared executable, the address of + its .plt slot may be used. Pointer equality may not work + correctly. PIE should be used if pointer equality is + required here. */ if (!info->shared && (h->dynindx != -1 || info->export_dynamic) diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index f7a48e9..02e8201 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -1983,11 +1983,11 @@ elf64_x86_64_allocate_dynrelocs (struct elf_link_hash_entry *h, void * inf) asection *plt, *gotplt, *relplt; /* When a shared library references a STT_GNU_IFUNC symbol - defined in executable. the .got.plt slot in the shared library - will contain address of the .plt slot in the binary and only - its .got.plt will contain the resolved function that should be - called. Pointer equality won't work correctly. PIE should - be used if pointer equality is required here. */ + defined in executable, the address of the resolved function + may be used. But in non-shared executable, the address of + its .plt slot may be used. Pointer equality may not work + correctly. PIE should be used if pointer equality is + required here. */ if (!info->shared && (h->dynindx != -1 || info->export_dynamic) -- 2.7.4