This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] VAX/BFD: Correct GOT/PLT refcounts for static links
- From: "Maciej W. Rozycki" <macro at linux-mips dot org>
- To: Jan-Benedict Glaw <jbglaw at lug-owl dot de>
- Cc: binutils at sourceware dot org, Matt Thomas <matt at netbsd dot org>
- Date: Sat, 27 Jul 2013 20:33:14 +0100 (BST)
- Subject: Re: [PATCH] VAX/BFD: Correct GOT/PLT refcounts for static links
- References: <alpine dot LFD dot 2 dot 03 dot 1305192302390 dot 10753 at linux-mips dot org> <20130522003011 dot GC13138 at lug-owl dot de>
On Wed, 22 May 2013, Jan-Benedict Glaw wrote:
> > * elf32-vax.c (elf_vax_discard_got_entries): New function.
> > (elf_vax_always_size_sections): Likewise.
> > (elf_vax_size_dynamic_sections): Remove code moved to
> > elf_vax_always_size_sections. Make comment on
> > elf_vax_instantiate_got_entries match reality.
> > (elf_vax_instantiate_got_entries): Assert that rather than check
> > if dynobj is null. Don't check for dynamic_sections_created.
> > Make function description match reality.
> > (elf_backend_always_size_sections): New macro.
>
> Ok.
Applied now, thanks for your review.
> > --- binutils-2.23.1.orig/bfd/elf32-vax.c
> > +++ binutils-2.23.1/bfd/elf32-vax.c
> > @@ -1046,6 +1046,59 @@ elf_vax_adjust_dynamic_symbol (struct bf
> [...]
> > +static bfd_boolean
> > +elf_vax_always_size_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
> > + struct bfd_link_info *info)
> > +{
> > + bfd *dynobj;
> > + asection *s;
> > +
> > + dynobj = elf_hash_table (info)->dynobj;
> > +
> > + if (dynobj && !elf_hash_table (info)->dynamic_sections_created)
> > + {
> > + /* We may have created entries in the .rela.got and .got sections.
> > + However, if we are not creating the dynamic sections, we will
> > + not actually use these entries. Reset the size of .rela.got
> > + and .got, which will cause it to get stripped from the output
>
> "them"?
Fixed, with a separate commit.
2013-07-27 Maciej W. Rozycki <macro@linux-mips.org>
* elf32-vax.c (elf_vax_always_size_sections): Correct a comment
typo.
Maciej
Index: bfd/elf32-vax.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-vax.c,v
retrieving revision 1.79
diff -u -p -r1.79 elf32-vax.c
--- bfd/elf32-vax.c 27 Jul 2013 19:17:29 -0000 1.79
+++ bfd/elf32-vax.c 27 Jul 2013 19:20:33 -0000
@@ -1080,7 +1080,7 @@ elf_vax_always_size_sections (bfd *outpu
/* We may have created entries in the .rela.got and .got sections.
However, if we are not creating the dynamic sections, we will
not actually use these entries. Reset the size of .rela.got
- and .got, which will cause it to get stripped from the output
+ and .got, which will cause them to get stripped from the output
file below. */
s = bfd_get_linker_section (dynobj, ".rela.got");
if (s != NULL)