Commit Graph

5104 Commits

Author SHA1 Message Date
H.J. Lu 13ea7aae96 Mention Makefile.in in ChangeLog. 2010-08-12 17:53:17 +00:00
H.J. Lu a7e3117164 Disable -Werror on coff-tic4x.lo and coff-tic54x.lo.
2010-08-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/11909
	* Makefile.am (coff-tic4x.lo): New.  Disable -Werror.
	(coff-tic54x.lo): Likewise.
2010-08-12 17:49:42 +00:00
Nick Clifton 0883b6e07e PR ld/11843
* elflink.c (compute_bucket_count): Avoid futile long searches for
        the best bucket size.
2010-08-12 16:23:32 +00:00
Richard Henderson 891caa9bb8 PR ld/11891
* elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Disallow relaxing
        to tlshi/lo until pos0 and pos1 are adjacent.  Use the destination
        register from the tldgd insn.
2010-08-09 23:58:52 +00:00
Catherine Moore 776167e8fa 2010-08-09 Catherine Moore <clm@codesourcery.com>
* elfxx-mips.c (mips_elf_perform_relocation): Improve
        interlinking error message.

2010-08-09  Catherine Moore  <clm@codesourcery.com>

        * ld-mips-elf/mode-change-error-1.d: New.
        * ld-mips-elf/mode-change-error-1a.s: New.
        * ld-mips-elf/mode-change-error-1b.s: New.
        * ld-mips-elf/mips-elf.exp: Run new test.
2010-08-09 19:54:13 +00:00
Alan Modra d983b7a0c3 * elf64-ppc.c (ha_reloc_match): Allow matches to other than r2.
(ppc64_elf_relocate_section): Nop out high part insn of large toc
	code sequence when the high part of offset is zero.
2010-08-05 14:37:30 +00:00
Tristan Gingold 1bed7b84a2 Add a missing chunk. 2010-08-04 11:55:20 +00:00
Tristan Gingold 79326a5a88 2010-08-04 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (alpha_vms_build_fixups): Write the EICP.
	(alpha_vms_bfd_final_link): Explicitly forbid relocatable links.
	Clear the SEC_RELOC flag.
2010-08-04 10:45:51 +00:00
Tristan Gingold 5f101a3d6f 2010-08-04 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (alpha_vms_create_eisd_for_section): Make writable
	sections with relocs.
	(alpha_vms_add_fixup_lp): Set SEC_RELOC flag.
	(alpha_vms_add_fixup_ca): Ditto.
	(alpha_vms_add_fixup_qr): Ditto.
	Add comments.
2010-08-04 10:22:14 +00:00
Tristan Gingold 2e09dbaeac 2010-08-04 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (alpha_vms_create_eisd_for_section): Do not make
	CODE sections writable.
2010-08-04 08:44:07 +00:00
Tristan Gingold 5369db0a6f 2010-08-04 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (alpha_vms_add_lw_fixup): Renamed to ...
	(alpha_vms_add_fixup_lr): ... this for consistency.
	(alpha_vms_add_qw_fixup): Removed.
	Fix some comments.
	(vms_get_symbol_info): Adjust type for unknown sections.
2010-08-04 08:20:57 +00:00
Tristan Gingold 21e003e806 2010-08-04 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (_bfd_vms_slurp_egsd): Use the canonical absolute
	section for any absolute section.  Remove some debugging code.
2010-08-04 07:50:40 +00:00
DJ Delorie e1be4b136f * elf32-m32c.c (ELF_MAXPAGESIZE): Change page size to 256 bytes. 2010-08-04 03:42:45 +00:00
Tristan Gingold bfea910e97 2010-08-03 Tristan Gingold <gingold@adacore.com>
* vms-misc.c (vms_convert_to_var): Make it static.
	(_bfd_vms_convert_to_var_unix_filename): Make it public.
2010-08-03 15:18:51 +00:00
Tristan Gingold 1222b29101 bfd/
2010-08-03  Tristan Gingold  <gingold@adacore.com>

	* makefile.vms (OBJS): Update list.

gas/
Index: gas/ChangeLog
2010-08-03  Tristan Gingold  <gingold@adacore.com>

	* makefile.vms (OBJS): Add Add compress-debug.c.
2010-08-03 14:29:00 +00:00
Tristan Gingold 5621317228 2010-08-03 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (_bfd_vms_slurp_egsd): Do not set SEC_HAS_CONTENTS
	nor SEC_RELOC for empty sections.
