X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=ld%2FChangeLog;h=91bae6728e0f47c50367fe62f90111690024ed1f;hb=8c6845782707f98080fa789050c9d70afadb1842;hp=2ffe3976dc82aa9fc9ac9cc2a8d60ede8c653cba;hpb=c4e9ac527d6914f6b2486d6d60967c119a1f57c8;p=deliverable%2Fbinutils-gdb.git diff --git a/ld/ChangeLog b/ld/ChangeLog index 2ffe3976dc..91bae6728e 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,1050 +1,583 @@ -2007-09-08 Alan Modra +2008-07-12 Jie Zhang - * ldwrite.c (build_link_order ): Correct - condition under which we build a bfd_data_link_order. - -2007-08-31 Tristan Gingold - - * ldlang.c (lang_map): Increment lang_statement_iteration so that - DEFINED() expressions are correctly computed. - -2007-08-31 Alan Modra - - * ldlang.c (lang_record_phdrs): Give a fatal error if no sections - assigned to phdrs. Avoid multiple forward scans for a section - with phdr assignment. - -2007-08-28 Mark Shinwell - Joseph Myers - - * ldlang.c (sort_sections_by_lma): Sort by internal id after lma - for stable sort. - -2007-08-28 Robert Sebastian Gerus - - * configure.host: Add support for i[3-7]86-*-dragonfly*. - * configure.tgt: Likewise. - -2007-08-18 Alan Modra - - * ld.texinfo (Input Section Basics): Correct EXCLUDE_FILE example. - -2007-08-17 Jakub Jelinek - - * configure.host: Handle sparcv*-*-linux-* the same as - sparc-*-linux-*. Change sparc64-*-linux-* to sparc64*-*-linux-*. - -2007-08-17 Alan Modra - - * emultempl/alphaelf.em: Format option help. - * emultempl/armcoff.em: Likewise. - * emultempl/armelf.em: Likewise. - * emultempl/avrelf.em: Likewise. - * emultempl/elf32.em: Likewise. - * emultempl/hppaelf.em: Likewise. - * emultempl/ia64elf.em: Likewise. - * emultempl/m68hc1xelf.em: Likewise. - * emultempl/ppc32elf.em: Likewise. - * emultempl/ppc64elf.em: Likewise. - * emultempl/scoreelf.em: Likewise. - * emultempl/spuelf.em: Likewise. - * emultempl/ticoff.em: Likewise. - * emultempl/vxworks.em: Likewise. - * emultempl/xtensaelf.em: Likewise. - -2007-08-17 Alan Modra - - * ldexp.c (exp_get_vma, exp_get_fill): Canonicalise error messages. - * lexsup.c (ld_options): Don't use tabs in help text. - * emultempl/armcoff.em (gld${EMULATION_NAME}_finish): Fix typo. - * emultempl/pe.em (gld${EMULATION_NAME}_finish): Fix typo. - -2007-08-17 Alan Modra - - * po/Make-in: Add --msgid-bugs-address to xgettext invocation. - -2007-08-15 Alan Modra - - PR 4923 - * emultempl/elf32.em (after_open): Return immediately when - non-ELF output. - -2007-08-12 Daniel Jacobowitz - - * configure.in (ALL_LINGUAS): Add fi. - * po/fi.po: New file. - * configure: Regenerated. - -2007-08-10 Nick Clifton - - * NEWS: Add a marker for the 2.18 features. - -2007-08-10 Nick Clifton - - * po/ga.po: Updated Irish translation. - * po/vi.po: Updated Vietnamese translation. - -2007-08-10 H.J. Lu - - * Makefile.am: Run "make dep-am". + * Makefile.am (eelf32bfin.c): Depend on bfin.em. + (eelf32bfinfd.c): Likewise. * Makefile.in: Regenerate. - -2007-08-10 H.J. Lu - - PR ld/4875 - * elf-hints-local.h: Include bfd_stdint.h. Use uint32_t - instead of u_int32_t. - - * sha1.h: Include bfd_stdint.h instead of . - -2007-08-09 Alan Modra - - PR 4515 - * genscripts.sh: Delete all references to NONPAGED_TEXT_START_ADDR. - * ldint.texinfo: Likewise. - * emulparams/armaoutb.sh (NONPAGED_TEXT_START_ADDRESS): Delete. - * emulparams/armaoutl.sh: Likewise. - * emulparams/arcelf.sh (NONPAGED_TEXT_START_ADDR): Delete. - * emulparams/bfin.sh: Likewise - * emulparams/crisaout.sh: Likewise - * emulparams/elf32_sparc.sh: Likewise - * emulparams/elf32am33lin.sh: Likewise - * emulparams/elf32b4300.sh: Likewise - * emulparams/elf32bmip.sh: Likewise - * emulparams/elf32mcore.sh: Likewise - * emulparams/elf32xtensa.sh: Likewise - * emulparams/elf64_s390.sh: Likewise - * emulparams/elf64_sparc.sh: Likewise - * emulparams/elf64alpha.sh: Likewise - * emulparams/elf_i386.sh: Likewise - * emulparams/elf_i386_be.sh: Likewise - * emulparams/elf_i386_chaos.sh: Likewise - * emulparams/elf_i386_ldso.sh: Likewise - * emulparams/elf_i386_vxworks.sh: Likewise - * emulparams/elf_s390.sh: Likewise - * emulparams/elf_x86_64.sh: Likewise - * emulparams/i386aout.sh: Likewise - * emulparams/i386moss.sh: Likewise - * emulparams/i386msdos.sh: Likewise - * emulparams/i386nto.sh: Likewise - * emulparams/i386nw.sh: Likewise - * emulparams/m68kaout.sh: Likewise - * emulparams/m68kelf.sh: Likewise - * emulparams/ppcnw.sh: Likewise - * emulparams/sun4.sh: Likewise - * emulparams/tic80coff.sh: Likewise - * emulparams/vaxnbsd.sh: Likewise - * emulparams/armnbsd.sh (NONPAGED_TEXT_START_ADDR): Delete. - (TEXT_START_ADDR): Set for -n, -N. - * emulparams/coff_sparc.sh: Likewise - * emulparams/elf32vax.sh: Likewise - * emulparams/i386bsd.sh: Likewise - * emulparams/i386go32.sh: Likewise - * emulparams/i386linux.sh: Likewise - * emulparams/i386lynx.sh: Likewise - * emulparams/i386mach.sh: Likewise - * emulparams/m68k4knbsd.sh: Likewise - * emulparams/m68klinux.sh: Likewise - * emulparams/m68knbsd.sh: Likewise - * emulparams/ns32knbsd.sh: Likewise - * emulparams/pc532macha.sh: Likewise - * emulparams/ppclynx.sh: Likewise - * emulparams/scoreelf.sh: Likewise - * emulparams/sparcaout.sh: Likewise - * emulparams/sparclinux.sh: Likewise - * emulparams/sun3.sh: Likewise - * emulparams/vsta.sh: Likewise - -2007-08-07 Ralf Corsépius - - * configure.tgt: Add bfin-*rtems*. - -2007-08-06 Kai Tietz - - * emultempl/pep.em: (pep_enable_stdcall_fixup): Set to value 1. - (gld_xxx_recognized_file): Use pep_bfd_is_dll for detection of - shared objects. - * pe-dll.c: (autofilter_symbollist_i386): Define set for amd64 - mingw target. - -2007-08-01 Nick Clifton - - * po/ga.po: Updated Irish translation. - -2007-07-29 Alan Modra - - * ldlang.c (lang_insert_orphan): When searching through linker - script to place an orphan, don't stop on statements that appear - outside of SECTIONS. - * emultempl/elf32.em (output_rel_find): Prefer read-only alloc - sections over read/write alloc sections. - -2007-07-28 Jakub Jelinek - - * scripttempl/elf.sc: Add .note.gnu.build-id. - -2007-07-25 Nick Clifton - - PR 4824 - * ld.texinfo (Options): Extend the description of the -O command - line option. - -2007-07-24 Kai Tietz - - * pep.sc: Correct ctor/dtor sentinels for 64-bit targets. - -2007-07-21 Nick Clifton - - * sha1.h: Change to use version 3 of the GNU General Public - License and tidy up formatting. - * sha1.c: Likewise. - -2007-07-19 Roland McGrath - - * genscripts.sh (source_em, fragment): New sh functions. - Truncate e${EMULATION_NAME}.c file before .em script fills it. - Use source_em in place of . for the .em script. - * emultempl/generic.em: Use fragment and source_em functions. - * 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/cr16elf.em: Likewise. - * emultempl/crxelf.em: Likewise. - * emultempl/elf-generic.em: Likewise. - * emultempl/elf32.em: Likewise. - * emultempl/genelf.em: Likewise. - * emultempl/gld960.em: Likewise. - * emultempl/gld960c.em: Likewise. - * emultempl/hppaelf.em: Likewise. - * emultempl/ia64elf.em: Likewise. - * emultempl/irix.em: Likewise. - * emultempl/linux.em: Likewise. - * emultempl/lnk960.em: Likewise. - * emultempl/m68hc1xelf.em: Likewise. - * emultempl/m68kcoff.em: Likewise. - * emultempl/m68kelf.em: Likewise. - * emultempl/mipsecoff.em: Likewise. - * emultempl/mipself.em: Likewise. - * emultempl/mmix-elfnmmo.em: Likewise. - * emultempl/mmixelf.em: Likewise. - * emultempl/mmo.em: Likewise. - * emultempl/needrelax.em: Likewise. - * emultempl/netbsd.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/ticoff.em: Likewise. - * emultempl/vanilla.em: Likewise. - * emultempl/vxworks.em: Likewise. - * emultempl/xtensaelf.em: Likewise. - * emultempl/z80.em: Likewise. - -2007-07-18 Roland McGrath - - * emultempl/elf32.em (gld${EMULATION_NAME}_write_build_id_section): - Use ASEC->contents for CONTENTS when missing, and allocate - ASEC->size if needed. - -2007-07-13 Roland McGrath - - * emultempl/elf32.em (struct build_id_info): New type. - (gld${EMULATION_NAME}_id_note_section_size): New function. - (gld${EMULATION_NAME}_write_build_id_section): New function. - (gld${EMULATION_NAME}_after_open): Use them. - (DEFAULT_BUILD_ID_STYLE): Change to "sha1". - * ld.texinfo (Options): Mention --build-id=sha1. - - * sha1.h: New file (from gnulib). - * sha1.c: New file (from gnulib). - * Makefile.am (CFILES, HFILES, OFILES, ld_new_SOURCES): Add them. - (sha1.o): New target. - * Makefile.in: Regenerated. - -2007-07-13 Alan Modra - - * ldlang.c (strip_excluded_output_sections): Don't ignore sections - with update_dot_tree. - -2007-07-12 Nathan Sidwell - - * scripttempl/pe.sc: Don't include .gcc_except_table and - .eh_frame on partial links. - * scripttempl/pep.sc: Likewise. - -2007-07-12 Alan Modra - - PR 4782 - * ldlang.c (lang_size_sections_1 ): Only - use expld.result when valid. - -2007-07-12 Alan Modra - - * emultempl/spuelf.em (embedded_spu_file): Test for NULL path - before calling base_name, not after. - -2007-07-10 Alan Modra - - * scripttempl/elf.sc (DISCARDED): Renamed from STACKNOTE. Add - .gnu.debuglink. - * scripttempl/armbpabi.sc: Likewise. - * scripttempl/elf32sh-symbian.sc: Likewise. - * scripttempl/elfxtensa.sc: Likewise. - * scripttempl/mep.sc: Likewise. - -2007-07-09 Roland McGrath - - * emultempl/elf32.em (gld${EMULATION_NAME}_add_option): Add --build-id. - (gld${EMULATION_NAME}_handle_option): Handle --build-id. - (gld${EMULATION_NAME}_list_options): List --build-id. - (gld${EMULATION_NAME}_after_open): If --build-id was given, - synthesize a ".note.gnu.build-id" section and cache it in elf_tdata. - * ld.texinfo (Options): Describe --build-id. - * NEWS: Mention --build-id. - -2007-07-06 Nick Clifton - - * deffile.h: Update copyright notice to refer to GPLv3. - * deffilep.y, ldcref.c, ldctor.c, ldctor.h, ldemul.c, ldemul.h, - ldexp.c, ldexp.h, ldfile.c, ldfile.h, ldgram.y, ld.h, ldlang.c, - ldlang.h, ldlex.h, ldlex.l, ldmain.c, ldmain.h, ldmisc.c, - ldmisc.h, ldver.c, ldver.h, ldwrite.c, ldwrite.h, lexsup.c, mri.c, - mri.h, pe-dll.c, pe-dll.h, pep-dll.c, pep-dll.h, stamp-h.in, - sysdep.h, emultempl/aix.em, emultempl/alphaelf.em, - emultempl/armcoff.em, emultempl/armelf.em, emultempl/avrelf.em, - emultempl/beos.em, emultempl/cr16elf.em, emultempl/crxelf.em, - emultempl/elf32.em, emultempl/elf-generic.em, emultempl/genelf.em, - emultempl/generic.em, emultempl/gld960c.em, emultempl/gld960.em, - emultempl/hppaelf.em, emultempl/ia64elf.em, emultempl/irix.em, - emultempl/linux.em, emultempl/lnk960.em, emultempl/m68hc1xelf.em, - emultempl/m68kcoff.em, emultempl/m68kelf.em, - emultempl/mipsecoff.em, emultempl/mipself.em, - emultempl/mmixelf.em, emultempl/mmix-elfnmmo.em, emultempl/mmo.em, - emultempl/needrelax.em, emultempl/pe.em, emultempl/pep.em, - emultempl/ppc32elf.em, emultempl/ppc64elf.em, - emultempl/scoreelf.em, emultempl/sh64elf.em, emultempl/spuelf.em, - emultempl/spu_ovl.S, emultempl/sunos.em, emultempl/ticoff.em, - emultempl/vanilla.em, emultempl/xtensaelf.em: Likewise. - * genscripts.sh: Add copyright notice. - * emultempl/netbsd.em, emultempl/vxworks.em, emultempl/z80.em: + * gen-doc.texi: Set Blackfin. + * ld.texinfo: Document --sep-code and Blackfin specific + options. + * ldmain.c (main): Initialize link_info.sep_code. + * lexsup.c (enum option_values): Add OPTION_SEP_CODE. + (ld_options[]): Add --sep-code. + (parse_args): Deal with --sep-code. + * emulparams/bfin.sh (EXTRA_EM_FILE): Define. + * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define. + * emultempl/bfin.em: New file. + +2008-07-09 Danny Smith + + *pe-dll.c (autofilter_symbolprefixlist): Excude all symbols + starting with ".". + Exclude "_IMPORT_DESCRIPTOR_". + (autofilter_symbolsuffixlist): Exclude "_NULL_THUNK_DATA". + (autofilter_symbollist_generic): Don't check for ".text". + Exclude "_NULL_IMPORT_DESCRIPTOR". + (autofilter_symbollist_i386): Likewise. + +2008-07-07 Alan Modra + + * emultempl/armelf.em (elf32_arm_add_stub_section): Use + bfd_make_section_with_flags. + * emultempl/avrelf.em (avr_elf_create_output_section_statements): + Likewise. + * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise. + * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise. + * emultempl/m68kcoff.em (gld${EMULATION_NAME}_after_open): Likewise. + * emultempl/m68kelf.em (m68k_elf_after_open): Likewise. + * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise. + * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation): Likewise. - * NEWS: Mention that the sources are now under GPLv3. - * configure: Regenerate. -2007-07-05 Danny Smith +2008-07-06 Nathan Sidwell - * ld.texinfo (--heap): Replace 'amount' with 'number of bytes'. - (--stack): Likewise. + * ld.texinfo (File Commands): Document that INCLUDE can be used in + several different places. + * ldgram.y (statement, memory_spec, section): Allow INCLUDE. + (memory, memory_spec_list): Simplify BNF + (memory_spec_list_opt): New rule. + * ldlex.l (INCLUDE): Recognize in EXPRESSION. -2007-07-03 Matthias Klose +2008-06-20 Alan Modra - * emultempl/spuelf.em (base_name): Correct backslash quoting. + * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Make "can not + build overlay stubs" a fatal error. -2007-07-02 Alan Modra +2008-06-17 Ralf Wildenhues - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. * config.in: Regenerate. - * po/ld.pot: Regenerate. - -2007-06-30 H.J. Lu - - * aclocal.m4: Regenerated. - * Makefile.in: Likewise. - -2007-06-29 H.J. Lu - - * NEWS: Remove a line with '*' only. - -2007-06-29 Joseph Myers - - * emulparams/armelf.sh (OTHER_SECTIONS): Remove .ARM.attributes. - (ATTRS_SECTIONS): Define. - * scripttempl/elf.sc, scripttempl/elf32sh-symbian.sc, - scripttempl/elf_chaos.sc, scripttempl/elfi370.sc, - scripttempl/elfxtensa.sc: Handle ATTRS_SECTIONS. + * configure: Regenerate. -2007-06-29 M R Swami Reddy +2008-06-17 Alan Modra - * scripttemp/elf32cr16.sc: Default linker script. - * emulparams/elf32cr16.sh: Emulation script. - * emultempl/cr16elf.em: Emulation script. - * Makefile.am: Add entry to make cr16 target. - * Makefile.in: Regenerate. - * configure.tgt: Specify default and other emulation parameters - for cr16. - * ChangeLog: Added CR16 target entry. - * NEWS: Announce the support for the CR16 new target. + * 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. -2007-06-27 Alan Modra +2008-06-16 Hans-Peter Nilsson - * pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout. + * ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, only + mention it as being special for global symbols. -2007-06-20 Alan Modra +2008-06-12 Nick Clifton - * emulparams/elf32_spu.sh (OTHER_SECTIONS): KEEP .note.spu_name. + * 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. -2007-06-18 Nathan Sidwell +2008-06-07 Alan Modra - * ldlex.l, ldgram.y: Add ALIGNOF. - * ldexp.c (exp_print_token, foldname): Likewise. + * 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. -2007-06-18 Alan Modra - - * Makefile.am: Add eelf32_spu.o rule. - * Makefile.in: Regenerate. - * emultempl/spuelf.em: Revert last change. Instead use EMBEDSPU - defined in Makefile for embedspu name. - -2007-06-18 Alan Modra - - * emultempl/spuelf.em (embedded_spu_file): Deduce embedspu program - name prefix from that of ld. +2008-06-06 Alan Modra -2007-06-14 H.J. Lu + * 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. - * Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd. +2008-06-04 Nick Clifton - * acinclude.m4: Removed. + * ld.texinfo (Orphan Sections): Fix texi typo. - * Makefile.in: Regenerated. - * aclocal.m4: Likewise. - * configure: Likewise. +2008-06-04 Chris Metcalf -2007-06-14 Alan Modra + * 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. - * emultempl/spu_ovl.S: Don't trash lr on tail call from one - overlay to another. - * emultempl/spu_ovl.o: Regenerate. +2008-06-04 Alan Modra -2007-06-11 Bob Wilson + * emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg. - * emulparams/elf32xtensa.sh (OTHER_READONLY_SECTIONS): Add ONLY_IF_RO - for .xt_except_table. - (OTHER_RELRO_SECTIONS): New. +2008-06-02 Nathan Sidwell -2007-06-11 Sterling Augustine - Bob Wilson + * ldlang.c (closest_target_match): Skip generic big and little + endian ELF targets. - * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Use renamed - XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM. +2008-05-31 Evandro Menezes -2007-06-01 Noah Misch - Alan Modra + 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. - * ldlang.c (ldlang_add_file): Use input_bfds_tail. - * ldmain.c (main): Init input_bfds_tail. Sort link_info - initialization. +2008-05-28 Christophe Lyon + + * ld.texinfo: State that farcalls stubs are supported for ARM-EABI + only. -2007-05-29 Alan Modra +2008-05-27 Kai Tietz - * emultempl/spuelf.em (base_name): New function, split out from.. - (embedded_spu_file) ..here. Pass -fPIC or -fpie to embedspu - invocation if we deduce a shared lib or position independent - executable build by looking at ctrbegin* linker input files. + * pe-dll.c (fill_edata): Make sure we calculate vma's in + type bfd_vma. + (generate_reloc): Likewise. + (pe_implied_import_dll): Likewise. -2007-05-29 Alan Modra +2008-05-21 Nick Clifton - * emultempl/spu_ovl.S (__rv_pattern, __cg_pattern): Set symbol - types and sizes. - * emultempl/spu_ovl.o: Regenerate. + 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. -2007-05-24 Steve Ellcey +2008-05-21 Maxim Kuvyrkov - * Makefile.in: Regnerate. + * configure.in (--enable-got): New option. Handle it. * configure: Regenerate. - * aclocal.m4: Regenerate. - -2007-05-24 Nathan Sidwell + * 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= option. + * gen-doc.texi: Add M68K. + * NEWS: Mention the new feature. + +2008-05-21 Evandro Menezes + + 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 + Nick Clifton + + * 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 + + * 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 - * ldlex.l: ASSERT is recognized in SCRIPT env. NAMES cannot - contain commas in EXP env. - * ldgram.y (extern_name_list): Push to EXP env, move body to ... - (extern_name_list_body): ... here. - (script_file, ifile_list): Reformat. - (statement): Add ASSERT. + * Makefile.in: Regenerate. -2007-05-22 Nick Clifton +2008-05-09 Kai Tietz - * ld.texinfo: Use @copying around the copyright notice. - * ldint.texinfo: Likewise. + 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. -2007-05-18 Richard Sandiford +2008-05-08 Tom Tromey - * emulparams/elf32ebmipvxworks.sh (OTHER_READONLY_SECTIONS) - (OTHER_READWRITE_SECTIONS): Define. Add .rdata sections. + * ld.texinfo (PowerPC64 ELF64): Fix typo. -2007-05-16 Richard Sandiford +2008-05-08 Alan Modra - * configure.in: Allow sysroots to be relocated under $prefix as - well as $exec_prefix. - * configure: Regenerate. + * 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. -2007-05-14 Andreas Schwab +2008-05-08 Alan Modra - * emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): - Handle null pattern. + * ldexp.c (exp_print_token): Add ABSOLUTE, MIN_K, ASSERT_K. Correct + MAX_K. + (fold_binary ): Set expld.result.section to + current section. Expand comment. Formatting. + (fold_name ): Set expld.result.section to current section. -2007-05-11 Alan Modra +2008-04-28 Nathan Sidwell - * emultempl/ppc32elf.em (plt_style): New variable. - (old_plt): Delete. - (ppc_after_open): Adjust ppc_elf_select_plt_layout call. - (PARSE_AND_LIST_PROLOGUE): Define OPTION_NEW_PLT, renumber - OPTION_OLD_PLT, OPTION_OLD_GOT and OPTION_STUBSYMS. - (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add secure-plt. - (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NEW_PLT. - * ld.texinfo (--secure-plt): Document. + * ldlang.c (lang_size_sections_1): Don't check LMA overflow on + non-load sections. -2007-05-08 Alan Modra +2008-04-25 Michael Frysinger - * ld.h (args_type, ld_config_type): Reorder fields. - * ldmain.c (main): Don't initialise a bunch of vars we know are - zero already. + * configure.tgt (bfin-*-linux-uclibc*): Set targ_emul to elf32bfinfd + and targ_extra_emuls to elf32bfin. -2007-05-05 Anatoly Sokolov +2008-04-23 Paolo Bonzini - * multempl/avrelf.em (PARSE_AND_LIST_ARGS_CASES): Add new value for - "--pmem-wrap-around". - (PARSE_AND_LIST_OPTIONS): Describe new value for "--pmem-wrap-around". + * aclocal.m4: Regenerate. + * configure: Regenerate. -2007-05-03 Bob Wilson +2008-04-03 Kai Tietz - * scripttempl/elfxtensa.sc: Merge changes from elf.sc. + * scripttempl/pep.sc: Align start of symbol __CTOR_LIST__. -2007-05-03 Alan Modra +2008-04-08 Alan Modra - * ld.texinfo (--no-warn-search-mismatch): Document. - * ldfile.c (ldfile_try_open_bfd): Don't warn about skipping - incompatible libraries if --no-warn-search-mismatch. - * ld.h (args_type): Add warn_search_mismatch. - * ldmain.c (main): Init it. - * lexsup.c (enum option_values): Add OPTION_NO_WARN_SEARCH_MISMATCH. - (ld_options): Add entry for --no-warn-search-mismatch. - (parse_args): Handle OPTION_NO_WARN_SEARCH_MISMATCH. + * po/POTFILES.in: Regenerate. -2007-05-03 Alan Modra +2008-04-08 Alan Modra - * scripttempl/elf.sc: Add .debug_pubtypes and .debug_ranges. + * 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. -2007-05-01 Robert Millan +2008-04-03 Kai Tietz - * ldlang.c (lang_check): Error on architecture mismatch. + PR ld/6026 + * pe-dll.c (make_head): Fix iat and thunk addend offset. -2007-04-30 Alan Modra +2008-03-31 Nick Clifton - * ldmain.c (link_callbacks): Init info and minfo fields. - * ldmisc.c (minfo): Do nothing if no map file. - * emultempl/spuelf.em (stack_analysis, emit_stack_syms): New vars. - (spu_after_open): Adjust spu_elf_create_sections call. - (spu_before_allocation): Likewise for spu_elf_size_stubs. - (OPTION_SPU_STACK_ANALYSIS, OPTION_SPU_STACK_SYMS): Define. - (PARSE_AND_LIST_LONGOPTS): Add new entries. - (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise. - * gen-doc.texi: Add @set for SPU and other missing targets. - * ld.texinfo: Update man page selection to match gen-doc.texi. - Document SPU features. + * po/fr.po: Updated French translation. -2007-04-28 Alan Modra +2008-03-24 Ian Lance Taylor - * ldcref.c (struct cref_hash_entry): Make "demangled" const. - (cref_fill_array): Adjust for changed demangler. - * ldlang.c (lang_one_common): Likewise. + 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. -2007-04-27 Nathan Froyd +2008-03-20 Alan Modra - * emulparams/elf32_sparc.sh: Update comments. - * emulparams/elf32bmip.sh: Likewise. - * emulparams/elf32ppc.sh: Likewise. - * emulparams/vxworks.sh: Likewise. + * emultempl/spuelf.em: Update calls to elf32-spu.c funcs. -2007-04-27 Alan Modra +2008-03-17 Ralf Wildenhues - Many files: Include sysdep.h first. Remove duplicate headers. - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * configure: Likewise. + * Makefile.in: Likewise. -2007-04-24 Alan Modra +2008-03-14 Alan Modra - * Makefile.in: Regenerate. + * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect + spu_elf_build_stubs with is_spu_target. -2007-04-19 Alan Modra +2008-03-13 Alan Modra - * ldcref.c (cref_fill_array): Call bfd_demangle rather than demangle. - * ldlang.c (lang_one_common): Likewise. - * ldmisc.c (vfinfo): Likewise. - (demangle): Delete. - * ldmisc.h (demangle): Delete. * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. - -2007-04-18 Alan Modra - - * ldlang.h (enum section_type): Add overlay_section. - * ldlang.c (lang_add_section): Handle flags for overlay_section - as per normal_section. - (lang_size_sections_1): When setting lma, detect overlays by - os->sectype rather than by looking for overlapping vmas. - (lang_enter_overlay_section): Use overlay_section type. - (lang_leave_overlay): Set first overlay section to normal. - -2007-04-14 Steve Ellcey - - * Makefile.am: Add ACLOCAL_AMFLAGS. - * Makefile.in: Regenerate. - -2007-04-12 Bob Wilson - - * emulparams/elf32xtensa.sh (OTHER_SECTIONS): KEEP property sections. - -2007-04-10 Richard Henderson - - * ldlang.c (relax_sections): Initialize and increment - link_info.relax_trip. - -2007-04-04 Paul Brook - - * configure.tgt: Loosen checks for arm uclinux eabi targets. - -2007-04-02 H.J. Lu - - PR ld/4090 - * ldexp.h (node_type): Add lineno. - * ldexp.c: Include "ldlex.h". - (exp_intop): Set the lineno field from lineno. - (exp_bigintop): Likewise. - (exp_relop): Likewise. - (exp_nameop): Likewise. - (exp_binop): Set the lineno field from lineno of lhs. - (exp_trinop): Likewise. - (exp_unop): Set the lineno field from lineno of child. - (exp_assop): Set the lineno field from lineno of src. - (exp_provide): Likewise. - (exp_assert): Set the lineno field from lineno of exp. - (exp_get_abs_int): Set lineno from lineno of nonconstant - expression when report problem. - -2007-03-29 Richard Sandiford - Daniel Jacobowitz - - * NEWS: Mention -l:foo. - * ld.texinfo: Document it. - * ldlang.c (new_afile): If a lang_input_file_is_l_enum - entry as a name beginning with a coloh, convert it to a - lang_input_file_is_search_file_enum entry without the colon. - -2007-03-28 Richard Sandiford - - * ld.h (ld_config_type): Add rpath_separator. - * ldmain.c (main): Initialize it. - * lexsup.c (parse_args): Honor config.rpath_separator. - * emultempl/elf32.em (gld${EMULATION_NAME}_search_needed): Likewise. - (gld${EMULATION_NAME}_add_sysroot): Likewise. - (gld${EMULATION_NAME}_parse_ld_so_conf): Use config.rpath_separator - rather than ':' when building the path. - * emultempl/vxworks.em (vxworks_before_parse): New function. - Override config.rpath_separator. - (LDEMUL_AFTER_OPEN): Do not change if EXTRA_EM_FILE has been - set to gld${EMULATION_NAME}_after_open; #define that identifier - to vxworks_foo instead. - (LDEMUL_BEFORE_PARSE): Override in the same way as LDEMUL_AFTER_OPEN. - -2007-03-28 Richard Sandiford - Phil Edwards - - * ld.texinfo: Put the contents after the title page rather - than at the end of the document. - -2007-03-26 Alan Modra - - * Makefile.am: Add dependency on ldemul-list.h for powerpc and - spu target emul files. - * configure.in: Check for mkstemp and waitpid. - * Makefile.in: Regenerate. * configure: Regenerate. - * config.in: Regenerate. - * ldlang.c (input_file_chain): Make global. - (lang_add_input_file): Don't set lang_has_input_file here. - * ldlang.h (input_file_chain): Declare. - * emultempl/ppc32elf.em (ppc_recognized_file): New function. - (LDEMUL_RECOGNIZED_FILE): Define. - * emultempl/ppc64elf.em (ppc64_recognized_file): New function. - (LDEMUL_RECOGNIZED_FILE): Define. - * emultempl/spuelf.em (struct tflist): New. - (tmp_file_list): New var. - (clean_tmp, embedded_spu_file): New functions. - -2007-03-24 Alan Modra - - * ldlang.c (lang_insert_orphan): Provide start/stop loadaddr syms - rather than defining unconditionally. - (lang_leave_overlay_section): Likewise. - * ld.texinfo (Overlay Description): Update description and examples - for start/stop syms. - -2007-03-22 Joseph Myers - - * ld.texinfo: Include VERSION_PACKAGE when reporting version. - -2007-03-20 Paul Brook - - * emultempl/armelf.em (pic_veneer): New variable. - (PARSE_AND_LIST_PROLOGUE): Add OPTION_PIC_VENEER. - (PARSE_AND_LIST_ARGS_CASES): Ditto. - (PARSE_AND_LIST_LONGOPTS): Add "pic-veneer". - (PARSE_AND_LIST_OPTIONS): Ditto. - * ld.texinfo: Document --pic-veneer. - -2007-03-18 Mark Shinwell - - * ld.texinfo: Document --no-enum-size-warning. - * emultempl/armelf.em (no_enum_size_warning): New. - (arm_elf_create_output_section_statements): Correct typo - in comment. Pass no_enum_size_warning to - bfd_elf32_arm_set_target_relocs. - (PARSE_AND_LIST_PROLOGUE): Define OPTION_NO_ENUM_SIZE_WARNING. - (PARSE_AND_LIST_OPTIONS): Document --no-enum-size-warning. - (PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_ENUM_SIZE_WARNING - case. - -2007-03-19 Bernd Schmidt - - * configure.tgt (bfin-*-elf, bfin-*-uclinux*): Add targ_extra_libpath. - (bfin-*-linux-uclibc*): New target. - -2007-03-16 Kai Tietz - - * pe-dll.c (make_one): Use pc-relative relocation instead of an - absolute relocation for x86_64-pc-mingw32 target. - -2007-03-15 H.J. Lu - - * Makefile.am (ld_TEXINFOS): Remove ldver.texi. - (AM_MAKEINFOFLAGS): Add -I ../../bfd/doc. - (TEXI2DVI): Likewise. - (REPORT_BUGS_TO): Removed. - (INCLUDES): Remove -DREPORT_BUGS_TO. - (ldver.texi): Likewise. - (ld.1): Don't depend on ldver.texi. - (MOSTLYCLEANFILES): Remove ldver.texi. - * Makefile.in: Regenerated. - - * configure.in (--with-bugurl): Removed. - * configure: Regenerated. - - * lexsup.c: Include bfdver.h. - - * ld.texinfo: Include bfdver.texi instead of ldver.texi. - -2007-03-11 Hans-Peter Nilsson - - * emultempl/mmixelf.em: Remove incorrect '#line' directive. - -2007-03-08 Alan Modra - - * ldlang.c (lang_size_sections_1): Correct backwards dot move - test to not trigger on overlays. Only warn on backwards move - if non-default lma. - -2007-03-07 Joseph Myers - - * configure.in (REPORT_BUGS_TEXI): Define to Texinfo version of - bug-reporting URL. - * Makefile.am (ldver.texi): Define BUGURL. - * ld.texinfo: Use BUGURL. - * Makefile.in, configure: Regenerate. - -2007-03-07 Nick Clifton - - PR ld/4023 - * emultempl/aix.em (..._before_allocation): Strip sysroot prefix - from any paths being inserted into the output binary's DT_RPATH. - -2007-03-02 Nathan Sidwell - - * emulparams/shelf_uclinux.sh: New. Missed in 2007-02-28 commit. - -2007-03-01 Joseph Myers - - * ldver.c (ldversion): Remove word "version" from output. Update - copyright date. - -2007-02-28 Nathan Sidwell - - * Makefile.am (ALL_EMULATIONS): Add eshelf_uclinux.o - (eshelf_uclinux.c): New target. - * Makefile.in: Rebuilt. - * configure.tgt (sh-*-uclinux* | sh[12]-*-uclinux*): New stanza. - * emulparams/shelf_uclinux.sh: New. -2007-02-28 Alan Modra +2008-03-06 Joseph Myers + Roman Zippel - * configure.tgt: Fix type last change. - * configure.tgt (spu-*-elf*): Delete targ_extra_ofiles. + * emulparams/m68kelf.sh (GENERATE_PIE_SCRIPT): Define. + (COMMONPAGESIZE): Define. -2007-02-27 Alan Modra +2008-02-22 Nick Clifton - * Makefile.am (ALL_EMUL_EXTRA_OFILES): Remove spu_inc.o. - (eelf32_spu.c): Adjust dependencies. - * Makefile.in: Regenerate. - * emultempl/spuelf.em (ovl_mgr): New array. Insert spu_ovl.o - code using bin2c. - (_binary_spu_ovl_o_start, _binary_spu_ovl_o_end): Delete. - (ovl_mgr_stream): Update. - * emultempl/spu_inc.s: Delete. - * emultempl/spu_none.s: Delete. - -2007-02-26 Alan Modra - - * emultempl/spuelf.em (_binary_builtin_ovl_mgr_start): Rename - to _binary_spu_ovl_o_start. - (_binary_builtin_ovl_mgr_end): Rename to _binary_spu_ovl_o_end. - (spu_elf_load_ovl_mgr): Fatal error on missing overlay manager. - * emultempl/spu_inc.s: Rename symbols. - * emultempl/spu_none.s: New file. - * emultempl/spu_ovl.S: Update copyright. - * Makefile.am (spu_inc.o): Try building with ld -r first, then - gas incbin, then build without overlay manager. - * Makefile.in: Regenerate. - -2007-02-22 Joseph Myers - - * configure.tgt (mips64*el-*-linux-*, mips64*-*-linux-*, - mips*el-*-linux-*, mips*-*-linux-*): Set - targ_extra_libpath=$targ_extra_emuls. + 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. -2007-02-21 Nick Clifton +2008-02-18 Nick Clifton - * ldlang.c (ldlang_override_segment_assignment): New function. - * ldlang.h (ldlang_override_segment_assignment): Prototype. - * ldmain.c (link_callbacks): Add - ldlang_override_segment_assignment. + * 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. -2007-02-20 Alan Modra +2008-02-16 Alan Modra - * ldexp.c (fold_name ): Ensure result is always absolute. + PR ld/5761 + * ldexp.c (fold_name ): Check result of evaluating + load_base before calling make_abs. -2007-02-17 Mark Mitchell - Nathan Sidwell - Vladimir Prus +2008-02-15 Alan Modra - * configure.in (--with-bugurl): New option. - * configure: Regenerate. - * Makefile.am (REPORT_BUGS_TO): Define. - (INCLUDES): Define REPORT_BUGS_TO. - Regenerate dependencies. - * Makefile.in: Regenerate. - * ld.h: Remove include of bin-bugs.h. - * lexsup.c (help): Don't print empty REPORT_BUGS_TO. + * 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 + + * 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. -2007-02-17 Alan Modra +2008-02-07 Alan Modra - * ldcref.c (check_reloc_refs): Compare section for local syms. + * 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. -2007-02-13 Alan Modra +2008-02-07 Alan Modra - * emultempl/spu_ovl.S (__ovly_return, __ovly_load): Set sym size. - (__ovly_load_event): Define. - (size): Rename to osize. + * 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. -2007-02-13 Alan Modra +2008-02-04 H.J. Lu - * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Add ".branch_lt". - * emultempl/ppc64elf.em (ppc_add_stub_section): Create without - SEC_RELOC flag set. - -2007-02-09 H.J. Lu - - * configure.in (targ_extra_emuls): Add $targ64_extra_emuls if - want64 is true. - (targ_extra_libpath): Add $targ64_extra_libpath if want64 is - true + PR 5715 * configure: Regenerated. - * configure.tgt (targ_extra_libpath): Initialize. - (targ64_extra_emuls): New. Document. Initialize. - (targ64_extra_libpath): Likewise. - (i[3-7]86-*-linux-*): Set targ64_extra_emuls and - targ64_extra_libpath. - (powerpc*-*-linux*): Likewise. - (s390-*-linux*): Likewise. - -2007-02-07 Paul Brook - - * configure.tgt: Add arm*-*-uclinux-*eabi. - -2007-02-06 H.J. Lu - - * ldlang.c (lang_size_sections_1): Add a missing `)'. - -2007-02-06 Alan Modra - - PR ld/3966 - * ldlang.c (lang_size_sections_1): Don't warn on backwards dot - move unless section size is non-zero. - -2007-02-05 Dave Brolley - - * Makefile.am (ALL_EMULATIONS): Add support for Toshiba MeP. - * configure.tgt: Likewise. - * scripttempl/mep.sc: New file. - * emulparams/elf32mep.sh: New file. - * Makefile.in: Regenerate. - -2006-01-29 Julian Brown - - * NEWS: Mention --vfp11-denorm-fix option. - * ld.texinfo: Document above. - * emulparams/armelf_linux.sh (OTHER_TEXT_SECTIONS): Add - .vfp11_veneer section. - * emulparams/armelf.sh (OTHER_TEXT_SECTIONS): Likewise. - * emultempl/armelf.em (vfp11_denorm_fix): New static variable. - (arm_elf_before_allocation): Call bfd_elf32_arm_set_vfp11_fix, - bfd_elf32_arm_init_maps and bfd_elf32_arm_vfp11_erratum_scan. - (arm_elf_after_allocation): New function. Call - bfd_elf32_arm_vfp11_fix_veneer_locations for all input statements. - (arm_elf_create_output_section_statements): Pass vfp11 fix command - line option to BFD. - (OPTION_VFP11_DENORM_FIX): New option. - (PARSE_AND_LIST_LONGOPTS): Handle new option. - (PARSE_AND_LIST_OPTIONS): Likewise. - (PARSE_AND_LIST_ARGS_CASES): Likewise. - (LDEMUL_AFTER_ALLOCATION): Define. - -2007-01-24 H.J. Lu - - * ldgram.y (SIZEOF_HEADERS): Remove duplicated one. - (DEFSYMEND): Likewise. - (NAME): Likewise. - (LNAME): Likewise. - -2007-01-19 Murali Vemulapati - - * pe-dll.c: (make_one) Conditionally include jump stubs. - * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Identify - redundant jump stubs from import libraries and exclude them from - link. +2008-01-31 Marc Gauthier -2007-01-19 H.J. Lu + * configure.tgt (xtensa*-*-*): Recognize processor variants. - * ld.h (args_type): Add new symbolic and dynamic_list fields. +2008-01-28 Fabian Groffen - * ld.texinfo: Update -Bsymbolic-functions. + * configure.tgt (x86_64-*-solaris2): Add support for this target. - * ldmain.c (main): Initialize command_line.symbolic to - symbolic_unset and command_line.dynamic_list to - dynamic_list_unset. Check -Bsymbolic, -Bsymbolic-functions and - --dynamic-list* before setting link_info.symbolic, - link_info.dynamic and link_info.dynamic_data. +2008-01-28 Vincent Riviere - * lexsup.c (option_values): Add OPTION_SYMBOLIC_FUNCTIONS. - (ld_options): Use OPTION_SYMBOLIC_FUNCTIONS with - -Bsymbolic-functions. - (parse_args): Handle -Bsymbolic-functions. Don't set - link_info.dynamic, link_info.dynamic_data and link_info.symbolic - here. Set command_line.symbolic for -Bsymbolic. Set - command_line.dynamic_list and command_line.symbolic for - --dynamic-list-data, --dynamic-list-cpp-new, - --dynamic-list-cpp-typeinfo and --dynamic-list. + 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. -2007-01-19 Jakub Jelinek - H.J. Lu +2008-01-28 Alan Modra - * emultempl/elf32.em (handle_option): Make sure -z max-page-size - or -z common-page-size argument is a power of 2. Call - bfd_emul_set_maxpagesize and bfd_emul_set_commonpagesize. - -2007-01-19 H.J. Lu - - * ldmain.c (main): Don't call bfd_emul_set_maxpagesize nor - bfd_emul_set_commonpagesize. - -2007-01-19 H.J. Lu - - * NEWS: Mention --default-script/-dT. - - * ld.h (args_type): Add a default_script field. - - * ld.texinfo: Document --default-script/-dT. - - * ldmain.c (main): Handle command_line.default_script. - - * lexsup.c (option_values): Add OPTION_DEFAULT_SCRIPT. - (ld_options): Add entries for --default-script and -dT. - (parse_args): Handle --default-script/-dT. - -2007-01-16 H.J. Lu - - PR ld/3831 - * NEWS: Mention -Bsymbolic-functions, --dynamic-list-data and - --dynamic-list-cpp-new. - - * ld.texinfo: Document -Bsymbolic-functions, --dynamic-list-data - and --dynamic-list-cpp-new. - - * ldlang.c (lang_append_dynamic_list_cpp_new): New. - (lang_process): Change link_info.dynamic to - link_info.dynamic_list. - (lang_append_dynamic_list): Likewise. - * ldmain.c (main): Likewise. Initialize link_info.dynamic and - link_info.dynamic_data to FALSE. - - * ldlang.h (lang_append_dynamic_list_cpp_new): New. - - * lexsup.c (option_values): Add OPTION_DYNAMIC_LIST_DATA and - OPTION_DYNAMIC_LIST_CPP_NEW. - (ld_options): Add entries for -Bsymbolic-functions, - --dynamic-list-data and --dynamic-list-cpp-new. Make - -Bsymbolic-functions an alias of --dynamic-list-data. - (parse_args): Change link_info.dynamic to link_info.dynamic_list. - Set link_info.dynamic to TRUE for --dynamic-list and - --dynamic-list-cpp-typeinfo. Handle --dynamic-list-data and - --dynamic-list-cpp-new. - -2007-01-11 Nathan Sidwell - - * emultempl/elf-generic.em (gdl_map_segments): Only allow header - shrinkage for the first few iterations. - -2007-01-08 Kai Tietz - - * configure.tgt: Renamed target x86_64-*-mingw64 to - x86_64-*-mingw*. - -2007-01-08 Pedro Alves - - * configure.host: Add i[3-7]86-*-mingw* case. - -2007-01-08 Nick Clifton - - * pep-dll.h (pep_bfd_is_dll): Add prototype. - -2007-01-08 Aurelien Jarno - - PR ld/3843 - * configure.tgt (x86_64_[k]freebsd*): Add targ_extra_libpath and - tdir_elf_i386_fbsd. - -2007-01-06 Nathan Sidwell - - * ldexp.c (fold_name): Issue error on undefined sections. - -2007-01-02 Alan Modra - - * pe-dll.c: Include pe-dll.h. - * pep-dll.c (pe_bfd_is_dll): Define. - -For older changes see ChangeLog-2006 + * 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 + + PR ld/5670 + * ldlang.c (process_insert_statements): Silence gcc 4.1 alias + warning. + +2008-01-25 Alan Modra + + * 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 + + * scripttempl/elfxtensa.sc: Merge ENTRY and .note.gnu.build-id + changes from elf.sc. + +2008-01-16 Alan Modra + + * ldlang.c (lang_size_sections_1): Simplify SEC_NEVER_LOAD test. + +2008-01-16 Alan Modra + + * 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 + + * 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 + + 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 + Eric Botcazou + + * 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 + + 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 + + * ld.texinfo (--gc-sections): Describe linker behaviour. + +For older changes see ChangeLog-2007 Local Variables: mode: change-log