Commit graph

4292 commits

Author SHA1 Message Date
Alan Modra
70bfececf5 * bout.c (b_out_write_object_contents): Don't use sizeof on host
structs to size on-disk structures.
	(b_out_set_section_contents): Size the external struct, not the
	internal one for on-disk size.
	(b_out_sizeof_headers): Likewise.
2005-03-01 00:38:52 +00:00
Alan Modra
ceb1f1eff4 * elf64-ppc.c (ppc64_elf_size_stubs): Override defined dot-sym
entry points with the func descriptor as well as undefweak.
2005-02-28 23:00:40 +00:00
Alan Modra
b00b912563 daily update 2005-02-28 23:00:05 +00:00
Nick Clifton
f67e617a26 (pe_ILF_build_a_bfd): Do not assume that an @ will be present when
IMPORT_NAME_UNDOECRATE is used.
2005-02-28 16:07:33 +00:00
H.J. Lu
af44c13841 2005-02-28 H.J. Lu <hongjiu.lu@intel.com>
PR 757
	* elf-bfd.h (_bfd_elf_merge_symbol): Add a pointer to unsigned
	int.

	* elf32-sh-symbian.c (sh_symbian_relocate_section): Pass NULL
	to _bfd_elf_merge_symbol.

	* elflink.c (_bfd_elf_merge_symbol): Use the pointer to
	unsigned int to return the alignment of the old common symbol
	in the dynamic object.
	(_bfd_elf_add_default_symbol): Pass NULL to
	_bfd_elf_merge_symbol.
	(elf_link_add_object_symbols): Pass &old_alignment to
	_bfd_elf_merge_symbol. Get the alignment of the new common
	symbol in the dynamic object.
2005-02-28 15:57:13 +00:00
Alan Modra
0c10aee68f daily update 2005-02-27 23:00:05 +00:00
Alan Modra
b413488773 daily update 2005-02-26 23:00:07 +00:00
Alan Modra
6efe8f6c8a daily update 2005-02-25 23:00:06 +00:00
Alan Modra
3d3cf61741 daily update 2005-02-24 23:00:05 +00:00
Ben Elliston
10adf131a5 * coffcode.h (coff_sym_filepos): Remove GNU960 conditional code.
* format.c (bfd_check_format_matches): Likewise.
	* archive.c (BFD_GNU960_ARMAG): Likewise.
	(bfd_generic_archive_p): Likewise.
	(_bfd_write_archive_contents): Likewise.
2005-02-24 20:16:56 +00:00
H.J. Lu
60b779bff6 2005-02-24 H.J. Lu <hongjiu.lu@intel.com>
* configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.95.
	* configure: Regenerate.
2005-02-24 15:49:46 +00:00
Julian Brown
1f02cbd9ee * elflink.c (elf_link_add_object_symbols): Force symbols in
discarded COMDAT group sections to have default visibility.
2005-02-24 15:28:56 +00:00
Alan Modra
f60ca5e351 * coffcode.h (coff_print_aux): Warning fix.
* elf-m10300.c (mn10300_elf_relax_section): Use section->id
	instead of section pointer to identify.
	* coff-h8300.c (h8300_reloc16_extra_cases): Likewise.  Allocate
	the correct size buffer for local sym mangling too.
	(h8300_bfd_link_add_symbols): Likewise.
	* elf32-sh-symbian.c (sh_symbian_process_embedded_commands): Fix
	warning.
	* elf32-sh64.c (shmedia_prepare_reloc): Use %B and %p in error message
	* elf32-xtensa.c (literal_value_hash): Warning fix.
	* versados.c (process_otr): Warning fix.
	(versados_canonicalize_reloc): Likewise.
	* vms-gsd.c (_bfd_vms_slurp_gsd): Warning fix.
	* vms.c (fill_section_ptr): Warning fix.
2005-02-24 13:34:38 +00:00
Alan Modra
949caf8935 daily update 2005-02-23 23:00:06 +00:00
H.J. Lu
9a5d8e72e5 2005-02-22 H.J. Lu <hongjiu.lu@intel.com>
* coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Defined.
	* coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Likewise.