2010-08-03 09:26:30 +00:00
Tristan Gingold d833fa0d58 2010-08-03 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (evax_section_flags): Fix flags for absolute
	section.  Remove useless parenthesis.
2010-08-03 09:21:09 +00:00
Tristan Gingold 22b6a042aa 2010-08-03 Tristan Gingold <gingold@adacore.com>
* vms-lib.c (vms_lib_bread_raw): Change type of BUF argument.
	(vms_lib_bread, vms_lib_bopen): Adjust.
2010-08-03 08:49:01 +00:00
Alan Modra 85cfcbfb1a PR 11866
* elf.c (assign_file_positions_for_load_sections): Use p_vaddr to
	calculate off_adjust rather than first section vma.
2010-08-02 10:08:02 +00:00
H.J. Lu b20dd2ce19 Add ATTRIBUTE_UNUSED to info in compute_bucket_count.
2010-07-30  H.J. Lu  <hongjiu.lu@intel.com>

	* elflink.c (compute_bucket_count): Add ATTRIBUTE_UNUSED to info.
2010-07-30 16:29:58 +00:00
Anthony Green e95c64cb3b Add moxie-rtems support 2010-07-30 07:32:18 +00:00
Alan Modra d62b368413 * elf64-ppc.c (ppc64_elf_edit_toc): Always adjust local syms in
.toc section, even when none are used in relocs.
2010-07-29 07:35:58 +00:00
Maciej W. Rozycki 9684f07814 * elfxx-mips.h: Include "elf/mips.h".
(gprel16_reloc_p): New static inline function.
	* elfxx-mips.c (_bfd_mips_elf_check_relocs)
	[R_MIPS16_GOT16, R_MIPS_GOT16, R_MIPS_GOT_HI16, R_MIPS_GOT_LO16]:
	Use got16_reloc_p.
	(_bfd_mips_elf_relocate_section)[bfd_reloc_overflow]: Use
	gprel16_reloc_p.
	* elf32-mips.c (mips_info_to_howto_rel): Likewise.
	* elfn32-mips.c (mips_info_to_howto_rel): Likewise.
2010-07-27 21:18:52 +00:00
Maciej W. Rozycki 2b2c11bd2d Fix up last ChangeLog entry in gas/ and bfd/. 2010-07-27 21:14:49 +00:00
Nick Clifton 1cd986c585 Add support for v850E2 and v850E2V3 2010-07-23 14:52:54 +00:00
Alan Modra 21fd2dbd9c * archive.c (_bfd_archive_bsd44_construct_extended_name_table):
Correct format specifier.
2010-07-22 14:48:54 +00:00
Alan Modra c6a3cf87fb * ecoff.c: Don't include aout/ranlib.h.
(_bfd_ecoff_slurp_armap): Use correct struct for ardata->symdefs.
	(_bfd_ecoff_write_armap): Output ar_date and ar_size using
	_bfd_ar_spacepad.
2010-07-22 14:29:15 +00:00
Alan Modra 4c1534c7a2 * aoutx.h (some_aout_object_p): Don't set EXEC_P for files with
relocs.
2010-07-22 14:07:10 +00:00
Alan Modra f463846733 include/elf/
* internal.h (ELF_TBSS_SPECIAL): New macro, extracted from..
	(ELF_SECTION_SIZE): ..here.
	(ELF_SECTION_IN_SEGMENT_1): Add "strict" arg.
	(ELF_SECTION_IN_SEGMENT_STRICT): New macro.
bfd/
	* elf.c (assign_file_positions_for_load_sections): Check that
	zero size sections are allocated in segments too.
	(assign_file_positions_for_non_load_sections): Warn if zero
	size alloc sections are found here.
	(copy_elf_program_header): Don't drop zero size sections from
	segment map.
	(copy_private_bfd_data): Check for changes in zero size sections.
binutils/
	* readelf.c (process_program_headers): Don't ignore all zero size
	sections.
ld/testsuite/
	* ld-powerpc/tlsexe.r: Update.
	* ld-powerpc/tlsexetoc.r: Update.
	* ld-powerpc/tlsso.r: Update.
	* ld-powerpc/tlstocso.r: Update.
2010-07-20 14:08:32 +00:00
Alan Modra b559959291 * elf.c (_bfd_elf_map_sections_to_segments): Force new segment
for sections with overlapping LMAs.
	(assign_file_positions_for_load_sections): Catch overlap for
	sections that wrap around the address space.  Replace a
	warning that duplicates ld's --check-sections error with a
	warning that lma has been adjusted for overlapping sections.
