This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
elf32-hppa vtable bug
- To: binutils at sourceware dot cygnus dot com
- Subject: elf32-hppa vtable bug
- From: Alan Modra <alan at linuxcare dot com dot au>
- Date: Mon, 2 Oct 2000 19:57:59 +1100 (EST)
elf32-hppa uses rela type relocs, so doesn't have the vtable entry fudge
used on rel targets like x86.
bfd/ChangeLog
* elf32-hppa.c (elf32_hppa_check_relocs): Correct call to
_bfd_elf32_gc_record_vtable. Correct a comment.
Alan Modra
--
Linuxcare. Support for the Revolution.
Index: elf32-hppa.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-hppa.c,v
retrieving revision 1.20
diff -u -p -r1.20 elf32-hppa.c
--- elf32-hppa.c 2000/09/27 17:30:17 1.20
+++ elf32-hppa.c 2000/10/02 08:22:24
@@ -1386,7 +1386,7 @@ elf32_hppa_check_relocs (abfd, info, sec
used. Record for later use during GC. */
case R_PARISC_GNU_VTENTRY:
if (!_bfd_elf32_gc_record_vtentry (abfd, sec,
- &h->elf, rel->r_offset))
+ &h->elf, rel->r_addend))
return false;
continue;
@@ -1489,10 +1489,9 @@ elf32_hppa_check_relocs (abfd, info, sec
else
h->elf.plt.refcount += 1;
- /* If this .plt entry is for a plabel, we need an
- extra word for ld.so. adjust_dynamic_symbol will
- also keep the entry even if it appears to be
- local. */
+ /* If this .plt entry is for a plabel, mark it so
+ that adjust_dynamic_symbol will keep the entry
+ even if it appears to be local. */
if (need_entry & PLT_PLABEL)
h->plabel = 1;
}