Browse Source

bfd

* cofflink.c (_bfd_coff_generic_relocate_section): Correct
	comment.

gas
	* config/obj-coff.c (obj_coff_weak): Set auxiliary record
	of NT weak externals to IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY.
gdb-csl-arm-20051020-branch
Danny Smith 21 years ago
parent
commit
27198fa9f3
  1. 5
      bfd/ChangeLog
  2. 8
      bfd/cofflink.c
  3. 2
      gas/config/obj-coff.c

5
bfd/ChangeLog

@ -1,3 +1,8 @@
2005-08-17 Danny Smith <dannysmith@users.sourceforge.net>
* cofflink.c (_bfd_coff_generic_relocate_section): Correct
comment.
2005-08-17 Alan Modra <amodra@bigpond.net.au>
* elflink.c (_bfd_elf_define_linkage_sym): Don't call

8
bfd/cofflink.c

@ -2937,9 +2937,11 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
Note that weak symbols without aux records are a GNU
extension.
FIXME: All weak externals are treated as having
characteristics IMAGE_WEAK_EXTERN_SEARCH_LIBRARY (2).
There are no known uses of the other two types of
weak externals. */
characteristic IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY (1).
These behave as per SVR4 ABI: A library member
will resolve a weak external only if a normal
external causes the library member to be linked.
See also linker.c: generic_link_check_archive_element. */
asection *sec;
struct coff_link_hash_entry *h2 =
input_bfd->tdata.coff_obj_data->sym_hashes[

2
gas/config/obj-coff.c

@ -1093,7 +1093,7 @@ obj_coff_weak (int ignore ATTRIBUTE_UNUSED)
the value of the weak symbol itself. */
S_SET_STORAGE_CLASS (symbolP, C_NT_WEAK);
S_SET_NUMBER_AUXILIARY (symbolP, 1);
SA_SET_SYM_FSIZE (symbolP, IMAGE_WEAK_EXTERN_SEARCH_LIBRARY);
SA_SET_SYM_FSIZE (symbolP, IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY);
alternateP = symbol_find_or_make (weak_name2altname (name));
S_SET_EXTERNAL (alternateP);

Loading…
Cancel
Save