include/coff/
* xcoff.h (XCOFF_ALLOCATED): New flag. bfd/ * xcofflink.c (xcoff_mark): When walking the relocations, only mark the target symbol or the target section, not both. (xcoff_final_definition_p): New function. (xcoff_keep_symbol_p): Use it to check whether an external XCOFF symbol is a valid definition of the associated output symbol. Use XCOFF_ALLOCATED to stop the same hash table entry having two output symbols. (bfd_xcoff_size_dynamic_sections): Set XCOFF_ALLOCATED when keeping a symbol. (xcoff_link_input_bfd): Use xcoff_final_definition_p. ld/testsuite/ * ld-powerpc/aix-no-dup-syms-1a.s, ld-powerpc/aix-no-dup-syms-1b.s, ld-powerpc/aix-no-dup-syms-1.ex, ld-powerpc/aix-no-dup-syms-1.im, ld-powerpc/aix-no-dup-syms-1-dso.dnd, ld-powerpc/aix-no-dup-syms-1-dso.drd, ld-powerpc/aix-no-dup-syms-1-dso.nd, ld-powerpc/aix-no-dup-syms-1-dso.rd, ld-powerpc/aix-no-dup-syms-1-rel.nd, ld-powerpc/aix-no-dup-syms-1-rel.rd: New tests. * ld-powerpc/aix52.exp: Run them.
This commit is contained in:
		| @@ -1,3 +1,7 @@ | ||||
| 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com> | ||||
|  | ||||
| 	* xcoff.h (XCOFF_ALLOCATED): New flag. | ||||
|  | ||||
| 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com> | ||||
|  | ||||
| 	* xcoff.h (XCOFF_CALLED, XCOFF_IMPORT): Update comments. | ||||
|   | ||||
| @@ -318,6 +318,8 @@ struct xcoff_link_hash_entry | ||||
| #define XCOFF_SYSCALL64        0x00010000  | ||||
| /* Symbol was not explicitly defined by the time it was marked.  */ | ||||
| #define XCOFF_WAS_UNDEFINED    0x00020000 | ||||
| /* We have assigned an output XCOFF entry to this symbol.  */ | ||||
| #define XCOFF_ALLOCATED	       0x00040000 | ||||
|  | ||||
| /* The XCOFF linker hash table.  */ | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user