binutils-gdb/ld/ChangeLog

534 lines
18 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config.in: Regenerate.
* configure: Regenerate.
2008-06-17 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em (extra_stack_space): New variable.
(gld${EMULATION_NAME}_finish): Pass it to spu_elf_check_vma.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
PARSE_AND_LIST_ARGS_CASES): Handle --extra-stack-space.
* emultempl/spu_ovl.S: Mask interrupts during dma and update of
overlay manager structures.
* emultempl/spu_ovl.o: Regenerate.
2008-06-16 Hans-Peter Nilsson <hp@bitrange.com>
* ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, only
mention it as being special for global symbols.
2008-06-12 Nick Clifton <nickc@redhat.com>
* ldlang.c (print_output_section_statement): If the output section
statement has an update_dot_tree expression, apply it to
print_dot.
(print_input_section): Do not update print_dot if it would move
print_dot backwards.
(lang_do_assignments_1): If the output section statement has an
update_dot_tree expression apply it to dot.
2008-06-07 Alan Modra <amodra@bigpond.net.au>
* NEWS: Mention archive:path patterns.
* ld.texinfo: Likewise.
* ldlang.c: Formatting throughout.
(archive_path): Only assume "[A-Za-z]:" is a dos drive.
(input_statement_is_archive_path): New function, extracted from..
(walk_wild): ..here.
(walk_wild_consider_section): Match archive:path here too.
(init_map_userdata, sort_def_symbol): Convert to ISO C.
* ldmain.c (main): Set link_info.path_separator.
* emultempl/spuelf.em (choose_target): Don't set it here.
2008-06-06 Alan Modra <amodra@bigpond.net.au>
* ldlang.c (name_match): New function.
(unique_section_p, walk_wild_consider_section): Use it here.
(walk_wild_section_general): And here.
(archive_path): New function.
(walk_wild): Match archive:path filespecs.
(open_input_bfds): Don't load archive:path files.
* emultempl/spuelf.em (choose_target): Set path_separator.
* emulparams/elf32_spu.sh: Add ._ea.* sections to ._ea output.
2008-06-04 Nick Clifton <nickc@redhat.com>
* ld.texinfo (Orphan Sections): Fix texi typo.
2008-06-04 Chris Metcalf <cmetcalf@tilera.com>
* lexsup.c (option_values): Add OPTION_NO_WARN_FATAL.
(ld_options): Add entry for --no-fatal-warnings.
(parse_args): Handle OPTION_NO_WARN_FATAL.
* ld.texinfo (Options): Document new command line switch.
2008-06-04 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
2008-06-02 Nathan Sidwell <nathan@codesourcery.com>
* ldlang.c (closest_target_match): Skip generic big and little
endian ELF targets.
2008-05-31 Evandro Menezes <evandro@yahoo.com>
PR ld/6430
* ld.h (enum sort_order): New.
* ldlang.c (lang_check: Fix comment.
(lang_common): Sort commons in ascending or descending order.
(lang_one_common): Likewise.
* lexsup.c (ld_options): Have --sort-common take an option
argument.
(parse_args): Handle argument to --sort-common.
* ld.texinfo (--sort-common): Document new optional argument.
* NEWS: Mention new feature.
2008-05-28 Christophe Lyon <christophe.lyon@st.com>
* ld.texinfo: State that farcalls stubs are supported for ARM-EABI
only.
2008-05-27 Kai Tietz <kai.tietz@onevision.com>
* pe-dll.c (fill_edata): Make sure we calculate vma's in
type bfd_vma.
(generate_reloc): Likewise.
(pe_implied_import_dll): Likewise.
2008-05-21 Nick Clifton <nickc@redhat.com>
PR ld/6519
* ld.texinfo (Orphan Sections): Mention that the linker will
provide start and stop symbols for orphaned sections if their
names are valid C identifiers.
* NEWS: Add an addendum to the description of the linker feature
for providing orphan section start and end symbols.
2008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
* configure.in (--enable-got): New option. Handle it.
* configure: Regenerate.
* config.in: Regenerate.
* emultempl/m68kelf.em: (got_handling_target_default): New shell
variable.
(GOT_HANDLING_TARGET_DEFAULT): New macro.
(GOT_HANDLING_DEFAULT): New macro. Initialize it from configure
option if one was given.
(got_handling): New static variable.
(elf_m68k_create_output_section_statements): New static function
implementing hook.
(PARSE_AND_LIST_PROLOGUE): Define shell variable.
(OPTION_GOT): New macro.
(PARSE_AND_LIST_LONGOPTS): Define shell variable. Specify
--got option.
(got): New linker option.
(PARSE_AND_LIST_OPTIONS): Define shell variable. Print help string
for --got option.
(PARSE_AND_LIST_ARGS_CASES): Define shell variable. Handle --got
option.
* ld.texinfo: Document --got=<type> option.
* gen-doc.texi: Add M68K.
* NEWS: Mention the new feature.
2008-05-21 Evandro Menezes <evandro@yahoo.com>
PR ld/6430
* ld.texinfo (--sort-common): Correct documentation to indicate
that sorting is performed by alignment, not size, biggest
alignment first.
2008-05-21 Christophe Lyon <christophe.lyon@st.com>
Nick Clifton <nickc@redhat.com>
* ld.texinfo (ARM): Document --stub-group-size=N option.
Move description of --pic-veneer option into the ARM section.
* NEWS: Mention the support for long function calls.
2008-05-15 Christophe Lyon <christophe.lyon@st.com>
* emultempl/armelf.em (build_section_lists): New function.
(stub_file): Define.
(need_laying_out): Define.
(group_size): Define.
(hook_stub_info): Define.
(hook_in_stub): New function.
(elf32_arm_add_stub_section): New function.
(gldarm_layout_sections_again): New function.
(gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
stubs for long calls if needed.
(arm_elf_create_output_section_statements): create stub_file bfd.
(arm_for_each_input_file_wrapper): New function.
(arm_lang_for_each_input_file): New function.
(lang_for_each_input_file): Define.
(PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
(PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
(PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
(LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
* lang.c (print_input_statement): Skip if bfd has
BFD_LINKER_CREATED.
2008-05-14 Alan Modra <amodra@bigpond.net.au>
* Makefile.in: Regenerate.
2008-05-09 Kai Tietz <kai.tietz@onevision.com>
ld/PR6502
* emultempl/pep.em (compute_dll_image_base): Use bfd_vma instead
of long and change return type to bfd_vma.
(definfo): Change type of address from long to bfd_vma.
(set_pep_value): Replace strtoul to strtoull.
(gld_${EMULATION_NAME}_set_symbols): use bfd_vma instead of long..
* pe-dll.c (pe_dll_generate_def_file): Use fprintf_vma to print
ImageBase.
(quick_reloc): Change argument address from int to bfd_size_type.
2008-05-08 Tom Tromey <tromey@redhat.com>
* ld.texinfo (PowerPC64 ELF64): Fix typo.
2008-05-08 Alan Modra <amodra@bigpond.net.au>
* elf32_spu.sh (OTHER_SECTIONS): Add "._ea".
* elf32ppc.sh: If building with spu support, put ".data.spehandle"
sections at the start of ".data" and provide a symbol to locate
the directory of embedded spe programs.
2008-05-08 Alan Modra <amodra@bigpond.net.au>
* ldexp.c (exp_print_token): Add ABSOLUTE, MIN_K, ASSERT_K. Correct
MAX_K.
(fold_binary <SEGMENT_START>): Set expld.result.section to
current section. Expand comment. Formatting.
(fold_name <DEFINED>): Set expld.result.section to current section.
2008-04-28 Nathan Sidwell <nathan@codesourcery.com>
* ldlang.c (lang_size_sections_1): Don't check LMA overflow on
non-load sections.
2008-04-25 Michael Frysinger <vapier@gentoo.org>
* configure.tgt (bfin-*-linux-uclibc*): Set targ_emul to elf32bfinfd
and targ_extra_emuls to elf32bfin.
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
2008-04-03 Kai Tietz <kai.tietz@onevision.com>
* scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
2008-04-08 Alan Modra <amodra@bigpond.net.au>
* po/POTFILES.in: Regenerate.
2008-04-08 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em (auto_overlay, auto_overlay_file,
auto_overlay_fixed, auto_overlay_reserved, my_argc, my_argv): New vars.
(spu_before_allocation): Warn on --auto-overlay and existing overlays.
(struct tflist, clean_tmp): Move.
(new_tmp_file): New function, extracted from..
(embedded_spu_file): ..here.
(spu_elf_open_overlay_script, spu_elf_relink): New function.
(gld${EMULATION_NAME}_finish): Pass a bunch of --auto-overlay params.
Warn on --auto-overlay and zero local store.
(gld${EMULATION_NAME}_choose_target): New function to stash argv.
(OPTION_SPU_AUTO_OVERLAY, OPTION_SPU_AUTO_RELINK,
OPTION_SPU_OVERLAY_RODATA, OPTION_SPU_FIXED_SPACE,
OPTION_SPU_RESERVED_SPACE, OPTION_SPU_NO_AUTO_OVERLAY): Define.
(PARSE_AND_LIST_LONGOPTS): Add entries for new options.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Likewise.
(LDEMUL_CHOOSE_TARGET): Define.
2008-04-03 Kai Tietz <kai.tietz@onevision.com>
PR ld/6026
* pe-dll.c (make_head): Fix iat and thunk addend offset.
2008-03-31 Nick Clifton <nickc@redhat.com>
* po/fr.po: Updated French translation.
2008-03-24 Ian Lance Taylor <iant@google.com>
The sha1 code is now in libiberty.
* sha1.c: Remove.
* sha1.h: Remove.
* Makefile.am (CFILES): Remove sha1.c.
(HFILES): Remove sha1.h.
(OFILES): Remove sha1.o.
(ld_new_SOURCES): Remove sha1.c.
(sha1.o): Remove target.
* Makefile.in: Rebuild.
2008-03-20 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em: Update calls to elf32-spu.c funcs.
2008-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
2008-03-14 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect
spu_elf_build_stubs with is_spu_target.
2008-03-13 Alan Modra <amodra@bigpond.net.au>
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
* configure: Regenerate.
2008-03-06 Joseph Myers <joseph@codesourcery.com>
Roman Zippel <zippel@linux-m68k.org>
* emulparams/m68kelf.sh (GENERATE_PIE_SCRIPT): Define.
(COMMONPAGESIZE): Define.
2008-02-22 Nick Clifton <nickc@redhat.com>
PR ld/5785
* ldlang.c (lang_size_sections_1): Honour the setting of an
lma_region even if there is no vma region set, or the vma region
is the same as the lma region.
2008-02-18 Nick Clifton <nickc@redhat.com>
* scripttempl/armbpabi.sc (ENTRY): Do not define when performing a
relocatable link.
* scripttempl/elf32cr16.sc: Likewise.
* scripttempl/elf32cr16c.sc: Likewise.
* scripttempl/elf32crx.sc: Likewise.
* scripttempl/elf32sh-symbian.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfd10v.sc: Likewise.
* scripttempl/elfi370.sc: Likewise.
* scripttempl/elfm68hc11.sc: Likewise.
* scripttempl/elfm68hc12.sc: Likewise.
* scripttempl/ip2k.sc: Likewise.
* scripttempl/iq2000.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/v850.sc: Likewise.
* scripttempl/xstormy16.sc: Likewise.
2008-02-16 Alan Modra <amodra@bigpond.net.au>
PR ld/5761
* ldexp.c (fold_name <LOADADDR>): Check result of evaluating
load_base before calling make_abs.
2008-02-15 Alan Modra <amodra@bigpond.net.au>
* emultempl/alphaelf.em (alpha_after_open): Use elf_object_id.
* emultempl/hppaelf.em (hppaelf_create_output_section_statements):
Likewise.
* emultempl/ppc64elf.em (ppc_create_output_section_statements):
Likewise.
* emultempl/ppc32elf.em (is_ppc_elf32_vec): Delete. Replace all
uses with..
(is_ppc_elf): ..this new macro.
2008-02-15 Alan Modra <amodra@bigpond.net.au>
* ldmain.h (output_bfd): Delete.
* ldmain.c (output_bfd): Delete.
Replace all occurrences of output_bfd with link_info.output_bfd.
* ldcref.c: Likewise.
* ldctor.c: Likewise.
* ldemul.c: Likewise.
* ldexp.c: Likewise.
* ldfile.c: Likewise.
* ldlang.c: Likewise.
* ldmisc.c: Likewise.
* ldwrite.c: Likewise.
* pe-dll.c: Likewise.
* emultempl/aix.em: Likewise.
* emultempl/alphaelf.em: Likewise.
* emultempl/armcoff.em: Likewise.
* emultempl/armelf.em: Likewise.
* emultempl/avrelf.em: Likewise.
* emultempl/beos.em: Likewise.
* emultempl/elf-generic.em: Likewise.
* emultempl/elf32.em: Likewise.
* emultempl/gld960.em: Likewise.
* emultempl/hppaelf.em: Likewise.
* emultempl/irix.em: Likewise.
* emultempl/linux.em: Likewise.
* emultempl/lnk960.em: Likewise.
* emultempl/m68hc1xelf.em: Likewise.
* emultempl/mmix-elfnmmo.em: Likewise.
* emultempl/mmo.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/pep.em: Likewise.
* emultempl/ppc32elf.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/scoreelf.em: Likewise.
* emultempl/sh64elf.em: Likewise.
* emultempl/spuelf.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/vanilla.em: Likewise.
* emultempl/vxworks.em: Likewise.
* emultempl/xtensaelf.em: Likewise.
* emultempl/z80.em: Likewise.
* ldlang.c (open_output): Don't return output, instead write
link_info_output_bfd directly.
* emultempl/alphaelf.em: Replace occurrences of link_info.hash->creator
with link_info.output_bfd->xvec.
* emultempl/hppaelf.em: Likewise.
* emultempl/ppc32elf.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/spuelf.em: Likewise.
2008-02-07 Alan Modra <amodra@bigpond.net.au>
* ldlang.c (new_afile): Don't pass unadorned NULL to concat.
* ldfile.c (ldfile_add_library_path): Likewise.
* emultempl/elf32.em (check_ld_elf_hints, check_ld_so_conf): Likewise.
* emultempl/lnk960.em (lnk960_before_parse): Likewise.
* emultempl/spuelf.em (embedded_spu_file): Likewise.
2008-02-07 Alan Modra <amodra@bigpond.net.au>
* emultempl/spu_ovl.S: Use low bit of _ovly_table.size as
a "present" bit rather than low bit of .buf. Correct indexing
into _ovly_buf_table. Use relative loads and stores to access
overlay manager local vars.
* emultempl/spu_ovl.o: Regenerate.
2008-02-04 H.J. Lu <hongjiu.lu@intel.com>
PR 5715
* configure: Regenerated.
2008-01-31 Marc Gauthier <marc@tensilica.com>
* configure.tgt (xtensa*-*-*): Recognize processor variants.
2008-01-28 Fabian Groffen <grobian@gentoo.org>
* configure.tgt (x86_64-*-solaris2): Add support for this target.
2008-01-28 Vincent Riviere <vincent.riviere@freesbee.fr>
PR ld/5652
* genscripts.sh: Check for the existence of BASH_LINENO not just
the BASH shell before generating line numbers in the emulation
file.
2008-01-28 Alan Modra <amodra@bigpond.net.au>
* emultempl/spu_ovl.S: Rewrite.
* emultempl/spu_ovl.o: Regenerate.
* emultempl/spuelf.em (toe): Delete.
(spu_place_special_section): Add param to control section placement.
Adjust callers.
(spu_elf_load_ovl_mgr): Adjust for struct _spu_elf_section_data
changes.
(spu_before_allocation): Adjust spu_elf_size_stubs call.
(gld${EMULATION_NAME}_finish): Adjust spu_elf_build_stubs call.
2008-01-25 H.J. Lu <hongjiu.lu@intel.com>
PR ld/5670
* ldlang.c (process_insert_statements): Silence gcc 4.1 alias
warning.
2008-01-25 Alan Modra <amodra@bigpond.net.au>
* ld.texinfo (INSERT): Describe.
* ldgram.y (ldgram_in_script, ldgram_had_equals): Delete.
(INSERT_K, AFTER, BEFORE): Add as tokens.
(ifile_p1): Handle INSERT statements.
(saved_script_handle, force_make_executable): Move to..
* ldmain.c: ..here.
(previous_script_handle): New global var.
* ldmain.h (saved_script_handle, force_make_executable): Declare.
(previous_script_handle): Likewise.
* ldlex.l (INSERT_K, AFTER, BEFORE): Add tokens.
* lexsup.c (parge_args <-T>): Set previous_script_handle.
* ldlang.c (lang_for_each_statement_worker): Handle insert statement.
(map_input_to_output_sections, print_statement): Likewise.
(lang_size_sections_1, lang_do_assignments_1): Likewise.
(insert_os_after): New function, extracted from..
(lang_insert_orphan): ..here.
(process_insert_statements): New function.
(lang_process): Call it.
(lang_add_insert): New function.
* ldlang.h (lang_insert_statement_enum): New.
(lang_insert_statement_type): New.
(lang_statement_union_type): Add insert_statement.
(lang_add_insert): Declare.
2008-01-18 Bob Wilson <bob.wilson@acm.org>
* scripttempl/elfxtensa.sc: Merge ENTRY and .note.gnu.build-id
changes from elf.sc.
2008-01-16 Alan Modra <amodra@bigpond.net.au>
* ldlang.c (lang_size_sections_1): Simplify SEC_NEVER_LOAD test.
2008-01-16 Alan Modra <amodra@bigpond.net.au>
* ldlang.h (lang_afile_asection_pair_statement_enum): Delete.
(lang_afile_asection_pair_statement_type): Delete.
(lang_statement_union_type): Delete afile_asection_pair_statement.
* ldlang.c (lang_insert_orphan): Delete case handling the above.
(map_input_to_output_sections, print_statement): Likewise.
2008-01-15 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* emulparams/shlelf_linux.sh (DATA_START_SYMBOLS): Use PROVIDE
with __data_start.
* emulparams/shelf_nbsd.sh (DATA_START_SYMBOLS): Likewise.
2008-01-15 Alan Modra <amodra@bigpond.net.au>
PR 5604
* ldlang.c (lang_gc_sections): Move code to set SEC_KEEP on entry
syms to _bfd_elf_gc_keep.
* emultempl/ppc64elf.em (ppc_before_allocation): Don't call
ppc64_elf_edit_opd if no_opd_opt.
2008-01-11 Tristan Gingold <gingold@adacore.com>
Eric Botcazou <ebotcazou@adacore.com>
* ldlang.c (lang_end): Warns if the entry point is not found when
--gc-sections.
Emit an error if no root is specified when --gc-sections -r.
* ld.texinfo (Options): Document that --gc-sections is compatible
with -r and -q.
* ldmain.c (main): Do not error out if -r and --gc-sections.
* scripttempl/elf.sc: Emit ENTRY command only if relocating.
2008-01-10 Daniel Jacobowitz <drow@sources.redhat.com>
PR ld/5533
* ldlang.c (lang_end): Issue a warning for a missing start symbol
of a shared library if the symbol was specified on the command
line.
2008-01-10 Alan Modra <amodra@bigpond.net.au>
* ld.texinfo (--gc-sections): Describe linker behaviour.
For older changes see ChangeLog-2007
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End: