2
0
mirror of https://github.com/bebbo/amigaos-binutils-2.14.git synced 2025-12-08 22:38:24 +00:00

Backport fixes for PR gas/3041 (bfd assembler):

[gas]
2010-09-09  Gunther Nikl  <gnikl@users.sourceforge.net>

	* gas/config/tc-m68k.c (tc_gen_reloc): Handle references to defined
	weak symbols first if generating an a.out object.

2009-10-013  Vincent Riviere  <vincent.riviere@freesbee.fr>

	PR gas/3041
	* config/tc-m68k.c (tc_gen_reloc): Fix addend for relocations
	located in data section an referencing a weak symbol.

2007-05-15  Vincent Riviere  <vincent.riviere@freesbee.fr>

	PR gas/3041
	* config/tc-m68k.c (relaxable_symbol): Make sure that the correct
	addend is stored for relocs against weak symbols.
	(md_apply_fix): So not loose track of addend for relocs against
	weak symbols.

2007-05-03  Vincent Riviere  <vincent.riviere@freesbee.fr>
	    Nick Clifton  <nickc@redhat.com>

	PR gas/3041
	* config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols.
	(tc_gen_reloc): Adjust the addend of relocs against weak symbols.
	(md_apply_fix): Put zero values into the frags referencing weak
	symbols.

[bfd]
2007-05-03  Vincent Riviere  <vincent.riviere@freesbee.fr>
	    Nick Clifton  <nickc@redhat.com>

	PR gas/3041
	* aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
	in the same way as relocs against external symbols.


Weak fixes for the non-bfd assembler:

* gas/config/tc-m68k.h (S_IS_WEAK): Define for !BFD_ASSEMBLER.
* gas/config/tc-m68k.c (tc_aout_fix_to_chars): Check weak symbol state.
* gas/write.c (fixup_segment): Treat a weak symbol as undefined.
This commit is contained in:
Gunther Nikl
2014-11-17 20:24:28 +00:00
parent bc58512a28
commit c1f1f943e1
4 changed files with 50 additions and 6 deletions

View File

@ -2633,7 +2633,7 @@ fixup_segment (fixP, this_segment)
}
if (fixP->fx_addsy != NULL)
add_symbol_segment = S_GET_SEGMENT (fixP->fx_addsy);
add_symbol_segment = S_IS_WEAK (fixP->fx_addsy) ? undefined_section : S_GET_SEGMENT (fixP->fx_addsy);
if (fixP->fx_subsy != NULL)
{