2010-07-17 03:10:50 +00:00
Cary Coutant 8c2ccebd6b PR ld/11817
* dwarf2.c (read_section): Revert patch for compressed debug sections.
	(find_line): Likewise.
	(read_and_uncompress_section): Remove.
2010-07-14 22:18:07 +00:00
H.J. Lu a7b16ceb92 Don't allocate .got.plt section if there are no GOT nor PLT entries.
bfd/

2010-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11812
	* elf32-i386.c (elf_i386_size_dynamic_sections): Don't
	 allocate .got.plt section if there are no GOT nor PLT
	 entries.
	 * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise.

ld/testsuite/

2010-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11812
	* ld-elf/exclude3b.d: Don't run on ia64-*-*.  Replace .got with
	.dynamic.

	* ld-elf/exclude3d.d: New.
	* ld-i386/nogot1.d: Likewise.
	* ld-i386/nogot1.s: Likewise.
	* ld-x86-64/nogot1.d: Likewise.
	* ld-x86-64/nogot1.s: Likewise.

	* ld-i386/i386.exp: Run nogot1.
	* ld-x86-64/x86-64.exp: Likewise.
2010-07-14 00:30:57 +00:00
H.J. Lu bb1cb422ae Support garbage collection against STT_GNU_IFUNC symbols.
bfd/

2010-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11791
	* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Support
	garbage collection against STT_GNU_IFUNC symbols.

	* elf32-i386.c (elf_i386_get_local_sym_hash): Don't set
	elf.plt.offset/elf.got.offset to -1.
	(elf_i386_tls_transition): Skip TLS transition for functions.
	(elf_i386_gc_sweep_hook): Support STT_GNU_IFUNC symbols.

	* elf64-x86-64.c (elf64_x86_64_get_local_sym_hash): Don't set
	elf.plt.offset/elf.got.offset to -1.
	(elf64_x86_64_tls_transition): Skip TLS transition for functions.
	(elf64_x86_64_gc_sweep_hook): Support STT_GNU_IFUNC symbols.

ld/testsuite/

2010-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11791
	* ld-ifunc/ifunc-10-i386.d: New.
	* ld-ifunc/ifunc-10-i386.s: Likewise.
	* ld-ifunc/ifunc-10-x86-64.d: Likewise.
	* ld-ifunc/ifunc-10-x86-64.s: Likewise.
	* ld-ifunc/ifunc-11-i386.d: Likewise.
	* ld-ifunc/ifunc-11-i386.s: Likewise.
	* ld-ifunc/ifunc-11-x86-64.d: Likewise.
	* ld-ifunc/ifunc-11-x86-64.s: Likewise.
2010-07-13 16:59:14 +00:00
H.J. Lu 9fff0c3957 Re-indent elf32-i386.c.
2010-07-12  H.J. Lu  <hongjiu.lu@intel.com>

	* elf32-i386.c (elf_i386_check_relocs): Re-indent.
	(elf_i386_relocate_section): Likewise.
2010-07-12 21:13:24 +00:00
H.J. Lu f5296ddc5e Initialize prev_line.
2010-07-06  H.J. Lu  <hongjiu.lu@intel.com>

	* dwarf2.c (add_line_info): Initialize prev_line.
2010-07-06 21:13:57 +00:00
Alan Modra 50248c890f bfd/
* elf32-ppc.c (ppc_elf_relax_section): Insert branch around
	trampolines only for .init and .fini sections.
ld/testsuite/
	* ld-powerpc/relax.s: Add branch back to _start.
	* ld-powerpc/relax.d: Update.
	* ld-powerpc/relaxr.d: Update.
2010-07-06 09:29:47 +00:00
Alan Modra 5b9144488e * elf32-ppc.c: Formatting.
(ppc_elf_finish_dynamic_sections): Don't make plt_entry var static.
2010-07-05 13:34:27 +00:00
Cary Coutant 0acf065b19 bfd/ChangeLog:
* compress.c (bfd_uncompress_section_contents): Add ATTRIBUTE_UNUSED.
	* dwarf2.c (read_and_uncompress_section): New function.
	(read_section): Call it.
	(find_line): Likewise.

