OSDN Git Service

ld/
[pf3gnuchains/pf3gnuchains3x.git] / ld / ChangeLog
index dda3696..8b743d2 100644 (file)
@@ -1,4 +1,389 @@
-2005-05-07  Paul Brook  <paul@codesourcery.com>
+2005-09-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ldlang.c (output_statement_hash_entry): New type.
+       (output_statement_table): New variable for hash table.
+       (output_statement_newfunc): New function.
+       (output_statement_table_init): Likewise.
+       (output_statement_table_free): Likewise.
+       (lang_init): Call output_statement_table_init.
+       (lang_finish): Renamed to ...
+       (lang_end): This.
+       (lang_process): Updated.
+       (lang_finish): New function.
+       (lang_output_section_find_1): Use hash table.
+       (lang_output_section_statement_lookup_1): Likewise.
+
+       * ldlang.h (lang_finish): New.
+
+       * ldmain.c (main): Call lang_finish.
+
+2005-09-30  Mark Mitchell  <mark@codesourcery.com>
+
+       * ldmain.c (main): Use expandargv.
+
+2005-09-30  Catherine Moore  <clm@cm00re.com>
+       
+       * Makefile.am: Bfin support.
+       * Makefile.in: Regenerated.
+       * aclocal.m4: Regenerated.
+       * configure.tgt: Bfin support.
+       * emulparams/bfin.sh: New file.
+       * emultempl/bfin.em: New file.
+
+2005-09-30  Matthias Kurz  <mk@baerlap.north.de>
+
+       * ld.h: Prevent the inclusion of <libintl.h> from the Solaris
+       version of <locale.h> when ENABLE_NLS is not defined.
+
+2005-09-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ld.texinfo (ALIGN): Document it as forcing output section
+       alignment.
+
+       * ldgram.y (ALIGN): Support it for forcing output section
+       alignment.
+
+2005-09-20  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldlang.h (lang_output_section_statement_struct): Change type of
+       "processed" to bfd_boolean.
+       * ldexp.c (fold_name): Update references to os->processed.
+       * ldlang.c (lang_output_section_statement_lookup_1): Likewise.
+       (lang_size_sections_1): Likewise.
+       (lang_reset_memory_regions): Likewise.
+
+       PR ld/1353
+       * ldlang.c (lang_size_sections_1): Process addr_tree earlier,
+       so that unused output section statements affect dot.
+
+2005-09-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * ld.texinfo: Document -z {no,}execstack, -z {no,}relro
+       and --eh-frame-hdr options.
+
+2005-09-07  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldexp.c (fold_name <SIZEOF>): Return 0 for non-existent section.
+       (exp_fold_tree_1): Print assert message only in final stage of
+       linking.  Trigger assertion failure if expression cannot be
+       evaluated.
+
+2005-09-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/1263
+       * emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): Check
+       --just-symbols on DSO.
+
+2005-08-18  Alan Modra  <amodra@bigpond.net.au>
+
+       * scripttempl/elf.sc: Remove commented out defines.
+
+2005-08-18  Alan Modra  <amodra@bigpond.net.au>
+
+       * emulparams/a29k.sh: Delete.
+       * emulparams/ebmon29k.sh: Delete.
+       * emulparams/sa29200.sh: Delete.
+       * Makefile.am: Remove a29k support.
+       * configure.tgt: Likewise.
+       * ld.texinfo: Likewise.
+       * Makefile.in: Regenerate.
+
+2005-08-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * ldgram.y (vers_defns): Don't lose pattern list before
+       extern NAME {}.  Handle global, local and extern symbol names.
+
+2005-08-17  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
+
+       * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_after_allocation):
+       Don't increment rel_count of .cranges here.  Set rawsize of .cranges.
+
+2005-08-10  Nick Clifton  <nickc@redhat.com>
+
+       * pe-dll.c (pe_exe_fill_sections): Call lang_reset_memory_regions
+       before lang_size_sections.
+
+2005-08-09  Alan Modra  <amodra@bigpond.net.au>
+
+       * emulparams/hppa64linux.sh (LARGE_SECTIONS): Remove .tbss.
+
+2005-08-08  Eric Doenges <Eric.Doenges@betty-tv.com>
+
+       * Makefile.am (ALL_EMULATIONS): Add msp430x21xx variants.
+       Add rules to build these emulations.
+       * Makefile.in: Regenerate.
+       * configure.tgt (msp430): Add the new variants to the
+       targ_extra_emuls list.
+       * emulparams/msp430all.sh: Add entries for the msp430x21xx
+       variants.
+
+2005-08-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ld.texinfo: Document PROVIDE_HIDDEN.
+
+       * ldexp.c (exp_fold_tree_1): Hide a provided symbol if asked.
+       (exp_provide): Add and set hidden.
+
+       * ldexp.h (etree_type): Add hidden to assign.
+
+       * ldgram.y (PROVIDE_HIDDEN): New.
+       * ldlex.l (PROVIDE_HIDDEN): Likewise.
+
+       * scripttempl/elf.sc: Use PROVIDE_HIDDEN on array bound
+       symbols.
+
+2005-08-05  Alan Modra  <amodra@bigpond.net.au>
+
+       * emulparams/elf_x86_64.sh: Revert last change.
+       * scripttempl/elf.sc (REL_LARGE, LARGE_SECTIONS): Define here.
+
+2005-08-05  Alan Modra  <amodra@bigpond.net.au>
+
+       * emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from
+       OTHER_END_SYMBOLS.
+       * emulparams/armelf_linux.sh: Likewise.
+       * emulparams/armnto.sh: Likewise.
+       * emulparams/criself.sh: Likewise.
+       * emulparams/elf32mcore.sh: Likewise.
+       * emulparams/criself.sh (OTHER_SYMBOLS): Define.
+       * emulparams/crislinux.sh (OTHER_SYMBOLS): Define.
+       (OTHER_END_SYMBOLS): Don't define.
+       * emulparams/elf32fr30.sh: Likewise.
+       * emulparams/elf64mmix.sh: Likewise.
+       * emulparams/hppa64linux.sh: Likewise.
+       * emulparams/m32relf.sh: Likewise.
+       * emulparams/vxworks.sh: Likewise.
+       * scripttempl/armbpabi.sc (OTHER_BSS_SECTIONS): Delete.
+       (OTHER_BSS_END_SYMBOLS): Add.
+       (OTHER_END_SYMBOLS): Move before current end sym definitions.
+       (OTHER_SYMBOLS): Replace OTHER_END_SYMBOLS near end of script.
+       * scripttempl/elf.sc: Likewise.
+       * scripttempl/elf32sh-symbian.sc: Likewise.
+       * scripttempl/elf_chaos.sc: Likewise.
+       * scripttempl/elfxtensa.sc: Likewise.
+       * scripttempl/iq2000.sc: Likewise.
+       * scripttempl/xstormy16.sc: Likewise.
+
+       * scripttempl/elf.sc (LBSS, LARGE_SECTIONS): Delete.
+       (REL_LDATA, REL_LBSS, REL_LRODATA): Delete.
+       (REL_LARGE, LARGE_SECTIONS): Add.
+       * emulparams/elf_x86_64.sh (LARGE_SECTIONS): Define as script text.
+       (REL_LARGE): Define.
+       * emulparams/hppa64linux.sh (OTHER_BSS_SECTIONS): Don't define.
+       (LARGE_SECTIONS): Define.
+       * emulparams/hppa64linux.sh (OTHER_BSS_SECTIONS): Don't define.
+       (LARGE_SECTIONS): Define.
+
+2005-08-04  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldemul.c (ldemul_do_assignments, do_assignments_default): Delete.
+       * ldemul.h (ldemul_do_assignments, do_assignments_default): Delete.
+       (struct ld_emulation_xfer_struct): Remove do_assignments field.
+       * ldlang.c (lang_do_assignments): Don't call ldemul_do_assignments.
+       * emulparams/elf32ppc.sh (SDATA_START_SYMBOLS): New.
+       (SDATA2_START_SYMBOLS, SBSS_START_SYMBOLS, SBSS_END_SYMBOLS): New.
+       * emultempl/aix.em (ld_*_emulation): Delete do_assignments init.
+       * emultempl/armcoff.em: Likewise.
+       * emultempl/beos.em: Likewise.
+       * emultempl/generic.em: Likewise.
+       * emultempl/gld960.em: Likewise.
+       * emultempl/gld960c.em: Likewise.
+       * emultempl/linux.em: Likewise.
+       * emultempl/lnk960.em: Likewise.
+       * emultempl/m68kcoff.em: Likewise.
+       * emultempl/pe.em: Likewise.
+       * emultempl/sunos.em: Likewise.
+       * emultempl/ticoff.em: Likewise.
+       * emultempl/vanilla.em: Likewise.
+       * emultempl/elf32.em: Likewise.
+       (gld*_provide_bound_symbols): Delete.
+       (gld*_provide_init_fini_syms): Delete.
+       (gld*_before_allocation): Don't call ldemul_do_assignments.
+       * emultempl/ppc32elf.em (ppc_do_assignments): Delete.
+       (LDEMUL_DO_ASSIGNMENTS): Delete.
+       * scripttempl/elf.sc: Provide init/fini syms.  Add SBSS_START_SYMBOLS,
+       SBSS_END_SYMBOLS, SDATA2_START_SYMBOLS.
+
+2005-08-04  Alan Modra  <amodra@bigpond.net.au>
+
+       * Makefile.am (eelf32m32c.c): Fix dependencies.
+       * Makefile.in: Regenerate.
+
+2005-08-04  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldemul.c (ldemul_finish): Call ld_emulation->finish unconditionally.
+       (finish_default): New function.
+       * ldemul.h (finish_default): Declare.
+       * emultempl/aix.em (gld*_before_allocation): Call
+       before_allocation_default rather than strip_excluded_output_sections.
+       (ld_*_emulation): Init finish field to finish_default.
+       * emultempl/armcoff.em: Likewise.
+       * emultempl/beos.em: Likewise.
+       * emultempl/elf32.em: Likewise.
+       * emultempl/generic.em: Likewise.
+       * emultempl/gld960.em: Likewise.
+       * emultempl/gld960c.em: Likewise.
+       * emultempl/hppaelf.em: Likewise.
+       * emultempl/linux.em: Likewise.
+       * emultempl/lnk960.em: Likewise.
+       * emultempl/m68kcoff.em: Likewise.
+       * emultempl/mmo.em: Likewise.
+       * emultempl/pe.em: Likewise.
+       * emultempl/ppc64elf.em: Likewise.
+       * emultempl/sunos.em: Likewise.
+       * emultempl/ticoff.em: Likewise.
+       * emultempl/vanilla.em: Likewise.
+
+2005-08-03  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldlang.c (exp_init_os): Handle etree_provide.
+       * emulparams/armelf.sh (OTHER_END_SYMBOLS): Rename from..
+       (OTHER_BSS_END_SYMBOLS): ..this.
+       * emulparams/armelf_linux.sh: Likewise.
+       * emulparams/armnto.sh: Likewise.
+       * emulparams/criself.sh: Likewise.
+       * emulparams/crislinux.sh: Likewise.
+       * emulparams/elf32frv.sh: Likewise.
+       * emulparams/elf32mcore.sh: Likewise.
+       * emulparams/elf32ppc.sh: Likewise.
+       * emulparams/elf32ppclinux.sh: Likewise.
+       * emulparams/hppa64linux.sh: Likewise.
+       * scripttempl/armbpabi.sc: Substitute $OTHER_END_SYMBOLS, not
+       $OTHER_BSS_END_SYMBOLS.
+       * scripttempl/elf32sh-symbian.sc: Likewise.
+       * scripttempl/elf_chaos.sc: Likewise.
+       * scripttempl/iq2000.sc: Likewise.
+       * scripttempl/xstormy16.sc: Likewise.
+       * scripttempl/elf.sc: Likewise.  Delete __bss_start comment.
+       * scripttempl/elfxtensa.sc: Likewise.
+
+2005-07-29  Nick Clifton  <nickc@redhat.com>
+
+       * ldmain.c (main): Allow -shared and -static to be used together.
+       * ld.texinfo (-static): Mention that it is allowed with -shared.
+
+2005-07-28  DJ Delorie  <dj@redhat.com>
+
+       * ldlang.c (lang_output_section_statement_lookup_1): Don't cast a
+       unary & address operator, as that breaks GCC's strict aliasing
+       rules.
+
+2005-07-25  Jan Hubicka  <jh@suse.cz>
+           H.J. Lu  <hongjiu.lu@intel.com>
+
+       * emulparams/elf_x86_64.sh (LARGE_SECTIONS): New.
+
+       * scripttempl/elf.sc: Updated for large section support.
+
+2005-07-21  Ralf Corsepius  <ralf.corsepius@rtems.org>
+
+       * configure.tgt: Remove i[3-7]86-*-rtemself*.
+       Remove sparc-*-rtemself*.
+
+2005-07-21  Ben Elliston  <bje@gnu.org>
+
+       * ldgram.y (ldgram_want_filename): Remove unused static.
+
+2005-07-20  DJ Delorie  <dj@redhat.com>
+
+       * emulparams/elf32m32c.sh (TEMPLATE_NAME): New.
+       (EXTRA_EM_FILE): New.
+
+2005-07-19  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ldmain.c (main): Reindent.
+
+2005-07-19  Paul Brook  <paul@codesourcery.com>
+
+       * configure.host (HOSTING_CRT0): Parse output of gcc --help --verbose
+       to determine dynamic linker name.
+
+2005-07-18  Nick Clifton  <nickc@redhat.com>
+
+       * configure.tgt: Restore alpha ordering to list of arches.
+
+2005-07-16  Alan Modra  <amodra@bigpond.net.au>
+
+       * emultempl/elf32.em (gld*_provide_init_fini_syms): Prototype.
+       (gld*_before_allocation): Call ldemul_do_assignments rather than
+       gld*_provide_init_fini_syms directly.
+       * emultempl/ppc32elf.em (gld*_after_allocation): Delete.
+       (ppc_do_assignments): New function.
+       (LDEMUL_AFTER_ALLOCATION): Don't define.
+       (LDEMUL_DO_ASSIGNMENTS): Define.
+
+2005-07-16  Alan Modra  <amodra@bigpond.net.au>
+
+       * Makefile.am: Run "make dep-am".
+       (emipsidt.c, emipsidtl.c): Depend on generic.em.
+       * Makefile.in: Regenerate.
+
+2005-07-15  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldemul.c (ldemul_do_assignments): New function.
+       (do_assignments_default): New function.
+       * ldemul.h (ldemul_do_assignments): Declare.
+       (do_assignments_default): Declare.
+       (struct ld_emulation_xfer_struct): Add do_assignments.
+       * ldlang.c (lang_do_assignments) Call ldemul_do_assignments.
+       * emultempl/aix.em (ld_*_emulation): Init do_assignments field.
+       * emultempl/armcoff.em: Likewise.
+       * emultempl/beos.em: Likewise.
+       * emultempl/generic.em: Likewise.
+       * emultempl/gld960.em: Likewise.
+       * emultempl/gld960c.em: Likewise.
+       * emultempl/linux.em: Likewise.
+       * emultempl/lnk960.em: Likewise.
+       * emultempl/m68kcoff.em: Likewise.
+       * emultempl/pe.em: Likewise.
+       * emultempl/sunos.em: Likewise.
+       * emultempl/ticoff.em: Likewise.
+       * emultempl/vanilla.em: Likewise.
+       * emultempl/elf32.em: Likewise, to call gld*_provide_init_fini_syms.
+       (gld*_find_exp_assignment): Adjust bfd_elf_record_link_assignment call.
+
+2005-07-14  Jim Blandy  <jimb@redhat.com>
+
+       Add support for the Renesas M32C and M16C.
+       * Makefile.am (ALL_EMULATIONS): Add eelf32m32c.o.
+       (eelf32m32c.c): New target.
+       * Makefile.in: Regenerated.
+       * configure.tgt: Add case for m32c-*-elf.
+       * emulparams/elf32m32c.sh: New file.
+
+2005-07-14  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldlang.c (strip_excluded_output_sections): Don't call
+       bfd_gc_sections.
+       * emultempl/elf32.em (gld*_provide_bound_symbols): Move.
+       (gld*_provide_init_fini_syms): Move.
+       (gld*_before_allocation): Call the above from here..
+       (gld*_finish): ..not here.  Call _bfd_elf_fix_excluded_sec_syms.
+       * emultempl/hppaelf.em (hppaelf_finish): Likewise.
+       * emultempl/ppc64elf.em (ppc_finish): Likewise.
+
+2005-07-10  Ralf Corsepius <ralf.corsepius@rtems.org>
+
+       * configure.tgt: Remove sparc*-*-rtemsaout*, i[3-7]86-go32-rtems*,
+       i[3-7]86-*-rtemscoff*, hppa*-*-rtems*, mips*el-*-rtems*,
+       powerpcle-*-rtems*.
+
+2005-07-09  Christopher Faylor  <cgf@timesys.com>
+
+       * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): Enable runtime
+       relocation by default.
+       (compute_dll_image_base): Avoid linking into cygwin dll address space.
+
+2005-07-08  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldlang.c (wild_sort): Formatting.
+       (strip_excluded_output_sections): Strip zero size sections here.
+       * emultempl/elf32.em (gld*_strip_empty_sections): Delete.
+       (gld*_finish): Don't call the above.
+       * emultempl/hppaelf.em (hppaelf_finish): Likewise.
+       * emultempl/ppc64elf.em (ppc_finish): Likewise.
+
+2005-07-05  Paul Brook  <paul@codesourcery.com>
 
        * Makefile.am (ALL_EMULATIONS): Add eelf32ppcvxworks.o.
        (eelf32ppcvxworks.o): Add dependencies.