This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fixes to _bfd_mips_elf_hide_symbol


Thiemo Seufer wrote:
> Richard Sandiford wrote:
> [snip]
> > Tested on mips-linux-gnu, mips64-linux-gnu and mips-wrs-vxworks.
> > OK to install?
> > 
> > Richard
> > 
> > 
> > bfd/
> > 	* elfxx-mips.c (mips_elf_link_hash_table): Add computed_got_sizes.
> > 	(mips_elf_record_global_got_symbol): Increment local_gotno for
> > 	each forced-local symbol.
> > 	(_bfd_mips_elf_check_relocs): Pass forced-local call symbols to
> > 	mips_elf_record_global_got_symbol for VxWorks too.
> > 	(_bfd_mips_elf_always_size_sections): Set it to true after computing
> > 	the GOT size.
> > 	(_bfd_mips_elf_hide_symbol): Increase local_gotno whenever
> > 	got.offset == 1.  Only adjust global_gotno if computed_got_sizes.
> > 	For VxWorks, add a local entry when hiding a symbol that needs a
> > 	plt but has not been marked as needing a global got entry.
> > 	(_bfd_mips_elf_link_hash_table_create): Set computed_got_sizes to
> > 	false.
> > 
> > ld/testsuite/
> > 	* ld-mips-elf/vxworks-forced-local-1.d,
> > 	* ld-mips-elf/vxworks-forced-local-1.s,
> > 	* ld-mips-elf/vxworks-forced-local-1.ver: New test.
> > 	* ld-mips-elf/mips-elf.exp: Run it.
> > 	* ld-mips-elf/tlsdyn-o32-2.d: Adjust for removal of unnecessary
> > 	local GOT entry.
> > 	* ld-mips-elf/tlsdyn-o32-2.got: Likewise.
> > 	* ld-mips-elf/tlsdyn-o32-3.d: Likewise.
> > 	* ld-mips-elf/tlsdyn-o32-3.got: Likewise.
> > 	* ld-mips-elf/vxworks1-lib.dd: Likewise.
> > 	* ld-mips-elf/vxworks1-lib.rd: Likewise.
> 
> Ok.

Richard, Daniel, I think this should also go in the 2.18 branch.


Thiemo


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]