2005-02-23 16:22:15 +00:00
Nick Clifton
abc0f8d0f2 Initialise bitfield. 2005-02-23 11:39:14 +00:00
Nick Clifton
9b69b847da (elf32_m68hc11_relocate_section): Initialise variables that are passed by
reference to m68hc11_get_relocation_value in case that function does not
initialise them.
2005-02-23 11:18:11 +00:00
Nick Clifton
90e868acaf (cr16c_elf_final_link_relocate): Remove duplicated return statements and
replace with a single return at the end of the function.  This helps pacify
the flow analysis code in gcc 4.0.
2005-02-23 09:56:44 +00:00
Nick Clifton
4b6c0f2fe9 (_bfd_elf_compute_section_file_positions): Initialise strtab to avoid compile
time warning.
2005-02-23 09:46:49 +00:00
Ben Elliston
c3e8c140a3 * opncls.c (bfd_zalloc): Document this function. 2005-02-23 03:49:41 +00:00
Alan Modra
9f36411e5c daily update 2005-02-22 23:00:07 +00:00
H.J. Lu
ebe372c1dd bfd/
2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* coffcode.h (sec_to_styp_flags): Replaced SEC_CLINK with
	SEC_TIC54X_CLINK. Replace SEC_BLOCK with SEC_TIC54X_BLOCK.
	Replace SEC_SHARED with SEC_COFF_SHARED.
	(styp_to_sec_flags): Likewise.

	* elfxx-target.h (TARGET_BIG_SYM): Remove SEC_ARCH_BIT_0.
	(TARGET_LITTLE_SYM): Likewise.

	* section.c (SEC_ARCH_BIT_0): Removed.
	(SEC_LINK_DUPLICATES_SAME_CONTENTS): Defined with
	SEC_LINK_DUPLICATES_ONE_ONLY and SEC_LINK_DUPLICATES_SAME_SIZE.
	(SEC_SHARED): Renamed to ...
	(SEC_COFF_SHARED): This.
	(SEC_BLOCK): Renamed to ...
	(SEC_TIC54X_BLOCK): This.
	(SEC_CLINK): Renamed to ...
	(SEC_TIC54X_CLINK): This.
	(SEC_XXX): Rearranged. Move SEC_COFF_SHARED_LIBRARY,
	SEC_COFF_SHARED, SEC_TIC54X_BLOCK and SEC_TIC54X_CLINK to the
	end.
	* bfd-in2.h: Regenerated.

binutils/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* objcopy.c (parse_flags): Replace SEC_SHARED with
	SEC_COFF_SHARED.

	* objdump.c (dump_section_header): Dump SEC_TIC54X_BLOCK and
	SEC_TIC54X_CLINK for TI c54x only. Remove SEC_ARCH_BIT_0. Dump
	SEC_COFF_SHARED for COFF only.

gas/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-coff.c (obj_coff_section): Replace SEC_SHARED with
	SEC_COFF_SHARED.

	* config/tc-tic54x.c (tic54x_bss): Replace SEC_BLOCK with
	SEC_TIC54X_BLOCK.
	(demand_empty_rest_of_line): Likewise.
	(tic54x_sblock): Likewise.
	(tic54x_clink): Replace with SEC_CLINK with SEC_TIC54X_CLINK.

ld/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* ldlang.c (lang_add_section): Check SEC_TIC54X_BLOCK for TI
	tic54x input only.
	(lang_size_sections_1): Check SEC_COFF_SHARED_LIBRARY for COFF
	and ECOFF output only.
2005-02-22 00:50:07 +00:00
Alan Modra
954e66ebf4 daily update 2005-02-21 23:00:05 +00:00
Fred Fish
26bf4e3302 Approved by nickc@redhat.com:
2005-02-21  Fred Fish  <fnf@specifixinc.com>
	* dwarf2.c (find_abstract_instance_name): Call recursively
	to handle a DW_AT_specification.
2005-02-21 18:00:17 +00:00
Thiemo Seufer
e6daada38b * elfxx-mips.c (ecoff_swap_rpdr_out, mips_elf_output_extsym,
mips_elf_create_dynamic_relocation,
	_bfd_mips_elf_size_dynamic_sections, _bfd_mips_elf_final_link):
	Remove #if 0'd code.
2005-02-21 13:57:56 +00:00
Alan Modra
d25604af9f bfd/
* Makefile.am: Run "make dep-am"
	* Makefile.in: Regenerate.
bfd/doc/
	* Makefile.in: Regenerate.
2005-02-21 11:48:00 +00:00
Alan Modra
fedf8d51e0 * coffgen.c (bfd_coff_get_comdat_section): Check that
coff_section_data isn't NULL.
2005-02-21 11:21:29 +00:00
Alan Modra
9307c394da daily update 2005-02-20 23:00:06 +00:00
Alan Modra
f075ee0c61 include/
* xtensa-isa-internal.h (xtensa_length_decode_fn): Warning fix.
	* xtensa-isa.h (xtensa_insnbuf_to_chars): Likewise.
	(xtensa_insnbuf_from_chars, xtensa_isa_length_from_chars): Likewise.
include/coff/
	* xcoff.h (struct xcoff_loader_info): Warning fix.
bfd/
	* bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix.
	* coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise.
	* coff-rs6000.c (xcoff_write_armap_big): Warning fixes.  Remove
	useless assignments.
	(xcoff_write_archive_contents_big): Likewise.
	(_bfd_xcoff_put_ldsymbol_name): Likewise.
	* coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
	* coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
	* cofflink.c (process_embedded_commands): Warning fixes.
	* cpu-arm.c: Delete unnecessary prototypes.  Convert to C90.
	Warning fixes.
	* dwarf2.c: Warning fixes.
	* elf-bfd.h: Likewise.
	* elf-eh-frame.c: Likewise.
	* elf-strtab.c: Likewise.
	* elf.c: Likewise.
	* elf32-m68k.c: Likewise.
	* elf32-ppc.c: Likewise.
	* elf32-sh-symbian.c: Likewise.
	* elf32-sh.c: Delete unnecessary prototypes.  Warning fixes.
	* elf64-sh64.c: Likewise.
	* peicode.h: Likewise.
	* elf64-mmix.c: Warning fixes.
	* elfcode.h: Likewise.
	* elfxx-mips.c: Likewise.
	* libbfd-in.h: Likewise.
	* libbfd.c: Likewise.
	* mach-o.c: Likewise.
	* merge.c: Likewise.
	* mmo.c: Likewise.
	* opncls.c: Likewise.
	* pef.c: Likewise.
	* srec.c: Likewise.
	* vms-hdr.c: Likewise.
	* vms-tir.c: Likewise.
	* xtensa-isa.c: Likewise.
	* xtensa-modules.c: Likewise.
	* xsym.c: Likewise.
	(pstrcmp): Use correct choice of string lengths.  Fix return value.
	(bfd_sym_module_name): Correct string length.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
2005-02-20 14:59:07 +00:00
Alan Modra
7cfe54cc1b daily update 2005-02-19 23:00:06 +00:00
Alan Modra
0fdc72dad8 daily update 2005-02-18 23:00:07 +00:00
Alan Modra
59a63098f2 daily update 2005-02-17 23:00:05 +00:00
Alexandre Oliva
68320ddb7e bfd/ChangeLog:
* elf32-frv.c (elf32_frv_relocate_section): Remove warning from
uninitialized check_segment[1] in TLSMOFF case.
Reported by Alan Modra.
(elf32_frv_relocate_section): Improve errors and warnings.
ld/testsuite/ChangeLog:
* ld-frv/fdpic-static-6.d: Update.
* ld-frv/fdpic*.d: Remove explicit -mfdpic from #as.  Update
spelling of errors and warnings.
2005-02-17 17:11:01 +00:00
Alan Modra
1808e34136 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Fix warning. 2005-02-17 12:39:17 +00:00
Alan Modra
cb82f0b5ba daily update 2005-02-16 23:00:06 +00:00
Alan Modra
7e3102a710 * mach-o.c (bfd_mach_o_scan): Don't ignore return value of
bfd_mach_o_scan_start_address.
	* elfxx-ia64.c (elfNN_ia64_relax_brl): Rewrite for 32-bit bfd_vma.
	* elfxx-mips.c: Remove unnecessary prototypes.
	(sort_dynamic_relocs_64): Abort if not BFD64.