binutils/ChangeLog:

	* objdump.c (load_specific_debug_section): Decompress section contents
	before applying relocations.
	* readelf.c (load_specific_debug_section): Update section size after
	decompression.

gas/ChangeLog:

	* Makefile.am: Add compress-debug.c and compress-debug.h.
	* Makefile.in: Regenerate.
	* config.in: Add HAVE_ZLIB_H.
	* configure.in: Check for zlib.h.
	* configure: Regenerate.

	* as.c (parse_args): Add --compress-debug-sections and
	--nocompress-debug-sections.
	* as.h (flag_compress_debug): New variable.
	* compress-debug.c: New file.
	* compress-debug.h: New file.
	* write.c: Include compress-debug.h.
	(compress_frag): New function.
	(compress_debug): New function.
	(write_object_file): Compress debug sections if requested.
2010-07-03 20:52:24 +00:00
Alan Modra 726d3ab069 * elf64-ppc.c (ppc64_elf_edit_toc): Use SYMBOL_CALLS_LOCAL rather
than SYMBOL_REFERENCES_LOCAL.
	(ppc64_elf_relocate_section): Likewise.
2010-07-01 09:48:26 +00:00
Alan Modra bddc25c9ca * elf64-ppc.c (ppc64_elf_edit_toc): Keep toc entries for ifuncs. 2010-07-01 04:12:29 +00:00
Alan Modra 360cfc9c8b remove maxq-coff port 2010-06-29 04:17:34 +00:00
Alan Modra 3f062f4418 * compress.c (bfd_uncompress_section_contents): Use ATTRIBUTE_UNUSED
to silence gcc warning.
2010-06-28 14:41:11 +00:00
Alan Modra 6bee8834bf * elf64-ppc.c (get_tls_mask): Don't segfault on NULL elf_section_data.
(group_sections): Likewise.
2010-06-27 08:37:22 +00:00
Alan Modra c7e2358a88 fix set but unused variable warnings 2010-06-27 04:07:55 +00:00
Tristan Gingold 4ba2ab9fc3 2010-06-25 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (_bfd_vms_write_egsd): Check absolute section with
	its flags.  Create an absolute section if needed.
2010-06-25 15:37:43 +00:00
Tristan Gingold 1b3d1dbfad 2010-06-25 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (_bfd_vms_write_egsd): Set target_index field of
	sections.  Mark .vmsdebug section as SEC_DEBUGGING.  Do not create
	dummy psect anymore.  Adjust.
	(_bfd_vms_write_eeom): Adjust (use target_index instead of index)
	(_bfd_vms_write_etir): Ditto.
	(start_etir_or_etbt_record): Test for SEC_DEBUGGING instead of
	section name.  Adjust.
2010-06-25 15:21:48 +00:00
Tristan Gingold 9714ee4866 2010-06-25 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (alpha_vms_write_exec): Set linktime field.
2010-06-25 14:54:19 +00:00
Alan Modra ba761f19f5 include/elf/
* ppc64.h (R_PPC64_LO_DS_OPT): Define.
bfd/
	* elf64-ppc.c (toc_skip_enum): Define.
	(ppc64_elf_edit_toc): Use two low bits of skip array as markers.
	Optimize largetoc sequences.
	(adjust_toc_syms): Update for skip array change.
	(ppc64_elf_relocate_section): Handle R_PPC64_LO_DS_OPT.
ld/
	* emultempl/ppc64elf.em (prelim_size_sections): New function.
	(ppc_before_allocation): Use it.  Size sections before toc edit too.
2010-06-25 05:20:57 +00:00
Alan Modra 854b41e7c1 * elf64-ppc.c (is_static_defined): New function.
(get_tls_mask, ppc_type_of_stub): Use it here.
	(ppc64_elf_edit_opd): Ensure we only attempt to edit ppc64 input.
	(ppc64_elf_tls_setup): Typo fix.
	(adjust_toc_syms): Correctly handle symbols defined past the end
	of the toc.  Move syms on removed entries to next entry rather
	than to start of toc.
	(ppc64_elf_edit_toc): Likewise.  Ensure we only attempt to
	edit ppc64 input.  Allocate one extra word in skip array.
	Honour info->keep_memory when reading relocs if we can.
	Adjust toc relocs after adjusting symbols.
2010-06-25 03:46:04 +00:00
Nathan Sidwell 61e8a5ea17 * archive64.c (bfd_elf64_archive_write_armap): Fix buffer overrun
when scaning map.
2010-06-23 10:21:16 +00:00