8818386922
* coff-alpha.c (alpha_ecoff_backend_data): Initialise fields which control long section name handling with ECOFF_NO_LONG_SECTION_NAMES. * coff-mips.c (mips_ecoff_backend_data): Likewise. * coff-rs6000.c (bfd_xcoff_backend_data): Initialise fields which control long section name handling with XCOFF_NO_LONG_SECTION_NAMES. (bfd_pmac_xcoff_backend_data): Likewise. * coff64-rs6000.c (bfd_xcoff_backend_data): Likewise. (bfd_xcoff_aix5_backend_data): Likewise. (xcoff64_write_object_contents): Delete unused long_section_names local variable. * coff-sh.c (bfd_coff_small_swap_table): Initialise long section name members using COFF_DEFAULT_LONG_SECTION_NAMES and make entire struct non-const. * coffcode.h (documentation): Update to describe long section names. (COFFLONGSECTIONCATHELPER): New helper macro. (BLANKOR1TOODD): Likewise. (COFF_ENABLE_LONG_SECTION_NAMES): Likewise. (COFF_LONG_SECTION_NAMES_SETTER): Likewise. (COFF_DEFAULT_LONG_SECTION_NAMES): Likewise. (bfd_coff_set_long_section_names_allowed): New function. (bfd_coff_set_long_section_names_disallowed): Likewise. (struct bfd_coff_backend_data): Add new backend hook function pointer _bfd_coff_set_long_section_names. (bfd_coff_set_long_section_names): New backend hook. (coff_write_object_contents): Only generate long section names if bfd_coff_long_section_names() indicates they are currently enabled. (bfd_coff_std_swap_table): Make non-const, and initialise long section name fields using COFF_DEFAULT_LONG_SECTION_NAMES. (ticoff0_swap_table): Likewise to both. (ticoff1_swap_table): Again, likewise to both. * coffgen.c (make_a_section_from_file): Allow long section names as inputs even if not currently allowed for outputs. * ecoff.c (_bfd_ecoff_no_long_sections): New function. * efi-app-ia32.c (COFF_LONG_SECTION_NAMES): Define to 0, not blank. * efi-app-ia64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-app-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-bsdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-bsdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-bsdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-rtdrv-ia32.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-rtdrv-ia64.c (COFF_LONG_SECTION_NAMES): Likewise. * efi-rtdrv-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-arm.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-i386.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-mcore.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-mips.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-ppc.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-sh.c (COFF_LONG_SECTION_NAMES): Likewise. * pei-x86_64.c (COFF_LONG_SECTION_NAMES): Likewise. * libcoff-in.h: Update copyright year to cause updated copyright year in generated libcoff.h, and fix typo. * libcoff.h: Regenerated. * libecoff.h (ECOFF_NO_LONG_SECTION_NAMES): New macro. (_bfd_ecoff_no_long_sections): Add prototype. * libxcoff.h (XCOFF_NO_LONG_SECTION_NAMES): New macro. * pe-mips.c (COFF_LONG_SECTION_NAMES): Define empty if not already defined by an including .c file. * ticoff.h (ticoff0_swap_table): Make non-const, and initialise long section name fields using COFF_DEFAULT_LONG_SECTION_NAMES. (ticoff1_swap_table): Likewise to both. ld/ChangeLog * 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. ld/testsuite/ChangeLog * ld-pe/longsecn-1.d: New test file. * ld-pe/longsecn-2.d: Likewise. * ld-pe/longsecn-3.d: Likewise. * ld-pe/longsecn-4.d: Likewise. * ld-pe/longsecn-5.d: Likewise. * ld-pe/longsecn.d: Likewise. * ld-pe/longsecn.exp: New test control script. * ld-pe/longsecn.s: New test source file.
243 lines
9.6 KiB
Text
243 lines
9.6 KiB
Text
2009-18-02 Dave Korn <dave.korn.cygwin@gmail.com>
|
||
|
||
* 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 <dave.korn.cygwin@gmail.com>
|
||
|
||
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Don't emit
|
||
inadvertent .reloc sections caused by refactoring accident.
|
||
|
||
2009-02-16 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* ldlang.c (process_insert_statements): ASSERT that output section
|
||
statements are in order.
|
||
|
||
2009-02-16 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* 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 <nathan@codesourcery.com>
|
||
|
||
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 <joseph@codesourcery.com>
|
||
|
||
* emulparams/m68kelf.sh: Add newline at end of file.
|
||
|
||
2009-02-04 Nick Clifton <nickc@redhat.com>
|
||
|
||
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 <amodra@bigpond.net.au>
|
||
|
||
* emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
|
||
during relocatable link.
|
||
|
||
2009-02-03 Nick Clifton <nickc@redhat.com>
|
||
|
||
PR 9797
|
||
* ld.texinfo (Constants): Document the base-encoding suffixes
|
||
supported in linker scripts.
|
||
|
||
2009-02-03 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* NEWS: Mention --as-needed change.
|
||
|
||
2009-02-03 Carlos O'Donell <carlos@codesourcery.com>
|
||
|
||
* 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.
|
||
|
||
2009-01-31 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* ld.texinfo (--as-needed): Update.
|
||
|
||
2009-01-29 Andrew Jenner <andrew@codesourcery.com>
|
||
|
||
* emultempl/armelf.em: Correct formatting of help text for
|
||
--no-enum-size-warning option.
|
||
|
||
2009-01-26 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
||
* 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.
|
||
|
||
2009-01-26 Kai Tietz <kai.tietz@onevision.com>
|
||
|
||
* pe-dll.c (tmp_seq2): New static variable.
|
||
(make_singleton_name_imp): New.
|
||
(make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
|
||
avoid duplicate import table generation for same symbol.
|
||
(pe_create_runtime_relocator_reference): Make reference for
|
||
64-bit 8 bytes.
|
||
|
||
2009-01-21 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* 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.
|
||
|
||
2009-01-16 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
|
||
(ld_options): Add -Ttext-segment.
|
||
(parse_args): Handle OPTION_TTEXT_SEGMENT.
|
||
|
||
* ld.texinfo: Document -Ttext-segment.
|
||
|
||
* NEWS: Mention -Ttext-segment.
|
||
|
||
* scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
|
||
(SHLIB_TEXT_START_ADDR): Likewise.
|
||
|
||
2009-01-13 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* emultempl/spu_icache.o_c: Regenerate.
|
||
|
||
2009-01-12 Alan Modra <amodra@bigpond.net.au>
|
||
|
||
* 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): 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.
|
||
|
||
2009-01-08 Kai Tietz <kai.tietz@onevision.com>
|
||
|
||
* 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 <kai.tietz@onevision.com>
|
||
|
||
* emultempl/pe.em: Prefix dollar characters to be outputed in
|
||
generated C file.
|
||
* emultempl/pep.em: Likewise.
|
||
|
||
2009-01-03 Dave Korn <dave.korn.cygwin@gmail.com>
|
||
|
||
* 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 <dave.korn.cygwin@gmail.com>
|
||
|
||
* 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
|
||
left-margin: 8
|
||
fill-column: 74
|
||
version-control: never
|
||
End:
|