2005-02-16 04:45:23 +00:00
Alan Modra
5ff625e975 * coff-arm.c (coff_arm_is_local_label_name): Warning fix.
* elf32-frv.c (frvfdpic_relocs_info_hash): Likewise.
	* pef.c (bfd_pef_scan): Don't ignore return value of
	bfd_pef_scan_start_address.
2005-02-16 02:38:53 +00:00
Alan Modra
92b7a70fca bfd/
* elf64-ppc.c (ppc64_elf_edit_toc): Skip toc if size is zero.
	Skip toc reloc adjust if reloc_count is zero.
ld/
	* emultempl/ppc64elf.em (ppc_create_output_section_statements): Make
	an error creating fake bfd fatal.
	(ppc_before_allocation): Continue on after errors.
	(gld${EMULATION_NAME}_finish): Likewise.
2005-02-16 02:20:13 +00:00
Alan Modra
931a3d91ab daily update 2005-02-15 23:00:06 +00:00
Maciej W. Rozycki
d6f1659387 bfd/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
	reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from
	elf_mips16_howto_table_rel.
	* elf64-mips.c (mips16_elf64_howto_table_rel): New array for
	MIPS16 REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16
	relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_elf64_howto_table_rela): New array for MIPS16 RELA
	reloc howtos.  Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16
	placeholders.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from
	mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel.
	* elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
	REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
	dst_mask.
	(mips16_gprel_reloc): Remove bit shuffling; call
	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
	and _bfd_mips16_elf_reloc_shuffle() instead.
	(mips16_reloc_map): New reloc map for MIPS16 relocs.
	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
	relocs.
	(mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from
	elf_mips16_howto_table_rela or elf_mips16_howto_table_rel.
	* elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to
	handle bit shuffling for MIPS16 relocs.
	(_bfd_mips16_elf_reloc_shuffle): Likewise.
	(_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle()
	and _bfd_mips16_elf_reloc_shuffle().
	(_bfd_mips_elf_generic_reloc): Likewise.
	(mips_elf_calculate_relocation): Likewise.  Handle R_MIPS16_HI16
	and R_MIPS16_LO16.
	(mips_elf_obtain_contents): Remove bit shuffling.
	(mips_elf_perform_relocation): Likewise; call
	_bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle()
	instead.
	(_bfd_mips_elf_relocate_section): Likewise.  Handle R_MIPS16_HI16
	and R_MIPS16_LO16.
	* elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare.
	(_bfd_mips16_elf_reloc_shuffle): Likewise.
	* reloc.c (BFD_RELOC_MIPS16_HI16): New reloc.
	(BFD_RELOC_MIPS16_HI16_S): Likewise.
	(BFD_RELOC_MIPS16_LO16): Likewise.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.

gas/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* config/tc-mips.c (reloc_needs_lo_p): Handle
	BFD_RELOC_MIPS16_HI16_S.
	(fixup_has_matching_lo_p): Handle BFD_RELOC_MIPS16_LO16.
	(append_insn): Add BFD_RELOC_MIPS16_GPREL, BFD_RELOC_MIPS16_HI16_S
	and BFD_RELOC_MIPS16_LO16 to relocs to suppress overflow
	complaints on.
	(mips16_ip): Resolve BFD_RELOC_MIPS16_HI16_S,
	BFD_RELOC_MIPS16_HI16 and BFD_RELOC_MIPS16_LO16 for constants.
	Call my_getSmallExpression() to parse percent operators.
	(percent_op_match, mips_percent_op): Separate definitions.
	(mips16_percent_op): Define percent operators for the MIPS16 mode.
	(parse_relocation): Handle the MIPS16 mode using
	mips16_percent_op.
	(md_apply_fix3): Handle BFD_RELOC_MIPS16_HI16,
	BFD_RELOC_MIPS16_HI16_S and BFD_RELOC_MIPS16_LO16.

gas/testsuite/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* gas/mips/mips16-hilo.d: New test for the R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs.
	* gas/mips/mips16-hilo-n32.d: Likewise, for the n32 ABI.
	* gas/mips/mips16-hilo.s: Source for the new tests.
	* gas/mips/mips.exp: Run the new tests.

include/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* elf/mips.h (R_MIPS16_GOT16): New reloc code.
	(R_MIPS16_CALL16): Likewise.
	(R_MIPS16_HI16): Likewise.
	(R_MIPS16_LO16): Likewise.
	(R_MIPS16_min): New fake reloc code.
	(R_MIPS16_max): Likewise.

ld/testsuite/:
2005-02-15  Nigel Stephens  <nigel@mips.com>
            Maciej W. Rozycki  <macro@mips.com>

	* ld-mips-elf/mips16-hilo.d: New test for the R_MIPS16_HI16 and
	R_MIPS16_LO16 relocs.
	* ld-mips-elf/mips16-hilo-n32.d: Likewise, for the n32 ABI.
	* ld-mips-elf/mips16-hilo.s: Auxiliary source for the new tests.
	* ld-mips-elf/mips-elf.exp: Run the new tests.
2005-02-15 19:57:54 +00:00
Jan Beulich
0ca3e4557f bfd/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* elfxx-ia64.c (ia64_howto_table): Correct strings for
	R_IA64_DTPMOD64[LM]SB.

gas/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (ia64_gen_real_reloc_type): Define and initialize
	new variables type, suffix, and width. Handle
	BFD_RELOC_IA64_DIR(32|64)[LM]SB in FUNC_LT_FPTR_RELATIVE case.
	Handle BFD_RELOC_IA64_DIR64[LM]SB in FUNC_TP_RELATIVE case. Add
	FUNC_DTP_MODULE case. Handle BFD_RELOC_IA64_DIR32[LM]SB in
	FUNC_DTP_RELATIVE case. Return incoming relocation type if
	BFD_RELOC_IA64_IPLT[LM]SB in FUNC_IPLT_RELOC case. Generate warning
	if unable to translate relocation type, using the new variables.

gas/testsuite/
2005-02-15  Jan Beulich  <jbeulich@novell.com>

	* gas/ia64/reloc.[ds]: New.
	* gas/ia64/reloc-bad.[ls]: New.
	* gas/ia64/ia64.exp: Run new tests.
2005-02-15 07:37:11 +00:00
H.J. Lu
c5509b9207 2005-02-14 H.J. Lu <hongjiu.lu@intel.com>
* elfxx-ia64.c (elfNN_ia64_relax_section): Allow relax
	backward branch in the same section.
	(elfNN_ia64_relocate_section): Inform users that the input
	section is too big to relax br instruction when overflow
	happens to R_IA64_PCREL21B, R_IA64_PCREL21BI, R_IA64_PCREL21M
	and R_IA64_PCREL21F.
2005-02-15 01:54:58 +00:00
Alan Modra
cfe3fa01fc daily update 2005-02-14 23:00:06 +00:00
Nick Clifton
5cba516c96 (elf_core_file_p): Move the call to elf_backend_object_p to allow the correct
machine to be set before processing the program headers.
2005-02-14 16:17:04 +00:00
Nick Clifton
b59a68e117 oops - omitted form previous delta 2005-02-14 11:40:18 +00:00
Nick Clifton
5c9c6a54a4 PR binutils/716
* peicode.h (pe_bfd_copy_private_bfd_data): Copy the large address aware flag
from the input bfd to the output bfd.
2005-02-14 11:20:37 +00:00
Alan Modra
b4fcd1cf10 daily update 2005-02-13 23:00:07 +00:00
Maciej W. Rozycki
05e24d226c * Makefile.am: Use CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD for
building chew.
* Makefile.in: Regenerate.
2005-02-13 21:39:47 +00:00
Alan Modra
55aa3d8e1b daily update 2005-02-12 23:00:06 +00:00
Alan Modra
0e68218d25 daily update 2005-02-11 23:00:06 +00:00