X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=ld%2FChangeLog;h=8e09dbf25d2ec0b75a6036321fea1efcbdedb771;hb=e52315924b94ebfea09366bebb535692f274dc52;hp=ecc1a0a3d0b120d646b7d781fd79433ea674a3b9;hpb=6fa087861d896bb91eaa646df78d3ffc00bf22fb;p=deliverable%2Fbinutils-gdb.git diff --git a/ld/ChangeLog b/ld/ChangeLog index ecc1a0a3d0..8e09dbf25d 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,608 +1,372 @@ -2008-07-12 Craig Silverstein +2009-03-14 Richard Sandiford + + * configure.tgt: Extend AIX 5 behavior to AIX 6 and above. + +2009-03-14 Dave Korn + Danny Smith + + * emultmpl/pe.em (pe_dll_characteristics): New variable. + (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT, + OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND, + OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE): + New macros for options to set DllCharacteristics flag bits. + (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg, + nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options. + (init): Add DllCharacteristics field. + (gld_${EMULATION_NAME}_list_options): List new options. + (gld${EMULATION_NAME}_handle_option): Handle new options. + * emultmpl/pep.em (pe_dll_characteristics): New variable. + (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT, + OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND, + OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE): + New macros for options to set DllCharacteristics flags. + (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg, + nxcompat,no-isolation, no-seh, no-bind, wdmdriver, tsaware options. + (init): Add DllCharacteristics field. + (gld_${EMULATION_NAME}_list_options): List new options. + (gld${EMULATION_NAME}_handle_option): Handle new options. + * ldtexinfo : Document dynamicbase, forceinteg, nxcompat, + no-isolation, no-seh, no-bind, wdmdriver, tsaware options. + +2009-03-06 Nick Clifton + + * po/es.po: Updated Spanish translation. + +2009-03-03 Dave Korn + + * emultempl/pe.em (debug_section_p): New bfd_map_over_sections hook. + (gld_${EMULATION_NAME}_after_open): Use it to iterate all sections + of all input BFDs, looking for debug info. Enable long section names + if any found. + * emultempl/pe.em (debug_section_p): Likewise. + (gld_${EMULATION_NAME}_after_open): Likewise. + * NEWS: Retrospectively adjust news announcement. + * ld.texinfo: Update documentation to mention new behaviour. + +2009-03-03 Alan Modra - PR ld/6741 - * configure.in: Check for, and include, libz.a if it is present. - * configure: Regenerate. - * config.in: Regenerate. - -2008-07-12 Jie Zhang - - Revert - 2008-07-12 Jie Zhang - * Makefile.am (eelf32bfin.c): Depend on bfin.em. - (eelf32bfinfd.c): Likewise. - * Makefile.in: Regenerate. - * 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-12 Jie Zhang - - * Makefile.am (eelf32bfin.c): Depend on bfin.em. - (eelf32bfinfd.c): Likewise. + * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. - * 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. - -2008-07-06 Nathan Sidwell - - * 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. - -2008-06-20 Alan Modra - - * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Make "can not - build overlay stubs" a fatal error. - -2008-06-17 Ralf Wildenhues - - * config.in: Regenerate. - * configure: Regenerate. - -2008-06-17 Alan Modra - - * 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 - - * ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, only - mention it as being special for global symbols. - -2008-06-12 Nick Clifton - - * 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 - - * 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 - * 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. +2009-03-02 Sebastian Huber -2008-06-04 Nick Clifton - - * ld.texinfo (Orphan Sections): Fix texi typo. - -2008-06-04 Chris Metcalf - - * 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 - - * emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg. - -2008-06-02 Nathan Sidwell - - * ldlang.c (closest_target_match): Skip generic big and little - endian ELF targets. - -2008-05-31 Evandro Menezes - - 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. + * ldgram.y: Add support for REGION_ALIAS operator. + * ldlang.c: Likewise. + * ldlang.h: Likewise. + * ldlex.l: Likewise. + * NEWS: Mention the new feature. + * ld.texinfo: Document the new feature. -2008-05-28 Christophe Lyon - - * ld.texinfo: State that farcalls stubs are supported for ARM-EABI - only. +2009-03-02 Qinwei -2008-05-27 Kai Tietz + * Makefile.am: Replace score elf emulation with score3 and score7 + emulations. + * Makefile.in: Regenerate, + * NEWS: Mention support for Score7 architecture. + * configure.tgt: Add score7 emulation to score-elf target. + * emulparams/scoreelf.sh: Add score7 support. + * emultempl/scoreelf.em: Likewise. - * pe-dll.c (fill_edata): Make sure we calculate vma's in - type bfd_vma. - (generate_reloc): Likewise. - (pe_implied_import_dll): Likewise. +2009-03-01 John David Anglin -2008-05-21 Nick Clifton + * configure.tgt: Only use elf64hppa target emulation for hpux. + * emulparams/elf64hppa.sh: Don't include hppa64linux.sh. + (SCRIPT_NAME): Use new script elf64hppa. + (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY, + TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS, + OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS, + DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT, + TEXT_DYNAMIC): Define. + * emulparams/hppa64linux.sh: Adjust comments. + * scripttempl/elf64hppa.sc: New file. - 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 +2009-03-01 Ralf Wildenhues - * 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= 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 +2009-02-27 Dave Korn + + * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): Set + default state of auto-import flag based on $target. + +2009-02-24 Joseph Myers + + * ld.texinfo (ARM): Document changed meaning of --stub-group-size. + * emultempl/armelf.em (hook_in_stub): Insert after the input section. + (elf32_arm_add_stub_section): Update comment. + (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size. + +2009-02-24 Sandra Loosemore + + * ld.texinfo (Options): Correct typos in example. Recommend + using joined forms of syntax for passing options with arguments + from a driver. + (-a): Use consistent syntax for documenting option arguments. + Clean up indexing and markup. + (-A/--architecture): Likewise. + (-f/--auxiliary): Likewise. + (-F/--filter): Likewise. + (-fini): Likewise. + (-G/--gpsize): Likewise. + (-h/-soname):Likewise. + (-init): Likewise. + (-l/--library): Likewise. + (-L/--library-path): Likewise. + (-m): Likewise. + (--defsym): Likewise. + (-I/--dynamic-linker): Likewise. + (-Map): Likewise. + (--oformat): Likewise. + (--retain-symbols-file): Likewise. + (-rpath): Likewise. + (-rpath-link): Likewise. + (--sort-common): Likewise. + (--sort-section): Likewise. + (--split-by-file): Likewise. + (--split-by-reloc): Likewise. + (--sysroot): Likewise. + (--section-start): Likewise. + (-Tbss, -Tdata, -Ttext): Likewise. + (-Ttext-segment): Likewise. + (--version-script): Likewise. + (--wrap): Likewise. + +2009-02-18 Dave Korn + + * ld.texinfo: Update to mention long section name options. + * NEWS: Mention new behaviour and command-line options. + * pe-dll.c (pe_use_coff_long_section_names): New global variable. + (pe_output_file_set_long_section_names): New function. + (pe_dll_build_sections): Call it on output BFDs. + (pe_exe_build_sections): Likewise. + (pe_dll_fill_sections): Likewise. + (pe_exe_fill_sections): Likewise. + * pe-dll.h (pe_use_coff_long_section_names): Declare extern. + (pe_output_file_set_long_section_names): Add prototype. + * pep-dll.c (pe_use_coff_long_section_names): Define pep_ alias. + (pe_output_file_set_long_section_names): Likewise. + * pep-dll.h (pep_use_coff_long_section_names): Declare extern. + (pep_output_file_set_long_section_names): Add prototype. + * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES): New getopt value macro. + (OPTION_DISABLE_LONG_SECTION_NAMES): Likewise. + (gld${EMULATION_NAME}_add_options): Add new options to xtra_long[]. + (gld_${EMULATION_NAME}_list_options): Describe them. + (gld${EMULATION_NAME}_handle_option): Set or clear global + pe_use_coff_long_section_names flag when options recognised. + (gld_${EMULATION_NAME}_after_open): En/disable long section names + for main output bfd by calling pe_output_file_set_long_section_names. + * pep.em (enum options): Extend enum with new getopt option values. + (gld${EMULATION_NAME}_add_options): Add new options to xtra_long[]. + (gld_${EMULATION_NAME}_list_options): Describe them. + (gld${EMULATION_NAME}_handle_option): Set or clear global + pe_use_coff_long_section_names flag when options recognised. + (gld_${EMULATION_NAME}_after_open): En/disable long section names + for main output bfd by calling pep_output_file_set_long_section_names. + +2009-02-16 Dave Korn + + * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Don't emit + inadvertent .reloc sections caused by refactoring accident. + +2009-02-16 Alan Modra + + * ldlang.c (process_insert_statements): ASSERT that output section + statements are in order. + +2009-02-16 Alan Modra + + * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions. + (stat_save, stat_save_ptr): New variables. + (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr. + (load_symbols): Likewise. Delete dead "bad_load" code. + (open_input_bfds): Warn on script containing output sections. + (lang_enter_output_section_statement): Use push_stat_ptr. + (lang_enter_group): Likewise. + (lang_leave_output_section_statement): Use pop_stat_ptr. + (lang_leave_group): Likewise. + * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare. + * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr. + * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise. + * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise. + * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise. + * emultempl/spuelf.em (spu_place_special_section): Likewise. + * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise. + +2009-02-09 Nathan Sidwell + + Missing piece of 2009-01-26 commit + * ldlang.c (lang_process): Don't consider relocatable flag when + checking for overlap. + +2009-02-05 Joseph Myers + + * emulparams/m68kelf.sh: Add newline at end of file. + +2009-02-04 Nick Clifton + + PR 9805 + * ld.texinfo (--allow-shlib-undefined): Correct description of + default settings and tidy up the rest of the entry. + +2009-02-04 Alan Modra + + * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.* + during relocatable link. + +2009-02-03 Nick Clifton + + PR 9797 + * ld.texinfo (Constants): Document the base-encoding suffixes + supported in linker scripts. + +2009-02-03 Alan Modra + + * NEWS: Mention --as-needed change. + +2009-02-03 Carlos O'Donell + + * configure.in: AC_SUBST pdfdir. + * Makefile.am: Add install-pdf, install-pdf-am, + and install-pdf-recursive targets. Define pdf__strip_dir. + * po/Make-in: Add install-pdf target. + * configure: Regenerate. * Makefile.in: Regenerate. -2008-05-09 Kai Tietz - - 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. +2009-01-31 Alan Modra -2008-05-08 Tom Tromey + * ld.texinfo (--as-needed): Update. - * ld.texinfo (PowerPC64 ELF64): Fix typo. +2009-01-29 Andrew Jenner -2008-05-08 Alan Modra + * emultempl/armelf.em: Correct formatting of help text for + --no-enum-size-warning option. - * 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. +2009-01-26 Nathan Sidwell -2008-05-08 Alan Modra + * lexsup.c (parse_args): Set check_section_addresses to 1 or 0. + * ld.h (args_type): Make check_section_addresses a char. + * ldmain.c (main): Default check_section_addresses to -1. Check it + for relocatable links. + * ld.texinfo (--check-sections): Update documentation. - * 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. +2009-01-26 Kai Tietz -2008-04-28 Nathan Sidwell + * pe-dll.c (tmp_seq2): New static variable. + (make_singleton_name_imp): New. + (make_import_fixup_entry): Use for v2 the _imp_ symbol and + avoid duplicate import table generation for same symbol. + (pe_create_runtime_relocator_reference): Make reference for + 64-bit 8 bytes. - * ldlang.c (lang_size_sections_1): Don't check LMA overflow on - non-load sections. +2009-01-21 Alan Modra -2008-04-25 Michael Frysinger + * emultempl/spuelf.em (params): Init new field. + (OPTION_SPU_NON_IA_TEXT): Define. + (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text. + (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT. - * configure.tgt (bfin-*-linux-uclibc*): Set targ_emul to elf32bfinfd - and targ_extra_emuls to elf32bfin. +2009-01-16 H.J. Lu -2008-04-23 Paolo Bonzini + * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT. + (ld_options): Add -Ttext-segment. + (parse_args): Handle OPTION_TTEXT_SEGMENT. - * aclocal.m4: Regenerate. - * configure: Regenerate. + * ld.texinfo: Document -Ttext-segment. -2008-04-03 Kai Tietz + * NEWS: Mention -Ttext-segment. - * scripttempl/pep.sc: Align start of symbol __CTOR_LIST__. + * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START. + (SHLIB_TEXT_START_ADDR): Likewise. -2008-04-08 Alan Modra +2009-01-13 Alan Modra - * po/POTFILES.in: Regenerate. + * emultempl/spu_icache.o_c: Regenerate. -2008-04-08 Alan Modra +2009-01-12 Alan Modra - * 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. + * emultempl/spuelf.em (params): Init new fields. + (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars. + (spu_place_special_section): Adjust placement for soft-icache. Pad + soft-icache section to a fixed size. Clear addr_tree. + (spu_elf_load_ovl_mgr): Support soft-icache. Map overlay manager + sections a little more intelligently. + (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs. + (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS. + (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define. + (OPTION_SPU_LRLIVE): Define. + (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options. (PARSE_AND_LIST_OPTIONS): Likewise. - (PARSE_AND_LIST_ARGS_CASES): Likewise. - (LDEMUL_CHOOSE_TARGET): Define. - -2008-04-03 Kai Tietz - - PR ld/6026 - * pe-dll.c (make_head): Fix iat and thunk addend offset. - -2008-03-31 Nick Clifton - - * po/fr.po: Updated French translation. - -2008-03-24 Ian Lance Taylor - - 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 - - * emultempl/spuelf.em: Update calls to elf32-spu.c funcs. - -2008-03-17 Ralf Wildenhues - - * aclocal.m4: Regenerate. - * configure: Likewise. - * Makefile.in: Likewise. - -2008-03-14 Alan Modra - - * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect - spu_elf_build_stubs with is_spu_target. - -2008-03-13 Alan Modra - - * Makefile.am: Run "make dep-am". + (PARSE_AND_LIST_ARGS_CASES): Handle them. + * emultempl/spu_icache.S: Dummy file. + * emultempl/spu_icache.o_c: Regenerate. + * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c. + (spu_icache.o_c): Add rule to build. + (CLEANFILES): Zap temp files. + (EXTRA_DIST): Add spu_icache.o_c. * Makefile.in: Regenerate. - * configure: Regenerate. -2008-03-06 Joseph Myers - Roman Zippel - - * emulparams/m68kelf.sh (GENERATE_PIE_SCRIPT): Define. - (COMMONPAGESIZE): Define. - -2008-02-22 Nick Clifton - - 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 - - * 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 - - PR ld/5761 - * ldexp.c (fold_name ): Check result of evaluating - load_base before calling make_abs. - -2008-02-15 Alan Modra - - * 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. +2009-01-08 Kai Tietz + + * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New. + (gld..._add_options): Add new option + --use-nul-prefixed-import-tables. + (gld..._handle_option): Likewise. + * pep.em: Same as for pe.em. + * ld.texinfo: Add new option documentation for + --use-nul-prefixed-import-tables. + * pe-dll.c (pe_use_nul_prefixed_import_tables): New. + (make_head): Make prefix leading zero prefix element for + idata$4 and idata$5 dependent to new flag. + (make_import_fixup_entry): Remove idata4/5 prefix. + * pe-dll.h (pe_use_nul_prefixed_import_tables): New. + * pep-dll.c (pe_use_nul_prefixed_import_tables): New. + * pep-dll.h (pep_use_nul_prefixed_import_tables): New. + * NEWS: Add new option. + +2009-01-05 Kai Tietz + + * emultempl/pe.em: Prefix dollar characters to be outputed in + generated C file. * 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 - - * 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 - - * 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 - - PR 5715 - * configure: Regenerated. - -2008-01-31 Marc Gauthier - - * configure.tgt (xtensa*-*-*): Recognize processor variants. - -2008-01-28 Fabian Groffen - - * configure.tgt (x86_64-*-solaris2): Add support for this target. - -2008-01-28 Vincent Riviere - - 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 - - * 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 +2009-01-03 Dave Korn + + * NEWS: Mention new feature --exclude-modules-for-implib. + * ld.texinfo: Document new --exclude-modules-for-implib option. + * pe-dll.c (exclude_list_struct): Change type member from int to + new enumeration exclude_type. + (pe_dll_add_excludes): Accept exclude_type instead of int param. + (auto_export): Replace magic constants by exclude_type values and + handle new choice EXCLUDEFORIMPLIB. + (pe_dll_generate_implib): Accept a pointer to the link_info and + iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open + fresh BFDs for any found and link into import lib archive chain. + * pe-dll.h (exclude_type): Add new enumerated type to replace magic + constants previously used for exclude_list_struct type member. + (pe_dll_add_excludes, pe_dll_generate_implib): Update prototypes. + * pep-dll.h (exclude_type, pe_dll_add_excludes, + pe_dll_generate_implib): Likewise to all the above. + * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB): Define new + getopts long option code for new --exclude-modules-for-implib option. + (gld${EMULATION_NAME}_add_options): Add new entry to xtra_long[]. + (gld_${EMULATION_NAME}_list_options): List usage for it. + (gld${EMULATION_NAME}_handle_option): Use exclude_type enumerated + values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB. + (gld_${EMULATION_NAME}_finish): Pass pointer to link_info when + calling pe_dll_generate_implib. + * emultempl/pep.em (options): Define new enumerated value for getopts + long option code for new --exclude-modules-for-implib option. + (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options, + gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish): + Again, likewise to all the above. + +2009-01-03 Dave Korn + + * pe-dll.c (autofilter_liblist): Add entry for shared libgcc. + (libnamencmp): New function. + (auto_export): Use it in place of strncmp when filtering libraries. + +For older changes see ChangeLog-2008 Local Variables: mode: change-log