blob: 5d3376834704d23f9a94273e3fda3a043f0ca1b3 [file] [log] [blame]
2003-12-19 Kazuhiro Inaoka <>
Add m32r-linux and PIC support. Add new ABI that uses RELA.
* Added em32rlelf.c, em32relf_linux.c,
* Regenerate.
* configure.tgt (m32r*-*-linux*, m32r*le-*-linux*, m32r*le-*-*):Added.
* emulparams/ Added.
* emulparams/ Ditto.
* emulparams/ Ditto.
* NEWS: Mention support m32r Linux.
2003-12-18 Eric Youngdale <>
Nick Clifton <>
* emultempl/pe.em (_after_open): When scanning MS import
libraries allow for the possible presence of static objects.
2003-12-07 H.J. Lu <>
* ldlang.c (lang_vers_match): Pass "DMGL_PARAMS | DMGL_ANSI" to
2003-12-07 Kazu Hirata <>
* ldemul.c: Convert to ISO-C.
* ldver.c: Likewise.
2003-12-06 Kazu Hirata <>
* lexsup.c (is_num): Remove.
2003-12-05 Dmitry Semyonov <>
* pe-dll.c (generate_reloc): Remap ARM_26D relocation from 5 to
0. This fixes "bad fixup" error generated by MS linker.
2003-12-04 H.J. Lu <>
* emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Set
link_info.need_relax_finalize to TRUE.
* ldlang.c (lang_process): Use link_info.need_relax_finalize
instead of link_info.relax_finalizing.
* ldmain.c (main): Likewise.
2003-12-04 Dmitry Semyonov <>
2003-12-04 Alan Modra <>
* ldlang.c (lang_do_assignments): Function return is void.
* ldlang.h (lang_do_assignments): Ditto.
* emultempl/netbsd.em (gld${EMULATION_NAME}_before_parse): Declare.
* (ens32knbsd.c): Depend on netbsd.em.
* Regenerate.
2003-12-03 Dave Airlie <>
* configure.tgt: Add vax-linux-gnu target.
2003-12-03 Dmitry Diky <>
* scripttempl/ (HEAP_SECTION_MSP430): New section for
forthcoming devices.
(_etext): provide this defenition for all scripts.
2003-12-02 Kazu Hirata <>
* emultempl/beos.em: Remove ARGSUSED.
2003-12-03 Alan Modra <>
* emultempl/pe.em (pe_fixup_stdcalls): Update for renamed
bfd_link_hash_entry field "next" -> "und_next".
(pe_find_data_imports): Likewise.
(gld_${EMULATION_NAME}_after_open): Likewise.
* emultempl/sunos.em (before_allocation): Likewise.
2003-12-02 Nick Clifton <>
* ld.texinfo (Options): --ignore-all is no longer the default
behaviour for shared libraries and dynamic executables.
2003-12-02 Alan Modra <>
* Run "make dep-am".
* Regenerate.
2003-12-02 Alan Modra <>
* ldmain.c (main): Remove mpc860c0 code.
* lexsup.c (enum option_values): Delete OPTION_MPC860C0.
(ld_options): Delete mpc860c0 entry.
(parse_args): Likewise.
2003-12-01 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Test
hash table type rather than testing creator flavour.
* emultempl/hppaelf.em (hppaelf_create_output_section_statements):
Only create stub_file bfd if hash table creator is as expected.
(gld${EMULATION_NAME}_finish): Test stub_file.
2003-11-28 Marcel Moolenaar <>
* emulparams/ (TEXT_START_ADDR): Define.
(DATA_ADDR): Unset.
2003-11-18 James E Wilson <>
* ldlang.c (lang_process): Move lang_reset_memory_regions call after
lang_do_assignments call.
* emulparams/ (OTHER_PLT_RELOC_SECTIONS): Include
.rela.opd if -pie.
2003-11-10 Jonathan Wilson <>
* scripttempl/ Add support for TLS sections.
2003-11-09 Alan Modra <>
* (HOSTING_LIBS): Group libgcc and libc with
--start-group, --end-group pair.
(*-*-netbsd*, am33_2.0-*-linux*): Use the default HOSTING_LIBS.
(am33_2.0-*-linux*): Edit default HOSTING_CRT0.
(arm*-*-linux-gnu*): Remove extraneous '*' in sed expression.
(hppa*64*-*-linux*, hppa*-*-linux*): Remove target specific case.
2003-11-07 Jonathan R. Grant <>
* ldfile.c (ldfile_open_file): Use "No such file" error message.
2003-11-06 Bruno Rohee <>
* ls.texinfo: Fix "the the" typo.
2003-11-05 Alan Modra <>
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Only do
pe_dll_extra_pe_debug stuff when DLL_SUPPORT defined.
(pr_sym): Move inside #ifdef DLL_SUPPORT.
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Zap
unused variable.
* emulparams/ (TEXT_START_ADDR): Define.
2003-11-04 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Call
2003-10-31 Nick Clifton <>
* ldlang.c (lookup_name): When looking for a previously loaded
file compare the local_sym_name not the filename, as the
filename might have been transformed via the search directory
path lookup.
If the sought-for file has not been found in the input file
chain then create a new node with the search_dirs_flag set so
that the entire set of directory paths will be scanned for it.
2003-10-30 Andrew Cagney <>
* emultempl/pe.em, pe-dll.c: Replace "struct symbol_cache_entry"
with "struct bfd_symbol".
2003-10-30 Phil Edwards <>
* (ALL_EMULATIONS): Add elf32mipswindiss.o.
(eelf32mipswindiss.c): New target.
* Regenerated.
* emulparams/ New file.
* configure.tgt (i[3-7]86-*-vxworks*, arm-*-vxworks, sh-*-vxworks,
mips*-*-vxworks*): Use ELF now.
(mips*-*-windiss): New stanza, use elf32mipswindiss.
2003-10-27 Stephane Carrez <>
* scripttempl/ Define eeprom memory region.
2003-10-25 Kazu Hirata <>
* ChangeLog-9197: Fix typos.
* NEWS: Likewise.
* ld.texinfo: Likewise.
* ldlang.c: Fix comment typos.
2003-10-24 H.J. Lu <>
* ldlang.c (lang_vers_match): Fix a typo.
2003-10-24 H.J. Lu <>
* ldlang.c (lang_vers_match): Check demangled symbols.
2003-10-24 H.J. Lu <>
* ldlang.c (lang_vers_match): Check "symbol" instead of
"wildcard" and "pattern". Fix a typo.
(lang_finalize_version_expr_head): Likewise.
(lang_register_vers_node): Likewise.
(realsymbol): New function.
(lang_new_vers_pattern): Set "symbol" and remove "wildcard".
* ldlex.l (V_IDENTIFIER): Allow '\\'.
2003-10-24 Nick Clifton <>
* emultempl/m68hc1xelf.em (before_allocation): Add missing second
parameter to lang_memory_region_lookup.
2003-10-22 Jakub Jelinek <>
* ldlang.c: Include hashtab.h.
(lang_vers_match_lang_c, lang_vers_match_lang_cplusplus,
lang_vers_match_lang_java): Remove.
(lang_vers_match): New function.
(lang_new_vers_pattern): Initialize wildcard and mask
fields, don't initialize match.
(lang_new_vers_node): Use xcalloc. Adjust for globals and
locals field type changes. Set match field.
(version_expr_head_hash, version_expr_head_eq): New functions.
(lang_finalize_version_expr_head): New function.
(lang_register_vers_node): Call lang_finalize_version_expr_head.
Search in hash table if not wildcard when looking for duplicates.
* emultempl/ppc64elf.em (new_vers_pattern): Don't bother with
duplicate checking. Initialize all fields of dot_entry from entry
with the exception of pattern and next.
2003-10-21 Nick Clifton <>
* ldlang.c (lang_memory_region_lookup): Add second parameter -
create - which is true if the region is being created. Issue
appropriate warning messages for finding and not finding
already created regions.
(lang_memory_default): Use DEFAULT_MEMORY_REGION.
(lang_leave_overlay_section): Likewise.
(lang_size_sections_1): Likewise.
Pass second parameter to lang_memory_region_lookup.
(lang_get_regions): Likewise.
* ldlang.h (DEFAULT_MEMORY_REGION): Define.
Update prototype for lang_memory_region_lookup.
* ldgram.y: Pass second parameter to lang_memory_region_lookup.
Use DEFAULT_MEMORY_REGION instead of "*default".
2003-10-20 Andrew Cagney <>
* pe-dll.c: Replace "struct sec" with "struct bfd_section".
2003-10-19 Marek Michalkiewicz <>
* Remove old (before GCC 3.3) emulations for AVR
target: avr1200, avr23xx, avr4433, avr44x4, avr85xx, avrmega103,
avrmega161, avrmega603. Default to avr2.
* Regenerate.
* configure.tgt: Likewise.
* emulparams/ Remove.
* emulparams/ Remove.
* emulparams/ Remove.
* emulparams/ Remove.
* emulparams/ Remove.
* emulparams/ Remove.
* emulparams/ Remove.
* emulparams/ Remove.
* scripttempl/ Remove.
2003-10-19 Andreas Schwab <>
* emultempl/ticoff.em (gld_${EMULATION_NAME}_list_options): Add
newline to message.
* deffilep.y: Remove commas from %token lines.
2003-10-18 Hans-Peter Nilsson <>
* emultempl/mmix-elfnmmo.em (mmix_before_allocation): Force linker
relaxation always; don't exclude relocatable linking. Adjust for
_bfd_mmix_prepare_linker_allocated_gregs renamed to
(mmix_after_allocation): Adjust for
_bfd_mmix_finalize_linker_allocated_gregs renamed to
* scripttempl/ Use ADDR (.text), not . - SIZEOF (.text).
* ldlang.c (lang_size_sections): Last, set _cooked_size for output
2003-10-16 Alan Modra <>
GENSCRIPTS and GEN_DEPENDS in place of these.
* Regenerate.
* Delete. Merge extra functionality to..
* emulparams/ (TEXT_START_ADDR, TARGET_PAGE_SIZE): Define.
* emulparams/ (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
* emulparams/ (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
* emulparams/ (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
* emulparams/ (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
2003-10-16 Alan Modra <>
* emultempl/ia64elf.em (gld${EMULATION_NAME}_after_parse): Don't
use $EMULATION_NAME to call bfd function.
2003-10-14 Danny Smith <>
* pe-dll.c (pe_implied_import_dll): Also scan .rdata sections
to identify data symbols.
2003-10-13 Richard Sandiford <>
definition from
(TEXT_DYNAMIC): Likewise
* emulparams/ (TEXT_DYNAMIC): Remove.
* emulparams/ (INITIAL_READONLY_SECTIONS): Remove.
* emulparams/ (SHLIB_TEXT_START_ADDR): Define.
(EXECUTABLE_SYMBOLS): Set __elf_header correctly for shared objects.
Define __program_header_table in terms of __elf_header.
2003-10-10 H.J. Lu <>
* (eelf64_ia64.c): Also depend on
* Regenerated.
* emulparams/ (EXTRA_EM_FILE): Set to ia64elf.
* emultempl/ia64elf.em: New.
2003-10-12 Kaz Kojima <>
* emulparams/ (OTHER_SECTIONS): Redefine.
2003-10-11 Hans-Peter Nilsson <>
* ld.texinfo (Builtin Functions) <DEFINED>: Say that only symbols
defined before the statement using DEFINED yield 1.
* ldexp.c (fold_name) <case DEFINED>: In lang_first_phase_enum,
call lang_track_definedness on symbol. In subsequent phases, use
lang_symbol_definition_iteration and lang_statement_iteration to
check whether the symbol was defined before the current statement.
(exp_fold_tree) <case etree_assign et al>: Call
lang_update_definedness before updating symbol type when setting
* ldlang.c (lang_definedness_table): New variable.
(lang_definedness_newfunc, lang_track_definedness)
(lang_symbol_definition_iteration, lang_update_definedness): New
(lang_init): Initialize lang_definedness_table and
(lang_finish): Destroy bfd_hash_table_free.
(lang_size_sections): Increment lang_statement_iteration.
(lang_do_assignments_1): New function with former
lang_do_assignments contents. Change recursive calls to call this
(lang_do_assignments): Evacuate contents. Increment
lang_statement_iteration, then just call lang_do_assignments_1.
* ldlang.h (struct lang_definedness_hash_entry)
(lang_statement_iteration, lang_track_definedness)
(lang_symbol_definition_iteration, lang_update_definedness):
2003-10-09 H.J. Lu <>
* scripttempl/ (__executable_start): Provide.
2003-10-09 Daniel Jacobowitz <>
* emulparams/ Define NO_SMALL_DATA.
* emulparams/, emulparams/,
emulparams/ Likewise.
2003-10-08 Alexandre Oliva <>
* ldlang.c (lang_size_sections_1): Use IGNORE_SECTION to tell
whether to skip test for no memory region.
2003-10-08 Nick Clifton <>
* lexsup.c (parse_args: OPTION_CALL_SHARED): Revise comment
describing defaults. Change default to report unresolved symbols
in object files as well.
2003-10-08 Hans-Peter Nilsson <>
* ldexp.c (fold_name) <case DEFINED>: Set section of result to
2003-10-07 Bob Wilson <>
zero for relocatable links.
2003-10-07 John David Anglin <>
* (HOSTING_LIBS): Define for hppa*-*-linux*.
2003-10-07 Nathan Sidwell <>
* ldwrite.c (unsplittable_name): New.
(clone_section): Strip existing numeric suffix. Only truncate names
for coff targets.
(split_sections): Use unsplittable_name.
2003-10-06 Nick Clifton <>
* lexsup.c (parse_args): Report unresolved symbols in shared
libraries when creating a dynamic executable. This is a
restoration of the default behaviour for previous versions of
the linker.
2003-10-06 Matt Thomas <>
* emulparams/ Remove OUTPUT_FORMAT.
* emulparams/ Add OUTPUT_FORMAT="elf32-hppa".
2003-10-06 Robert Millan <>
* configure.tgt: Match GNU/KNetBSD with new knetbsd*-gnu triplet.
2003-10-02 Ivan Warren <>
* pe-dll.c (make_one): Correct sym def order & pick right sym for
.idata$7 reloc.
2003-09-30 Chris Demetriou <>
* NEWS: Add an indication of the cutoff for 2.14.
2003-09-30 Chris Demetriou <>
* ldmain.c (get_emulation): Ignore "-mips64r2".
2003-09-03 Robert Millan <>
* Match GNU/KFreeBSD with new kfreebsd*-gnu
* configure.tgt: Likewise.
2003-08-29 Jafa <>
* emulparams/ (TEMPLATE_NAME): Define.
2003-08-21 Nick Clifton <>
* po/tr.po: Updated Turkish translation.
2003-08-20 Nick Clifton <>
* ldmain.c: Initialise the new fields in bfd_link_info to
* lexsup.c (enum option_values): New enum. Use this to
replace the hand coded values for the long switch options.
(ld_options): Add 'unresolved-symbols',
'warn-unresolved-symbols' and 'error-unresolved-symbols'.
(parse_args): Handle the new switches. Set the values of
unresolved_symbols_in_objects and
unresolved_symbols_in_shared_libs appropriately. If they were
not initialised by the command line, install default values.
* emultempl/elf32.em (handle_option): Update OPTION_GROUP and
-z defs to use the new fields in bfd_link_info.
* ld.texinfo: Document the new switches.
* NEWS: Mention this feature.
2003-08-15 Dmitry Diky <>
* (GENSCRIPTS_EXTRA): New script definition which
Rearrange all msp430 depends using this script.
* Regenerate.
* New file: Similar to, except
that the script to be run to generate the emulations can be passed
as an optional parameter instead of being computed from the
emulation name.
* emulparams/ New file: Combine all msp430 subdevice
definitions into one file.
* emulparams/msp430x*.sh: Removed.
2003-08-15 Nick Clifton <>
* ld.texinfo (Options): Put keywords for the -z option into a
table. Add more text describing what the -z now option does.
2003-08-14 Alan Modra <>
* dep-in.sed: Remove libintl.h.
* ( Unset LC_COLLATE.
* Regenerate.
2003-08-13 Alan Modra <>
* (libpath.exp): Only generate for first emulation.
(LIB_PATH): Correct order of paths. Don't add $tool_lib when
already present or when LIB_PATH is set to ":".
2003-08-12 Ian Lance Taylor <>
* ldmain.c (undefined_symbol): Change parameter name from `fatal'
to `error'. If only a warning, put warning in the reported
string. Consistently set failure flag when not a warning.
2003-08-08 Dmitry Diky <>
* Add xW42 and xE42 parts. Sort MPU list according to
gcc order.
* Regenerate.
* configure.tgt: Add extra emulations.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
2003-08-07 Danny Smith <>
* emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):
Change second (cmdline) arg to lang_add_entry to FALSE.
(set_pe_subsystem): Change second arg to lang_add_entry to TRUE.
2003-08-05 Christian Groessler <>
Jason Eckhardt <>
* configure.tgt: Recognize new target i860-*-coff.
* (ALL_EMULATIONS): Add ecoff_i860.o.
(ecoff_i860.c): New rule.
* emulparams/ New file.
* scripttempl/ New file.
* Regenerate.
2003-08-04 Nick Clifton <>
* emultempl/elf32.em (before_allocation): Prepend "warning: "
to messages produced for .gnu.warning.SYMBOL sections.
2003-08-04 Alan Modra <>
* emultempl/elf32.em (output_rel_find): Add "isdyn" param. Put
.rel.dyn before other reloc sections. Don't stop looking for reloc
sections on finding one that isn't allocated. Match .rel even when
placing .rela and vice versa, when setting last_rel and
last_rel_alloc for the first time. If no reloc sections in script,
prefer allocated section over non-alloc.
(gld${EMULATION_NAME}_place_orphan): Handle orphan .rel.dyn.
2003-07-29 Kaz Kojima <>
* emulparams/ (OTHER_SECTIONS): Don't include .stack
section for shared library.
* emulparams/ (OTHER_SECTIONS): Likewise.
* emulparams/ (OTHER_SECTIONS): Likewise.
2003-07-29 Stephane Carrez <>
* scripttempl/ Add gcc_except_table.
* scripttempl/ Likewise.
2003-07-28 Alan Modra <>
* emulparams/ (GOT): Fix for shell brace matching.
* emulparams/ (GOT): Don't merge .toc into .got for ld -r.
2003-07-27 Alan Modra <>
* ld.texinfo: Typo fixes. Document SUBALIGN.
* ldgram.y (opt_subalign): Add.
* ldlex.l (SUBALIGN): Recognize.
* ldlang.c (overlay_subalign): New var.
(lang_enter_overlay): Add subalign param.
(lang_enter_overlay_section): Pass overlay_subalign to
* ldlang.h (lang_enter_overlay): Update.
2003-07-24 Nick Clifton <>
* po/fr.po: Updated French translation.
2003-07-23 Stephane Carrez <>
* scripttempl/ Keep ctor/dtor sections; Take into
account .tramp sections;
* scripttempl/ Likewise.
2003-07-17 Charles Wilson <>
* ld/pe-dll.c: Add libcygwin to autofilter_liblist[]
2003-07-17 Nick Clifton <>
* po/es.po: New Spanish translation.
2003-07-11 Alan Modra <>
* po/ld.pot: Regenerate.
2003-07-10 Bob Wilson <>
* emulparams/ (OTHER_READONLY_SECTIONS): Replace .xt.lit
with new .got.loc section.
(OTHER_READWRITE_SECTIONS): Do not combine linkonce sections for
non-relocating links.
(OTHER_SECTIONS): Add .xt.lit here. Change it to keep linkonce
sections separate for non-relocating links; likewise for .xt.insn.
2003-07-10 Alexandre Oliva <>
2001-08-22 Alexandre Oliva <>
* emulparams/ Adjust to match kernel parameters.
2001-05-09 Alexandre Oliva <>
* (am33_2.0-*-linux*): Added.
* configure.tgt (am33_2.0-*-linux*): Likewise.
* emulparams/ New.
* (eelf32am33lin.c): New rule.
* Rebuilt.
2003-07-09 Alexandre Oliva <>
2001-04-17 Alexandre Oliva <>
* emulparams/ (TEMPLATE_NAME): Define.
2003-07-10 Alan Modra <>
* emulparams/ (OTHER_GOT_SECTIONS): Don't define.
(GOT): Define.
* emultempl/ppc64elf.em (stub_added): New static var.
(ppc_create_output_section_statements): Call ppc64_elf_init_stub_bfd.
(ppc_add_stub_section): Set stub_added.
(gld${EMULATION_NAME}_finish): Look for .got rather than .toc. Adjust
ppc64_elf_size_stubs call and test for stubs.
* scripttempl/ (GOT): Define and use.
2003-07-08 J"orn Rennecke <>
* emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_after_allocation):
Allow second call from ldemul_finish.
2003-07-04 J"orn Rennecke <>
* emulparams/ (STACK_ADDR): Don't define.
(OTHER_SECTIONS): Include .stack.
* emulparams/ (OTHER_SECTIONS): Likewise.
2003-07-02 Jakub Jelinek <>
* emulparams/ (OTHER_READONLY_SECTIONS): Don't include
.opd if -pie.
(OTHER_READWRITE_SECTIONS): Include .opd if -pie.
* scripttempl/ Use SHLIB_DATA_ADDR instead of DATA_ADDR
if -pie.
2003-06-28 Alan Modra <>
* ld.h: Convert to C90, remove unnecessary prototypes and casts.
Replace PTR with void *. Formatting.
* ldcref.c: Likewise.
* ldctor.c: Likewise.
* ldctor.h: Likewise.
* ldemul.h: Likewise.
* ldexp.c: Likewise.
* ldexp.h: Likewise.
* ldfile.c: Likewise.
* ldfile.h: Likewise.
* ldlang.c: Likewise.
* ldlang.h: Likewise.
* ldlex.h: Likewise.
* ldlex.l: Likewise.
* ldmain.c: Likewise.
* ldmain.h: Likewise.
* ldmisc.c: Likewise.
* ldmisc.h: Likewise.
* ldver.h: Likewise.
* ldwrite.c: Likewise.
* ldwrite.h: Likewise.
* lexsup.c: Likewise.
* mri.c: Likewise.
* mri.h: Likewise.
* pe-dll.c: Likewise.
* pe-dll.h: Likewise.
* deffilep.y: Likewise.
* deffile.h: Likewise. Don't include ansidecl.h.
* emulparams/ Remove unnecessary cast.
* emultempl/m68kcoff.em: Likewise.
* emultempl/m68kelf.em: Likewise.
* emultempl/ticoff.em: Remove lang_add_output_format declaration.
* sysdep.h: Don't include ansidecl.h.
* Run "make dep-am".
* Regenerate.
2003-06-27 Nick Clifton <>
* deffilep.y (def_file_add_directive): Cope with NUL seperated
directives. Fix reporting of unparseable directives.
(def_error): Check for a NULL def_filename.
2003-06-27 Alan Modra <>
* emultempl/aix.em: Convert to C90, remove unnecessary prototypes
and casts. Replace PTR with void *. Formatting.
* emultempl/alphaelf.em: Likewise.
* emultempl/armcoff.em: Likewise.
* emultempl/armelf.em: Likewise.
* emultempl/armelf_oabi.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/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/sh64elf.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/vanilla.em: Likewise.
* emultempl/xtensaelf.em: Likewise.
* Correct dependencies.
* Regenerate.
2003-06-25 Alan Modra <>
* ld.texinfo: Correct spelling of "relocatable".
* ldctor.c: Likewise.
* ldexp.c: Likewise.
* ldfile.c: Likewise.
* ldint.texinfo: Likewise.
* ldlang.c: Likewise.
* ldmain.c: Likewise.
* ldwrite.c: Likewise.
* lexsup.c: Likewise.
* emultempl/aix.em: Likewise.
* emultempl/alphaelf.em: Likewise.
* emultempl/armcoff.em: Likewise.
* emultempl/armelf_oabi.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/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/mmo.em: Likewise.
* emultempl/needrelax.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/sh64elf.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/xtensaelf.em: Likewise.
2003-06-24 Alan Modra <>
* emultempl/ppc32elf.em: Convert to C90.
2003-06-20 Alan Modra <>
* emultempl/ppc64elf.em: Convert to C90 function definitions, remove
unnecessary prototypes and casts.
2003-06-19 Alan Modra <>
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Dump out
statistics from ppc64_elf_build_stubs.
2003-06-19 Alan Modra <>
* emultempl/ppc64elf.em (build_section_lists): Check return status
from ppc64_elf_next_input_section.
2003-06-17 H.J. Lu <>
* ldlang.c (section_already_linked): Put back assignment of
2003-06-17 Rainer Keuchel <>
* pe-dll.c (generate_reloc): Catch and ignore an ARM_26D
2003-06-17 Loren James Rittle <>
* (*-*-freebsd*): Add known path for
if not produced by gcc.
2003-06-16 Hans-Peter Nilsson <>
* configure.tgt: Add specific case for cris-*-linux-gnu*
with crislinux emulation only.
2003-06-13 Robert Millan <>
* configure.tgt: Add i386-netbsd-gnu target.
2003-06-12 Richard Sandiford <>
* configure.tgt (mips*-sgi-irix6*): Add the o32 and n64 emulations
to $targ_extra_libpath.
2003-06-11 H.J. Lu <>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
2003-06-10 Doug Evans <>
* (ALL_EMULATIONS): Add em32relf.o.
* Regenerate.
2003-06-10 Richard Sandiford <>
* configure.tgt (h8300*): Add h8300sxn emulations.
* (ALL_EMULATIONS): Add eh8300sxn.o and eh8300sxnelf.o.
(eh8300sxn.c, eh8300sxnelf.c): New rules.
* Regenerate.
* emulparams/, emulparams/ New files.
* scripttempl/ New file.
2003-06-10 Alan Modra <>
2003-06-08 Alan Modra <>
* emultempl/ppc64elf.em (emit_stub_syms, toc_section): New vars.
(build_toc_list): New function.
(gld${EMULATION_NAME}_finish): Call build_toc_list and
ppc64_elf_reinit_toc. Adjust ppc64_elf_build_stubs call.
(PARSE_AND_LIST_LONGOPTS): Add emit-stub-syms.
2003-06-05 Roland McGrath <>
* emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Remove
extra \t in -z noexecstack line.
2003-05-23 Jakub Jelinek <>
* ldgram.y (phdr_type): Grok PT_GNU_STACK.
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
-z execstack and -z noexecstack.
(gld${EMULATION_NAME}_list_options): Likewise.
* scripttempl/ If not -r, discard .note.GNU-stack section.
2003-06-03 Michael Snyder <>
and Bernd Schmidt <>
and Alexandre Oliva <>
* Add new emulations for h8300sx.
* Regenerate.
* configure.tgt: Add new emulations.
* emulparams/ New emulation.
* emulparams/ Ditto.
* scripttempl/ Ditto.
2003-06-03 H.J. Lu <>
* ldmisc.c: Include "bfdlink.h".
* Rebuild dependency.
* Regenerated.
2003-06-03 Kaz Kojima <>
* emulparams/ (GENERATE_PIE_SCRIPT): Set to yes.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewize.
2003-06-02 Fabrizio Gennari <>
* pe-dll.c (fill_edata): Scan table pe_dll->exports, which is
sorted alphabetically, instead of exported_symbols, which is
sorted by ordinal.
2003-05-30 Ulrich Drepper <>
Jakub Jelinek <>
* lexsup.c (OPTION_PIE): Define.
(ld_options): Add -pie and --pic-executable options.
(parse_args): Handle OPTION_PIE.
* ldmain.c (main): Initialize link_info.pie and
* Generate PIE scripts.
* ld.texinfo: Document -pie and --pic-executable options.
* emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
(gld${EMULATION_NAME}_place_orphan): Likewise.
(gld${EMULATION_NAME}_get_script): Include PIE scripts.
* scripttempl/ In PIE scripts set . the same way as in
shared scripts.
* emulparams/ (GENERATE_PIE_SCRIPT): Set to yes.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/ (GENERATE_PIE_SCRIPT): Likewise.
2003-05-30 H.J. Lu <>
* Create tmpdir/libpath.exp.
2003-05-30 Nick Clifton <>
* emultempl/armelf.em (arm_elf_before_allocation): Replace ASSERT
with a test for a NULL bfd_for_interworking.
2003-05-29 Jason Thorpe <>
* (*-*-netbsd*): Set HOSTING_CRT0 and HOSTING_LIBS
correctly for more recent versions of NetBSD.
(alpha*-*-netbsd*): Remove.
(i[3-7]86-*-netbsd*): Remove.
2003-05-29 Nick Clifton <>
* emultempl/pe.em: Include "safe-ctype.h" instead of <ctype.h>.
2003-05-26 Maciej W. Rozycki <>
* emulparams/ Set TEXT_START_ADDR to 0x120000000 to
trap on pointer crops.
2003-05-21 Marcus Comstedt <>
* configure.tgt: Check for a target triplet of shl-...-netbsdelf
as well as shle-...-netbsdelf.
2003-05-16 Kelley Cook <>
* Accept i[3-7]86 variants.
* configure.tgt: Likewise.
2003-05-15 H.J. Lu <>
* emulparams/ Don't set COMMONPAGESIZE for now.
2003-05-09 Daniel Jacobowitz <>
* (ALL_EMULATIONS): Add earmelfb.o and earmelfb_linux.o.
(earmelfb.c, earmelfb_linux.c): New rules.
* Regenerated.
* emulparams/, emulparams/ New files.
* configure.tgt: Add armeb-elf and arm*b-*-linux-gnu.
2003-05-09 Nick Clifton <>
* ldlang.c (lang_size_sections_1): Default to generating a
fatal error message if a loadable section is not allocated
to a memory region when regions are defined.
2003-05-09 Alan Modra <>
* (em68hc11elf.c): Correct dependencies.
(em68hc11elfb.c, em68hc12elf.c, em68hc12elfb.c): Likewise.
* Regenerate.
* emultempl/elf32.em (find_exp_assignment): Adjust for changed
bfd_elf_record_link_assignment name.
2003-05-07 Alexandre Oliva <>
* ldmain.h (overflow_cutoff_limit): Declare.
* ldmain.c (overflow_cutoff_limit): Define, initialized to 10.
(reloc_overflow): Limit error messages based on it.
* lexsup.c (parse_args) <OPTION_VERBOSE>: Set cutoff to
2003-05-05 Alan Modra <>
* ldlex.l: Accept C style comments in version scripts.
2003-04-28 H.J. Lu <>
* ldlang.c (lang_process): Add the relax finalize pass.
* ldmain.c (main): Initialize link_info.relax_finalizing to
2003-04-24 Roland McGrath <>
* ldgram.y (phdr_type): Grok PT_TLS and PT_GNU_EH_FRAME names.
If a name string is unknown, give an error rather than crashing later.
2003-04-23 Dhananjay Deshpande <>
* (ALL_EMULATIONS): Add eh8300hn.o, eh8300sn.o,
eh8300hnelf.o, eh8300snelf.o and respective rules.
* Regenerate.
* configure.tgt: Add h8300hn, h8300sn, h8300hnelf, h8300snelf
* emulparams/ New
* emulparams/ New
* emulparams/ New
* emulparams/ New
* scripttempl/ new
* scripttempl/ new
2003-04-23 H.J. Lu <>
* ldmain.c (link_callbacks): Initialize error_handler.
* ldmisc.c (error_handler): New function.
* ldmisc.h (error_handler): New prototype.
2003-04-21 Stephane Carrez <>
* emulparams/ Use m68hc1xelf.em extra.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
2003-04-19 Stephane Carrez <>
* emultempl/m68hc1xelf.em: New file to generate far trampolines on
68HC11 and 68HC12.
(LDEMUL_BEFORE_ALLOCATION): Override to gather the trampolines to
(LDEMUL_FINISH): Override to generate the trampolines after gc and
linker relaxation.
stub file for trampolines.
--no-trampoline and --bank-window to control the memory bank window.
2003-04-18 H.J. Lu <>
* ldfile.c (ldfile_add_library_path): Remove the unused
2003-04-18 Andrew Haley <>
* scripttempl/ (__data, __rdata): New.
2003-04-16 Nick Clifton <>
* scripttempl/ Add .jcr section mapping.
2003-04-15 H.J. Lu <>
From Debian by Jack Howarth <>:
* ldlex.l: Use YY_CURRENT_BUFFER instead of yy_current_buffer.
2003-04-15 Rohit Kumar Srivastava <>
* h8-doc.texi: Replace occurrances of 'Hitachi' with 'Renesas'.
* ld.texinfo: Likewise.
2003-04-14 Alan Modra <>
From Prashanth Tamraparni <>
* scripttempl/ (CTOR): Handle crtbeginS.o, crtendS.o and
other variants of crtbegin.o, crtend.o.
(DTOR): Likewise.
* scripttempl/ (ctors, dtors): Likewise.
* scripttempl/ (CTOR, DTOR): Likewise.
* scripttempl/ (CTOR, DTOR): Likewise.
* scripttempl/ (CTOR, DTOR): Likewise.
* scripttempl/ (CTOR, DTOR): Likewise.
* scripttempl/ (CTOR, DTOR): Likewise.
* scripttempl/ (ctors, dtors): Likewise.
* scripttempl/ (CTOR, DTOR): Likewise.
2003-04-09 Dmitry Diky <>
* scripttempl/ Add initX, finiX, ctors, dtors
sections to respect C++ constructor/destructor. Add ctors/dtors
start/stop definitions.
* scripttempl/ Likewise.
2003-04-06 Nick Clifton <>
* ld.texinfo (Options): Add a reminder of the target specific
nature to the description of the i386 PE specific options, for
readers who have not read all the way through the manual.
2003-04-04 Svein E. Seldal <>
* configure.tgt: Fixed bug in list of targ_extra_emuls.
* emulparams/ (SCRIPT_NAME): Namespace
cleanup. Replace s/c4x/tic4x and s/c3x/tic3x/
* emulparams/ Ditto
* emulparams/ Ditto
* scripttempl/ Ditto
2003-04-03 Nick Clifton <>
* NEWS: Mention support for Xtensa architecture.
2003-04-02 Nick Clifton <>
* pe-dll.c (pe_detail_list): arm-pe targets use underscores.
2003-04-01 Danny Smith <>
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
Don't call pe_dll_build_section() if link_info.relocateable.
(gld_${EMULATION_NAME}_finish): Don't call pe_dll_fill_sections()
if link_info.relocateable.
2003-04-01 Fabrizio Gennari <>
* pe-dll.c (process_def_file): Don't create an export
section if there are no exports and we're building an exe
(pe_dll_build_sections): Ditto
(pe_dll_fill_sections): Conditionalize setting
abfd->dll true on info->shared
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
If i386pe or armpe, call pe_dll_build_section()
for both exe's and dll's, not just dll's.
(gld_${EMULATION_NAME}_finish): For all targets except
shpe and mipspe, call pe_dll_fill_sections() for both
exe's and dll's, not just dll's.
2003-04-02 Bob Wilson <>
* emulparams/ Remove comment indicating that this is
a generated file.
2003-04-01 Bob Wilson <>
* (ALL_EMULATIONS): Add eelf32xtensa.o.
(eelf32xtensa.c): New target.
* Regenerate.
* configure.tgt: Handle xtensa-*-*.
* gen-doc.texi: Set XTENSA variable.
* ld.texinfo: Set XTENSA variable. Add new Xtensa node.
* emulparams/ New file.
* emulparams/ Likewise.
* emultempl/xtensaelf.em: Likewise.
* scripttempl/ Likewise.
2003-04-01 Jakub Jelinek <>
* configure.tgt (powerpc*-*-linux*): Add elf32ppc to ppc64
targ_extra_libpath. Add elf64ppc to ppc targ_extra_libpath
if --enable-64-bit-bfd.
2003-04-01 Nick Clifton <>
* emulparams/ (OTHER_READONLY_SECTIONS): Change name of
note section.
* emulparams/ (OTHER_READONLY_SECTIONS): Change
name of note section.
2003-03-31 Alexandre Oliva <>
* ld.texinfo (-Tbss, -Tdata, -Ttext): Document in terms of
2003-03-31 David Heine <>
* ldfile.c (ldfile_add_library_path): Always allocate space for
the filename.
* ldlang.c (lang_register_vers_node): Free the node if it cannot
be used.
* ldmain.c (set_scripts_dir): Always free the constructed
directory name.
(add_keepsyms_file): Fix memory leak.
* ldmisc.c (vfinfo): Likewise.
* lexsup.c (parse_args): Likewise.
2003-03-25 Stan Cox <>
Nick Clifton <>
Contribute support for Intel's iWMMXt chip - an ARM variant:
* emulparams/ (OTHER_READONLY_SECTIONS): Define.
* emulparams/ (OTHER_READONLY_SECTIONS): Define.
* scripttempl/ (.data): Ensure 8 byte alignment.
(.bss): Likewise.
2003-03-25 Alexandre Oliva <>
* ldmain.h (ld_canon_sysroot, ld_canon_sysroot_len): Declare.
* ldmain.c (ld_canon_sysroot, ld_canon_sysroot_len): Define.
(main): Initialize them.
* ldfile.c: Include pathnames.h.
(is_sysrooted_pathname): New.
(ldfile_add_library_path): Use it.
(ldfile_open_file_search): Likewise. Use IS_ABSOLUTE_PATH. Don't
search_dirs if given an absolute pathname.
(ldfile_open_file): Issue error message for sysrooted
absolute pathnames.
* Updated dependencies.
* Rebuild.
2003-03-24 Daniel NĂ©ri <>
* ld.texinfo: Rename all occurances of C54X to TIC54X.
2003-03-19 Andreas Schwab <>
* ldfile.c (ldfile_try_open_bfd): Pop lexer start condition after
2003-03-18 Danny Smith <>
* deffilep.y (opt_base): If no number given, set to default
(-1), not 0.
2003-03-13 Danny Smith <>
* deffilep.y (def_import): Use default extension of "dll"
if no extension provided in parsed IMPORT definition.
* deffilep.y (def_lex): Revert 2003-03-12 change.
(dot_name): New id type and rule.
(expline): Use instead of ID.
(opt_equal_name): Likewise.
2003-03-12 Danny Smith <>
* deffilep.y (def_lex): Accept '.' as valid non-lead char.
2003-03-07 Christopher Faylor <>
* configure.tgt: Add NATIVE_LIB_DIRS for cygwin target back after
apparent accidental removal on 2003-01-06.
2003-03-04 Dmitry Diky <>
* Add new devices x1122 x1132 emulation
* configure.tgt: Likewise.
* Regenerate.
* emulparams/ New file.
* emulparams/ New file.
2003-03-03 Alexandre Oliva <>
* ldmain.c (set_scripts_dir): Look for relative to TOOLBINDIR as
* ldfile.h (struct search_dirs): Added sysrooted field.
* ldlang.h (struct lang_input_statement_struct): Likewise.
* ldfile.c (ldfile_add_library_path): Mark sysrooted paths.
(ldfile_open_file_search): Look for sysrooted filename starting
with / in ld_sysroot instead of in the current directory. Clear
sysrooted flag if it's found in the current directory. Set it
from the search directory's sysrooted flag where it is found
* ldlang.c (ldlang_sysrooted_script): New static variable.
(new_afile): Mark search_file_enums as sysrooted if
(load_symbols): Set ldlang_sysrooted_script according to the
script's sysrooted field while processing it.
* ld.texinfo: Document INPUT behavior in sysroot.
2003-03-02 Danny Smith <>
* scripttempl/ Use PROVIDE with etext, end, _end,
2003-03-03 Alan Modra <>
* emulparams/ (EXTRA_EM_FILE): Define.
* emultempl/alphaelf.em: New file.
2003-03-01 Alan Modra <>
* ldemul.c: Include getopt.h.
* emultempl/elf32.em: Include getopt.h earlier.
* emultempl/ticoff.em: Likewise.
2003-02-28 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
support when scripts read from files.
2003-02-28 Alan Modra <>
* ldemul.c (ldemul_parse_args): Return FALSE by default.
* ldemul.h (struct ld_emulation_xfer_struct): Update parse_args
* ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
(ldemul_parse_args): Return bfd_boolean. Formatting.
* ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
(ldemul_parse_args): Adjust.
(struct ld_emulation_xfer_struct): Add add_options and handle_option.
Return bfd_boolean from parse_args.
* lexsup.c (parse_args): Malloc shortopts, longopts and
really_longopts. Call ldemul_add_options and ldemul_handle_option.
* emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
(gld${EMULATION_NAME}_handle_option): Likewise.
(ld_${EMULATION_NAME}_emulation): Adjust initializer.
* emultempl/armcoff.em: As for aix.em, but remove parse_args.
* emultempl/beos.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/elf32.em: Likewise. Don't duplicate long options either.
(gld${EMULATION_NAME}_add_sysroot): Prototype.
* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
* 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/mipsecoff.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/vanilla.em: Likewise.
* emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
2003-02-25 Alexandre Oliva <>
* emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
memory allocation error.
* (ldmain.o): Define TOOLBINDIR.
* Rebuilt.
* ldmain.c (ld_sysroot): Try to set from TOOLBINDIR too.
2003-02-21 Bob Wilson <>
* ldlang.c (lang_size_sections_1): Add CHECK_REGIONS argument and only
call os_region_check when it is set.
(lang_size_sections): Add CHECK_REGIONS argument and pass it through to
(lang_process): Change lang_size_sections calls to set CHECK_REGIONS
only for the last call, not on every relaxation iteration.
* ldlang.h (lang_size_sections): Update prototype.
* pe-dll.c (pe_dll_fill_sections): Set CHECK_REGIONS argument in calls
to lang_size_sections.
(pe_exe_fill_sections): Likewise.
* emultempl/elf32.em (gld${EMULATION_NAME}_finish): Likewise.
* emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
* emultempl/ppc64elf.em (ppc_before_allocation): Likewise.
(ppc_layout_sections_again): Likewise.
2003-02-21 Bob Wilson <>
* gen-doc.texi: Set ARM and HPPA variables.
* ld.texinfo: Fix typos and obvious texinfo mistakes. Make section
title capitalization more consistent. Add missing menu entries for
machine-specific sections and conditionalize them consistently.
Conditionalize text that is irrelevant when SingleFormat is set.
Add @group divisions to improve page breaks in long examples.
Use @iftex/@ifnottex instead of @iftex/@ifinfo so that HTML output
is correct. Remove "FIXME" comment about not using
@raisesections/@lowersections. Use @raisesections/@lowersections
consistently for machine-specific sections. Change to be more polite
about poor bug reports. Replace FDL appendix with include of fdl.texi.
Move WIN32 node to match its order in the menus.
* fdl.texi: New file.
2003-02-20 Alexandre Oliva <>
* (TARGET_SYSTEM_ROOT): Set default to
${exec_prefix}/${target_alias}/sys-root. Match explicit
'${exec_prefix}' (in addition to the expansion thereof) as
* configure: Rebuilt.
2003-02-20 Phil Edwards <>
* ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
2003-02-20 Harri Porten <>
* ldgram.y (vers_defns): Allow optional trailing semicolon in
2003-02-18 Alan Modra <>
* emultempl/ppc32elf.em: New file.
* emulparams/ (EXTRA_EM_FILE): Define.
* (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
(eelf32lppcnto.c): Likewise.
(eelf32lppcsim.c): Likewise.
(eelf32ppcnto.c): Likewise.
(eelf32ppc.c): Likewise.
(eelf32ppc_fbsd.c): Likewise.
(eelf32ppcsim.c): Likewise.
(eelf32ppclinux.c): Likewise.
* Regenerate.
2003-02-18 Alan Modra <>
* ld.texinfo: Remove spaces between @samp and opening brace.
2003-02-18 Alan Modra <>
* emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
hash creator.
(ppc_before_allocation): Don't do optimizations if wrong hash table.
(gld${EMULATION_NAME}_finish): Ditto.
2003-02-17 Nick Clifton <>
* ldmain.c (main) Default allow_shlib_undefined to true.
* lexsup.c (ld_options): Add --no-allow-shlib-undefined.
(parse_args): Parse the new switch.
* ld.texinfo: Document new switch and default behaviour of
allowing undefined symbols in shared libraries.
2003-02-11 Dmitry Diky <>
* scripttempl/ Add new data anchors definitions.
* scripttempl/ Likewise.
2003-02-11 Uwe Stieber <>
* configure.tgt: Add support for kaOS as cross build target
2003-02-10 John Daivid Anglin <>
* hppaelf.em (group_size): Change default back to 1.
2003-02-09 Alan Modra <>
* emultempl/ppc64elf.em: Add "no-tls-optimize" option and support code.
2003-02-07 John David Anglin <>
* hppaelf.em (group_size): Change default to -1.
2003-02-07 Nick Clifton <>
* emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Remove 'n' short
(PARSE_AND_LIST_LONGOPTS): Add duplicate entry for
no-pipeline-knowledge. This will prevent the getopt package from
thinking that there are any shorter abbreviations for
2003-02-07 Jakub Jelinek <>
* (LIB_PATH): Don't append LIBPATH_SUFFIX to paths
which already have it. Avoid duplicates.
2003-02-06 Jakub Jelinek <>
* emulparams/ (LIBPATH_SUFFIX): Set to 64.
* emulparams/ (LIBPATH_SUFFIX): Likewise.
* emulparams/ (LIBPATH_SUFFIX): Set instead of suffix.
2003-02-05 Alan Modra <>
* emultempl/ppc64elf.em (ppc_before_allocation): Size sections then
call ppc64_elf_tls_optimize.
2003-02-03 Daniel Jacobowitz <>
* emultempl/elf32.em: Move gld${EMULATION_NAME}_add_sysroot
outside of GNU/Linux conditional.
2003-01-28 Ralf Habacker <>
* deffilep.y (def_get_module): New function: locate an already
added module.
* deffile.h (def_get_module): New prototype.
* pe-dll.c (pe_implied_import_dll): Add code to prevent importing
a dll multiple times.
2003-01-23 Alan Modra <>
* emultempl/sh64elf.em: Include elf32-sh64.h.
(sh64_elf_${EMULATION_NAME}_before_allocation): Adjust for changed
(sh64_elf_${EMULATION_NAME}_after_allocation): Likewise.
2003-01-23 Wu Yongwei <>
* ld.texinfo: Remove an extra "i" in --dll-search-prefix.
* emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Move a
cross-80th-column-margin "an" to the next line.
2003-01-21 Nick Clifton <>
* emulparams/ Rename to ...z
* emulparams/ ...this.
* (etic3xcoff_onchip.c): Fix name of generated C file.
* Regenerate.
2003-01-21 Fabio Alemagna <>
* configure.tgt: Handle i[3456]86-*-aros*
2003-01-19 Svein E. Seldal <>
* Added etic3xcoff.o and etic4xcoff_onchip.o
* Regenerate
* configure.tgt: Added extra target emulations
* emulparams/ Remove old settings
* emulparams/ Ditto
* emulparams/ Added new
* scripttempl/ Revise and combine both c3x and c4x
* scripttempl/ Remove
2003-01-17 Andreas Jaeger <>
* emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Do not
skip ':'.
2003-01-16 Alan Modra <>
* Regenerate.
2003-01-14 Charles Wilson <>
* ld.texinfo (node WIN32): Some clarifications
and formatting fixups.
2003-01-09 Chris Demetriou <>
* ldmain.c (get_emulation): Sort -mipsNN checks in the usual
order, and handle (ignore) -mips32r2.
2003-01-09 Daniel Jacobowitz <>
* ldmain.c (main): Make sure ld_sysroot is initialized.
2003-01-06 Daniel Jacobowitz <>
* (eelf32iq10.c): Fix tab/whitespace mixup.
* (ldmain.o): Add @TARGET_SYSTEM_ROOT_DEFINE@.
(GENSCRIPTS): Add @use_sysroot@.
* Regenerated.
* Move setting of NATIVE_LIB_DIRS to...
* configure.tgt: ... here. Use ${target} instead of ${host}
* Add --with-sysroot.
* configure: Regenerated.
* Accept use_sysroot option. Set new variables
NATIVE and USE_LIBPATH. Prepend "=" to directory names if
$use_sysroot. Don't search $tool_lib if $use_sysroot.
* ldfile.c (ldfile_add_library_path): Handle leading '='.
* ldmain.c (TARGET_SYSTEM_ROOT): Define if not defined.
(ld_sysroot): New variable.
(main): Initialize ld_sysroot.
* ldmain.h (ld_sysroot): New extern.
* emultempl/elf32.em: Use NATIVE and USE_LIBPATH instead of
(gld${EMULATION_NAME}_add_sysroot): New function.
(gld${EMULATION_NAME}_check_ld_so_conf): Use it. Honor ld_sysroot.
(gld${EMULATION_NAME}_after_open): Likewise. Only search
environment variables if $NATIVE.
* ld.texinfo (Options): Mention "=" prefix in the description of -L.
* NEWS: Mention --with-sysroot.
* emulparams/ Set NATIVE and LIBPATH_SUFFIX
instead of setting LIB_PATH.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Add "=" prefixes to LIB_PATH.
* emulparams/ Add "=" prefixes to LIB_PATH.
2003-01-03 Charles Wilson <>
* pe-dll.c (autofilter_symbollist): Add cygwin_crt0.
2003-01-04 Daniel Jacobowitz <>
* (ldmain.o): Pass BINDIR.
* Regenerated.
* ldmain.c (set_scripts_dir): Use make_relative_prefix for the first
search path.
2003-01-02 Ben Elliston <>
* (ALL_EMULATIONS): Add eelf32iq2000.o.
(eelf32iq2000.c): New target.
* Regenerate.
* configure.tgt: Handle iq2000-*-elf.
* emulparams/ New file.
* emulparams/ New file.
* scripttempl/ New file.
2003-01-02 Charles Wilson <>
* pe-dll.c (autofilter_symbollist): Add do_pseudo_reloc
and _pei386_runtime_relocator to the exclude list.
2003-01-01 Kazu Hirata <>
* ldfile.c: Fix comment typos.
* ldlang.c: Likewise.
* mri.c: Likewise.
* pe-dll.c: Likewise.
2003-01-01 Daniel Jacobowitz <>
Suggested by Manfred Hollstein <>:
* (ld.1): Depend on configdoc.texi
and ldver.texi.
* Regenerated.
2002-12-24 Dmitry Diky <>
* Add msp430 target.
* configure.tgt: Likewise.
* Regenerate.
* emulparams/msp430x???.sh: New files. Linker script parameters
for various msp430 configurations.
* gen-doc.texi: Enable msp430 documenation.
* ld.texinfo: Document msp430 sections.
* scripttempl/ New file. Linker script for msp430.
* scripttempl/ New file. Linker script for msp430.
2002-12-30 Ralf Habacker <>
Charles Wilson <>
* (HAVE_REALPATH): New entry.
(HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H): Removed: obsolete.
2002-12-30 Ralf Habacker <>
* ld.texinfo: New win32 topics: 'symbol aliasing' and 'export dll
2002-12-23 Alan Modra <>
* ldmain.c (main): Init "strip_discarded".
* lexsup.c (OPTION_STRIP_DISCARDED): Define.
(ld_options): Add "strip-discarded" and "no-strip-discarded".
(parse_args): Handle them.
2002-12-23 Nick Clifton <>
* ld.h (struct args_type): Add new field
* ldmain.c (main): Initialise 'accept_unknown_input_architecture'
to false.
* ldlang.c (lang_check): Pass accept_unknown_input_architecture to
* ldfile.c (ldfile_try_open_bfd): Likewise.
* lexsup.c (ld_options): Add new command line switch
--accept-unknown-input-architecture and its inverse.
(parse_args): Handle --accept-unknown-input-architecture.
* ld.texinfo: Document new linker option.
* NEWS: Mention new linker option.
2002-12-20 Alan Modra <>
* ldmain.c (main): Re-order link_info initialization. Init all
2002-12-19 Charles Wilson <>
* ld.texinfo: Clarify and extend the documentation
in the Machine Dependent, WIN32 section.
2002-12-18 Ralf Habacker <>
* ld.texinfo: Add win32 machine depending section.
* gen-doc.texi: Enable win32 machine depending section.
* Add win32 library search path.
2002-12-17 Ralf Habacker <>
* emultempl/pe.em (pe_find_data_imports): Don't search for data
import when auto-import is disabled.
2002-12-17 Danny Smith <>
* emultempl/pe.em (..._recognized_file): Use LD_PATHMAX+1 to
account for trailing '\0'.
2002-12-17 Nick Clifton <>
* emultempl/pe.em (longopts): Duplicate entry for --compact-implib
so that it is not confused with -c.
2002-12-13 Ralf Habacker <>
Charles Wilson <>
* Add check for realpath function.
* configure: Regenerate.
* Regenerate.
* aclocal.m4: Regenerate.
* deffile.h: Add .data field to def_file_import
* pe-dll.c (pe_proces_import_defs): Use .data field of
def_file_import structure to initialize flag_data field of
def_file_export structure.
(pe_implied_import_dll): New variables exp_funcbase and
[data|bss]_[start|end]. Use DLL's internal name to set dll_name,
not filename (which may be a symlink). Scan the sections and
initialize [data|bss]_[start|end]. When scanning the export
table, skip _nm_ symbols, and mark any symbols whose rva indicates
that it is in the .bss or .data sections as data.
* sysdep.h: Include limits.h and sys/param.h, and define
LD_PATHMAX as appropriate. Also define REALPATH as realpath if it
exists, NULL otherwise.
* emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Call
pe_process_import_defs before pe_find_data_imports, so that
auto-import will check the virtual implib as well as "real"
(gld_${EMULATION_NAME}_recognized_file): Use REALPATH to follow
symlinks to their target; check that the target's extension is
.dll before calling pe_implied_import_dll(), not the filename
itself (which may be a symlink).
2002-12-10 Alan Modra <>
* emultempl/elf32.em (struct orphan_save): Add os_tail field.
(gld${EMULATION_NAME}_place_orphan): Re-order output_section_statement
list too.
2002-12-08 Alan Modra <>
* ldlang.h: Formatting.
2002-12-07 Alan Modra <>
* ldlang.c (init_os): Ensure sections mentioned in load_base
are initialized.
2002-12-05 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Set
load_base for orphans that follow a section with load_base set.
2002-12-01 H.J. Lu <>
* ld.texinfo: Remove the extra `;' in sample version script.
2002-11-30 Alan Modra <>
* Correct dynamic-linker for powerpc64 hosts.
* (eelf32ppcwindiss.c): Correct dependencies.
* Regenerate.
* ld.h, ldcref.c, ldctor.c, ldctor.h, ldemul.c, ldemul.h, ldexp.c,
ldexp.h, ldfile.c, ldfile.h, ldgram.y, ldlang.c, ldlang.h, ldmain.c,
ldmain.h, ldmisc.c, ldwrite.c, lexsup.c, mri.c, pe-dll.c, pe-dll.h,
emulparams/, emultempl/aix.em, emultempl/armcoff.em,
emultempl/armelf.em, emultempl/armelf_oabi.em, emultempl/beos.em,
emultempl/elf32.em, emultempl/generic.em, emultempl/gld960.em,
emultempl/gld960c.em, emultempl/hppaelf.em, emultempl/linux.em,
emultempl/lnk960.em, emultempl/m68kcoff.em, emultempl/mipsecoff.em,
emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em, emultempl/mmo.em,
emultempl/needrelax.em, emultempl/pe.em, emultempl/ppc64elf.em,
emultempl/sh64elf.em, emultempl/sunos.em, emultempl/ticoff.em: Replace
boolean with bfd_boolean, true with TRUE, false with FALSE. Simplify
comparisons of bfd_boolean vars with TRUE/FALSE. Formatting.
2002-11-27 David O'Brien <>
* Fix generic FreeBSD configuration entry.
2002-11-27 H.J. Lu <>
* ld.texinfo: Add the missing `;' to sample version scripts.
2002-11-20 Alan Modra <>
* emulparams/ (SEGMENT_SIZE): Don't define.
2002-11-14 Egor Duda <>
* ldmain.c (main): Make runtime relocs disabled by default. Remove
assignment which has no effect.
* pe-dll.h (pe_create_import_fixup): Change prototype.
* pe-dll.c (make_runtime_pseudo_reloc): New function.
(pe_create_runtime_relocator_reference): Ditto.
(pe_create_import_fixup): Handle relocations with non-zero addends.
* emultempl/pe.em: Add options --enable-runtime-pseudo-reloc and
(make_import_fixup): Handle relocations with non-zero addends. Create
an external reference to _pei386_runtime_relocator symbol if at least
one pseudo reloc was created.
* ld.texinfo: Document --enable-runtime-pseudo-reloc and
--disable-runtime-pseudo-reloc options.
2002-11-12 Earl Chew <>
* ldlang.c (lang_add_section): Discard debugging sections that have
been marked SEC_EXCLUDE.
2002-11-12 Nick Clifton <>
* (ALL_LINGUAS): Add da.
* configure: Regenerate.
* po/da.po: New Danish translation.
2002-11-12 Alan Modra <>
* emultempl/ppc64elf.em (ppc_before_allocation): New function.
(gld${EMULATION_NAME}_finish): Run discard_info for relocatable
* emultemp/hppaelf.em ((gld${EMULATION_NAME}_finish): Likewise.
2002-11-11 Christopher Faylor <>
* configure.tgt (LIB_PATH): Default to searching w32api directory under
2002-11-11 Charles Wilson <>
* pe-dll.c (autofilter_liblist): add libmingwex and libgcj to the list
of restricted auto-export libs.
2002-11-11 Charles Wilson <>
* pe-dll.c (autofilter_liblist): Generalize library names to catch more
creative library naming instances like, e.g., libstdc++-2.a.
2002-11-06 Alexandre Oliva <>
* emulparams/ (TEXT_DYNAMIC): Define.
* emulparams/ (TEXT_DYNAMIC): Likewise.
2002-11-07 Danny Smith <>
* deffilep.y (def_lex): Handle '@' as first character of an ID.
* pe-dll.c (auto-export): Filter on "_imp_" prefix, not "_imp__".
(make_one): Don't prefix decorated fastcall symbols with '_'.
(pe_process_import_defs): Likewise.
* emultempl/pe.em (pe_fixup_stdcalls): Don't fixup fastcall
symbols to cdecl names or vise-versa.
2002-10-13 Eric Kohl <>
* pe-dll.c (process_def_file): Handle fastcall symbols when
generating undecorated aliases. Don't prefix decorated fastcall
symbols with '_'.
(fill_exported_offsets): Don't prefix decorated fastcall symbols
with '_'.
2002-10-29 Daniel Jacobowitz <>
* emultempl/aix.em: Use include <> for generated headers.
* emultempl/beos.em: Likewise.
* emultempl/elf32.em: Likewise.
* emultempl/pe.em: Likewise.
* ldctor.c: Likewise.
* ldexp.c: Likewise.
* ldfile.c: Likewise.
* ldlang.c: Likewise.
* ldlex.c: Likewise.
* ldlex.l: Likewise.
* ldmain.c: Likewise.
* ldmisc.c: Likewise.
* ldwrite.c: Likewise.
* lexsup.c: Likewise.
* mri.c: Likewise.
* pe-dll.c: Likewise.
2002-10-23 Jakub Jelinek <>
* emultempl/elf32.em (place_orphan): Don't put non-allocated .rel*
sections into .rel{,a}.dyn.
2002-10-23 Nick Clifton <>
* lexsup.c (OPTION_NO_OMAGIC): Define.
(ld_options): Add "no-omagic" option.
(parse_args): Parse --no-omagic.
* ld.texinfo: Document --no-omagic.
* NEWS: Mention new option.
2002-10-21 Danny Smith <>
* scripttempl/ (__RUNTIME_PSEUDO_RELOC_LIST__,
__RUNTIME_PSEUDO_RELOC_LIST_END__): Add only when relocating.
2002-10-22 Alexandre Oliva <>
* emulparams/ Set ELFSIZE according to
emulation name. Set LIB_PATH only for native tools, and
search the ABI-specific versions of NATIVE_LIB_DIRS before the
.../lib variants, not instead of them. Mostly copied from...
* emulparams/ ... here. Fixed typo.
* emulparams/ Backed out.
* emulparams/ Import again.
* emulparams/ Likewise.
2002-10-17 Alexandre Oliva <>
* emulparams/ (LIB_PATH): Set to /usr/lib32.
* emulparams/ here.
(GENERATE_SHLIB_SCRIPT): Deleted as redundant.
* emulparams/ Delete redundant unsets.
* emulparams/ New file. Extend by overiding ELFSIZE and LIB_PATH.
* emulparams/ Bring in definitions from
* emulparams/ Bring in definitions from
2002-10-16 Jakub Jelinek <>
* configure.tgt (s390x-*-linux*): Add elf_s390 emulation.
(s390-*-linux*): Add elf64_s390 emulation if want64.
* emulparams/ (LIB_PATH): Update to match 2002-05-22 changes.
* emulparams/ (LIB_PATH): Likewise.
* emulparams/ (LIB_PATH): Set up native 64 bit dirs.
2002-10-15 Alan Modra <>
* ldlang.c (load_symbols): Revert last change.
2002-10-14 Alan Modra <>
* ldlang.c (load_symbols): Don't call bfd_link_add_symbols when
(lang_reasonable_defaults): Don't compare against false.
(size_input_section): Likewise.
(lang_size_sections_1): Likewise.
(lang_do_assignments): Likewise.
(lang_add_output): Likewise.
* Run "make dep-am".
* Regenerate.
* ldver.c: #include "bfdver.h".
2002-10-13 Stephane Carrez <>
* scripttempl/ Use KEEP for .vectors, .installN,
.finiN section.
* scripttempl/ Likewise.
2002-10-11 Alan Modra <>
* pe-dll.c (make_import_fixup_mark): Avoid type-punned pointer.
* ldgram.y (memory_spec): Provide empty action.
(section <NAME>): Likewise.
2002-10-10 Jakub Jelinek <>
* ldfile.c (ldfile_try_open_bfd): When searching skip linker scripts if
they have OUTPUT_FORMAT not matching actual output format.
* ldlang.c (lang_get_output_target): New function.
(open_output): Use it.
* ldlang.h (lang_get_output_target): New prototype.
2002-10-10 Alan Modra <>
* emultempl/elf32.em (output_rel_find): Prefer .rel script sections
when orphan is .rel, .rela when orphan is .rela.
(gld${EMULATION_NAME}_place_orphan): Handle combreloc .rel* case
first. Remove outsecname var.
2002-10-09 Richard Shann <>
Stephen Clarke <>
* Add eshelf32_linux.o and
eshlelf32_linux.o, new emulations for sh64 Linux.
* Regenerate.
* configure.tgt: Add sh64eb-*-linux* and sh64-*-linux* emulations.
* emulparams/ New file.
* emulparams/ New file.
2002-10-08 H.J. Lu <>
* ldlang.c (lang_file_exist): Removed.
(new_afile): Revert the last change.
* ldlang.h (lang_file_exist): Removed.
* lexsup.c (parse_args): Revert the last change.
2002-10-07 Ralf Habacker <>
* (autofilter_symbolprefixlist): Don't re-export
auto-import symbols.
(make_one): Create _nm_<symbol> for data only.
2002-10-05 Elias Athanasopoulos <>
* ldlang.c (lang_file_exist): New function.
(new_afile): Abort if the filename to be added matches the linker
output filename.
* ldlang.h: Add prototype for lang_file_exist.
* lexsup.c (parse_args): Abort if the output filename matches
one of the input filenames.
2002-10-02 Alan Modra <>
* emulparams/ (MAXPAGESIZE): Set to 0x10000.
2002-09-30 Alan Modra <>
* scripttempl/ Order reloc sections placing .plt last.
* scripttempl/ Likewise.
* scripttempl/ Likewise.
* emultempl/elf32.em (output_rel_find): Always place orphan loadable
reloc sections just before .rel.plt/.rela.plt.
(gld${EMULATION_NAME}_place_orphan <.rel>): Remove combreloc code.
Only put loadable reloc sections in hold_rel.
2002-09-29 H.J. Lu <>
* emulparams/ (OTHER_GOT_RELOC_SECTIONS): New.
2002-09-25 Daniel Jacobowitz <>
From "Anita Kulkarni" <>
* scripttempl/ Handle .eh_frame* and .gcc_exc*
2002-09-25 Alan Modra <>
* scripttempl/ (DATA_SEGMENT_ALIGN): Incorporate
SEGMENT_SIZE alignment.
* emulparams/ (DATA_ADDR): Delete.
* ldexp.c (fold_unary): New. Split out from exp_fold_tree.
(fold_binary): Correct abs - non-abs case.
(fold_trinary): New. Split out from exp_fold_tree.
2002-09-24 Alan Modra <>
* emulparams/ (DATA_ADDR): Define.
* emulparams/ (DATA_ADDR): Don't use a fixed address
for start of .data, instead align up to 256M boundary.
* scripttempl/ Likewise.
2002-09-22 Mark Elbrecht <>
* scripttempl/ Handle bss unique sections.
2002-09-21 Alan Modra <>
* ldmisc.c (vfinfo <%C,%D,%G>): Always output bfd, section and offset.
2002-09-17 Stan Cox <>
* emulparams/ New file.
* emulparams/ Use
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
2002-09-16 Bruno Haible <>
* emulparams/ Set OUTPUT_FORMAT to
* emulparams/ Set OUTPUT_FORMAT to
2002-09-11 Nick Clifton <>
* NEWS: New TI port supports both C4x and C3x series of DSPs.
* po/tr.po: Updated Turkish translation.
2002-09-06 Jeffrey A Law (
* configure.tgt (h8300-*-hms*, h8500-*-hms*): Restore.
2002-09-02 Nick Clifton <>
* scripttempl/ Add EXTERN references to __ctbpm __gp and
* emulparams/ (TEMPLATE_NAME): Define.
2002-08-30 Nick Clifton <>
* scripttempl/ (MEMORY): Remove UNIFIED, it is not
used. Change INSN to start at 0x01000000 and extend for
256K (ignoring holes). Start the STACK on a word aligned
(.rodata): Start it at the READONLY_START_ADDR.
2002-08-30 Alan Modra <>
* emulparams/ (ARCH): Set to "powerpc:common".
2002-08-28 Svein E. Seldal <>
* Add etic4xcoff.o in ALL_EMULATIONS list and
added makefile targets for this file.
* Regenerate.
* configure.tgt: Added tic4x-coff and c4x-coff emulations.
* NEWS: Mention new port.
2002-08-28 Michael Hayes <>
* emulparams/ New file.
* emulparams/ New file.
* scripttempl/ New file.
* scripttempl/ New file.
2002-08-28 Alan Modra <>
* emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Replace strtoll,
strtoul and strtoull with bfd_scan_vma.
(gld${EMULATION_NAME}_read_file): Likewise.
2002-08-28 Alan Modra <>
* configure.tgt: Remove h8[35]00-*-hms*. Add h8500-*-rtems*.
2002-08-27 Egor Duda <>
* scripttempl/ Handle .rdata_runtime_pseudo_reloc sections.
Add symbols for application to access them.
2002-08-27 Nick Clifton <>
* emultempl/armelf.em: Revert this patch, it is not needed.
2002-08-22 Adam Nemet <>
2002-08-20 Dan Kegel <>
* added --with-lib-path argument to ld's configure
to set LIB_PATH.
* NEWS: Document new switch.
* README: Mention new switch.
* configure: Regenerate.
* Regenerate.
Based on this patch:
2001-04-25 Christopher Faylor <>
* (LIB_PATH): Make configurable.
(GENSCRIPTS): Set LIB_PATH in environment.
* Substitute LIB_PATH.
2002-08-22 Adam Nemet <>
* emultempl/armelf.em: Include elf-bfd.h and elf/arm.h.
(arm_elf_finish): Set the last bit of DT_INIT and DT_FINI
depending on the type of the function.
(arm_elf_convert_thumb_symbol_to_address): New function.
2002-08-22 Graeme Peterson <>
* Add esh{l}elf_nto.o files.
* Regenerate.
* configure.tgt: Add support for sh-**-nto* targets.
* emulparams/ New file.
* emulparams/ New file.
2002-08-21 John David Anglin <>
* ldlang.c (offsetof): Define if not defined.
2002-08-14 H.J. Lu <>
* configure.tgt: Always enable 64bit emulations for 32bit
2002-08-13 Alan Modra <>
* emulparams/ (TARGET_PAGE_SIZE): Set to 1.
(MAXPAGESIZE): Set to 1.
* ld.h (ALIGN_N): Delete.
* ldexp.h (align_n): Declare.
* ldexp.c (align_n): New function.
(fold_binary): Use align_n instead of ALIGN_N.
(exp_fold_tree): Likewise.
* ldlang.c (lang_size_sections_1): Likewise.
(lang_one_common): Likewise.
* ld.texinfo (ALIGN): Remove power of 2 restriction.
2002-07-31 Graeme Peterson <>
* configure.tgt: Add support for powerpc{le}-*-nto* targets.
* Add eelf32{l}ppcnto.o files.
* Regenerate.
* emulparams/ New file.
* emulparams/ New file.
2002-08-07 H.J. Lu <>
* ld.texinfo: Document --no-undefined-version.
* ldlang.c (lang_new_vers_pattern): Set the `symver' and
`script.' fields to 0.
* ldmain.c (main): Initialize the allow_undefined_version to
(ld_options): Add --no-undefined-version.
(parse_args): Support OPTION_NO_UNDEFINED_VERSION.
2002-08-07 Nick Clifton <>
* emultempl/armelf.em (arm_elf_before_allocation): Only search for
an interworking bfd if there are input bfds. (107501)
2002-08-06 Alan Modra <>
* emultempl/aix.em (gld*_before_parse): Set default arch. Reverts
2002-05-10 change.
2002-08-01 Nick Clifton <>
* emulparams/ Revert previous delta.
* scripttempl/ Revert previous delta.
2002-07-31 H.J. Lu <>
* configure.tgt (powerpc*-*-linux*): Enable elf64ppc for
2002-07-31 H.J. Lu <>
* configure.tgt: Enable x86-64 emulation for Linux/i386 if
64bit BFD is selected.
2002-07-31 H.J. Lu <>
* configure.tgt: Enable 64bit emulations for 32bit Linux/mips
if 64bit BFD is selected.
2002-07-31 Ian Dall <>
* emultempl/netbsd.em (LDEMUL_BEFORE_PARSE): New file to custom set
* emulparams/ (EXTRA_EM_FILE): Refer to extra file.
* ldmain.c (main): Initialize new field
2002-07-31 Adam Nemet <>
* emulparams/ (OTHER_PLT_SECTIONS): New variable. Set it
to .plt.thumb.
* scripttempl/ Comment it. Use the same way as ${PLT} is
2002-07-31 Nick Clifton <>
* NEWS: Retroactively add entry for Lars Brinkhoff's contribution
of the PDP-11 and 2.11BSD a.out support.
2002-07-31 Thiemo Seufer <>
* (eelf32btsmipn32.o, eelf32ltsmipn32.o): New emulations
for n32 ABI support.
* Regenerate.
* configure.tgt (mips64*el-*-linux-gnu*,mips64*-*-linux-gnu*): Add
n32 ABI emulations for these 64 bit targets.
* emulparams/ Expand comment.
* emulparams/ New file, for traditional big endian
n32 ABI.
* emulparams/ Likewise for little endian.
2002-07-30 Graeme Peterson <>
* configure.tgt: Add support for arm-*-nto target.
* Add earmnto.o file.
* Regenerate.
* NEWS: Mention port of ARM support to QNX.
* emulparams/ New file.
2002-07-30 Jakub Jelinek <>
* ldlang.c (lang_add_section): Don't turn .tbss into normal sections
for relocatable link.
(lang_size_sections_1): Don't make .tbss zero size for relocatable
2002-07-26 Bernd Schmidt <>
* emulparams/ (OTHER_RELOCATING_SECTIONS): Delete.
2002-07-25 Nick Clifton <>
* po/sv.po: Updated Swedish translation.
* po/es.po: Updated Spanish translation.
* po/fr.po: Updated French translation.
2002-07-24 Nick Clifton <>
* po/sv.po: Updated Swedish translation.
* po/es.po: Updated Spanish translation.
2002-07-23 Nick Clifton <>
* po/fr.po: Updated French translation.
2002-07-20 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
bomb on /DISCARD/ input section.
* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
* emultempl/mmo.em (mmo_place_orphan): Likewise.
2002-07-19 Hans-Peter Nilsson <>
* emultempl/mmo.em (mmo_place_orphan): Handle case of no .text
output section.
2002-07-16 Denis Chertykov <>
Nick Clifton <>
Frank Ch. Eigler <>
John Healy <>
* configure.tgt: Add support for ip2k-elf.
* Add support for ip2k-elf.
* Regenerate.
* emulparams/ New file.
* scripttempl/ New file
* NEWS: Mention support for new port.
2002-07-16 Nick Clifton <>
* NEWS: Add 'Changes in 2.13'.
2002-07-14 H.J. Lu <>
* ld.texinfo: Document a .symver takes precedence over a
version script.
2002-07-12 Alan Modra <>
* emulparams/ (ARCH): Set to powerpc:common64.
2002-07-09 Alan Modra <>
* emulparams/ Remark that references this file.
2002-07-09 Federico G. Schwindt <>
* configure.tgt: Add support for alpha-*-openbsd*, hppa-*-openbsd*,
powerpc-*-openbsd* and sparc64-*-openbsd*.
* (ALL_EMULATIONS): Add ehppaobsd.o.
* Regenerate.
* emulparams/ New file.
2002-07-05 Alan Modra <>
* ldlang.c (print_wild_statement): Fix output formatting.
2002-07-04 Alan Modra <>
* ldlang.c: (strip_excluded_output_sections): New function.
(lang_process): Call it.
(lang_size_sections_1): Revert 2002-06-10 change.
2002-07-03 Alan Modra <>
* (check-DEJAGNU): Revert 2002-06-25 change.
Run "make dep-am".
* Regenerate.
2002-07-02 Alan Modra <>
* ldfile.c (ldfile_try_open_bfd): Formatting.
* ldmisc.c (demangle): Move so that it doesn't intrude between
vfinfo comment and body. Add comment.
2002-07-01 John David Anglin <>
* emulparams/ (OUTPUT_FORMAT): Use a.out-vax-bsd format.
2002-07-01 Alan Modra <>
* ldlang.h (entry_sym): Make it a struct bfd_sym_chain.
* ldlang.c (entry_sym): Likewise.
(ldlang_undef_chain_list_type): Likewise.
(lang_finish): Adjust references to entry_symbol.
(lang_add_entry): Likewise.
(lang_gc_sections): Use link_info.gc_sym_list.
(lang_process): Set link_info.gc_sym_list.
* ldlex.l: Include bfdlink.h.
* ldmain.c (main): Init link_info.gc_sym_list.
* emultempl/aix.em: Adjust references to entry_symbol.
* emultempl/armcoff.em: Likewise.
* emultempl/armelf.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/ppc64elf.em (ppc_after_open): New function.
* emulparams/ KEEP .opd sections.
2002-06-29 Stephane Carrez <>
* emulparams/ (EEPROM_MEMORY): Define.
* emulparams/ (EEPROM_MEMORY): Define.
* emulparams/ (EEPROM_SIZE): Define.
* emulparams/ Likewise.
* scripttempl/ Handle .eeprom section; handle .softregs
section to put soft registers in .page0.
* scripttempl/ Likewise but put soft registers in bss.
2002-06-26 John David Anglin <>
* emulparams/ (OTHER_GOT_RELOC_SECTIONS): Add rela.opd
section. Add ${RELOCATING-0}.
2002-06-26 J"orn Rennecke <>
* emulparams/ (STACK_ADDR): Don't define.
* emulparams/ ((STACK_ADDR): Don't undef.
2002-06-26 Alan Modra <>
* ldmisc.c (demangle): Restore dots stripped from sym name.
2002-06-25 H.J. Lu <>
* (check-DEJAGNU): Set LC_ALL=C and export it.
* Regenerated.
2002-06-20 Nick Clifton <>
* ld.texinfo (Bug Reporting): Update text to suggest a limit on
the size of attached object files, to allow make the object files
available via FTP or HTTP and to mention that the mail will be
sent to a mailing list.
2002-06-20 Nathanael Nerode <>
* (romp): Drop support.
2002-06-18 Chris Demetriou <>
* emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Check
section flags for SEC_DATA, rather than for SEC_CODE being unset.
2002-06-18 Chris Demetriou <>
* emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Fix
format specifier used to print BFD name.
2002-06-18 Dave Brolley <>
From Catherine Moore, Michael Meissner, Jim Blandy:
* emulparams/ New file.
* configure.tgt: Support frv-*-*.
* (ALL_EMULATIONS): Add eelf32frv.o.
(eelf32frv.c): New target.
2002-06-17 Tom Rix <>
* emultempl/elf32.em: gld*_get_script: Check for
* scripttempl/ : Fix STACK and INSN.
* emulparams/ : Fix TEXT_START_ADDR.
2002-06-13 J"orn Rennecke <>
* configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.
2002-06-12 H.J. Lu <>
* emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Return
false if xvec doesn't match.
2002-06-10 Richard Sandiford <>
* ldlang.c (lang_size_sections_1): Skip removed output sections.
2002-06-08 Alan Modra <>
* ldexp.c: Replace CONST with const.
* ldfile.c: Likewise.
* ldfile.h: Likewise.
* ldlex.l: Likewise.
* mri.c: Likewise.
* pe-dll.h: Likewise.
2002-06-07 Alan Modra <>
* emultempl/ppc64elf.em (new_vers_pattern): Warning fix.
2002-06-07 Charles Wilson <>
* ldmain.c (main): initialize link_info.pei386_auto_import
to -1 == implicit enable.
* emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):
initialize link_info.pei386_auto_import to -1 == implicit
(gld_${EMULATION_NAME}_parse_args): When processing
--enable-auto-import and --disable-auto-import options, use
'1' and '0' instead of 'true' and 'false'.
(pe_find_data_imports): Only issue message about auto-import
when the feature is implicitly enabled. Downgrade message to
informational instead of warning.
2002-06-07 Alan Modra <>
* scripttempl/ (.tbss): Fix mismatched parentheses/braces.
2002-06-06 John David Anglin <>
* (hppa*64*-*-hpux11*): Define NATIVE_LIB_DIRS,
2002-06-05 J"orn Rennecke <>
* configure.tgt (shle*-*-elf*, sh64le-*-elf*): New configurations.
2002-06-05 Jason Thorpe <>
* emulparams/ (EXECUTABLE_SYMBOLS): Set _DYNAMIC to 0.
2002-06-05 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place
SEC_EXCLUDE sections when doing a relocatable link.
2002-06-04 Jason Thorpe <>
* (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
2002-06-04 Alan Modra <>
* ldlang.c (section_already_linked): Call bfd_discard_group. Typo fix.
2002-06-02 Marek Michalkiewicz <>
* scripttempl/ Changes to support current GCC and avr-libc,
C++ constructors/destructors, loosely based on the m68hc11 port.
2002-05-31 Alan Modra <>
* Regenerate.
* aclocal.m4: Regenerate.
* Regenerate.
* configure: Regenerate.
2002-05-31 Graeme Peterson <>
* (ALL_EMULATIONS): Add ei386nto.o.
(ei386nto.c): Add rule.
* Regenerate.
* configure.tgt: Add i[3456]86-*-nto-qnx*.
* emulparams/ New file.
2002-05-29 Jason Thorpe <>
* NEWS: Add entry for VAX ELF support.
2002-05-29 Matt Thomas <>
Jason Thorpe <>
* (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o.
(evaxnbsd.c): New rules.
* Regenerate.
* configure.tgt (vax-*-netbsdelf*)
(vax-*-netbsd*): New targets.
* emulparams/ New file.
* emulparams/ New file.
2002-05-29 Adam Nemet <>
* emultempl/armelf.em (arm_elf_after_open): Don't determine
bfd_for_interwork, instead add glue sections to each input bfd.
(bfd_for_interwork): New global.
(arm_elf_set_bfd_for_interworking): New function.
(arm_elf_before_allocation): Use it.
2002-05-28 Kuang Hwa Lin <>
* Add DLX make target.
* configure.tgt: Add DLX configuration.
* Regenerate.
* emulparams/ New file
* scripttempl/ New file
2002-05-27 Per Lundberg <>
* (eelf_i386_chaos): Use script.
* Regenerate.
* emulparams/ Use elf_chaos script.
* scripttempl/ New file.
2002-05-27 Richard Sandiford <>
* ldlang.c (lang_size_sections_1): Move check for conflicting load
addresses and regions from here...
(lang_get_regions): this new function.
(lang_leave_output_section_statement): Use lang_get_regions.
(lang_leave_overlay): Likewise.
* mri.c (mri_draw_tree): Pass null as last argument to
* emultempl/elf32.em (gld*_place_orphan): Likewise.
* emultempl/mmo.em (mmo_place_orphan): Likewise.
* emultempl/pe.em (gld*_place_orphan): Likewise.
2002-05-26 Jason Thorpe <>
* configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
2002-05-25 Kazu Hirata <>
* ldemul.c: Fix formatting.
* ldfile.c: Likewise.
* pe-dll.c: Likewise.
* pe-dll.h: Likewise.
2002-05-25 Alan Modra <>
* ldlang.c (lang_process): Formatting, grammar.
* ldlex.l: Use #include "" instead of <> for local header files.
2002-05-24 TAMURA Kent <>
* configure.tgt: Add a target for i386-netbsdpe.
2002-05-23 Jakub Jelinek <>
* scripttempl/ Add .rel{,a}.t{bss,data}, .tdata and .tbss.
* ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
output section if necessary. Handle .tbss.
(lang_size_sections): Clear _raw_size for .tbss section
(it allocates space in PT_TLS segment only).
* ldwrite.c (build_link_order): Build link order for .tbss too.
2002-05-23 Alan Modra <>
* Correct spelling of AC_PREREQ.
2002-05-21 Danny Smith <>
* pe-dll.c (autofilter_liblist): Add more system libs excluded by
(autofilter_objlist): Add crtbegin.o, crtend.o.
2002-05-21 Danny Smith <>
* emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define.
(longopts): Add new option --exclude-libs.
(gld_${EMULATION_NAME}_list_options): Give quick help about it.
(gld_${EMULATION_NAME}_parse_args): Use it.
* pe-dll.h (pe_dll_add_excludes): Add second param to prototype.
* pe-dll.c (exclude_list_struct): Add field type to distinguish symbols
from whole archives.
(pe_dll_add_excludes): Set excludes->type.
(auto_export): Add new variable libname and set to archive basename if
abfd. Use it when filtering default and user-specified libarary
excludes. Let string "ALL" mean all libs when filtering user-specified
* ld.texinfo: Document --exclude-libs.
2002-05-22 Alan Modra <>
* ldemul.c (ldemul_new_vers_pattern): New function.
* ldemul.h (ldemul_new_vers_pattern): Declare.
(struct ld_emulation_xfer_struct): Add new_vers_pattern.
* ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern.
* emultempl/ppc64elf.em (dotsyms): New static var.
(gld${EMULATION_NAME}_new_vers_pattern): New function.
* emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update
* emultempl/armcoff.em: Likewise.
* emultempl/armelf_oabi.em: Likewise.
* emultempl/beos.em: Likewise.
* emultempl/elf32.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/mipsecoff.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/vanilla.em: Likewise.
2002-05-22 Alan Modra <>
* (LIB_PATH): For native targets, concatenate $libdir
and $NATIVE_LIB_DIRS. Add $tool_lib before other libs.
(LIB_SEARCH_DIRS): No need to use "tr".
(COMPILE_IN): Only set for native targets.
* (NATIVE_LIB_DIRS): Specify all native search dirs
here, rather than adding lib:/usr/lib:/usr/local/lib in
* configure.tgt (powerpc*): Set tdir_*.
(powerpcle*): Correct targ_extra_emuls.
* emulparams/ (LIB_PATH): Set up native 64 bit dirs.
* emulparams/ (LIB_PATH): Likewise.
2002-05-22 Alan Modra <>
* emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when
calling lang_add_entry.
2002-05-21 H.J. Lu (
* emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle
"-z muldefs".
(gld${EMULATION_NAME}_list_options): Add "-z muldefs".
* ld.texinfo: Updated for --allow-multiple-definition and
"-z muldefs".
* ldmain.c (main): Initialize the allow_multiple_definition
field to false.
(ld_options): Add --allow-multiple-definition.
2002-05-21 Jason Thorpe <>
* (ALL_EMULATIONS): Add earmelfb_nbsd.o.
(earmelfb_nbsd.c): New rule.
* Regenerate.
* configure.tgt (armeb-*-netbsdelf*): New target.
(arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls.
(arm-*-netbsd*): Likewise.
* emulparams/ New file.
2002-05-18 Tom Rix <>
* emultempl/aix.em (gld*_parse_args): Add -bnortl and -bnortllib
2002-05-17 Marek Michalkiewicz <>
* Add new emulations avr1, avr2, avr3, avr4, avr5.
* Regenerate.
* configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls.
2002-05-16 Marek Michalkiewicz <>
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* emulparams/ New file.
* scripttempl/ New file.
2002-05-15 Alan Modra <>
* ldlang.c (section_already_linked): Call bfd_link_just_syms.
(lang_place_orphans): Abort if just_syms_flag.
2002-05-10 Tom Rix <>
* emultempl/aix.em: (gld*_set_output_arch): New function. Use
architecture and machine information in the output bfd.
(gld*_before_parse): Remove old arch and machine code.
(choose_target): Rename to gld*_choose_target.
(rtld): Change type to int.
* ldfile.c (ldfile_try_open_bfd): Disable compatiblity check for
objects in XCOFF archives.
* ldfile.h: Update copyright date.
2002-05-10 Jakub Jelinek <>
* ldmain.c (main): Enable -z combreloc by default.
2002-05-07 Federico G. Schwindt <>
* Honour DESTDIR.
* Regenerate.
2002-05-07 Richard Sandiford <>
* ldlang.h (lang_output_section_statement_type): Add update_dot_tree.
(lang_enter_overlay): Remove the last two parameters.
(lang_leave_overlay): Take them here instead.
* ldgram.y (memspec_at_opt): Set $$ to null if no region is given.
(section): Pass LMA and crossref flag to lang_leave_overlay rather
than lang_enter_overlay.
* ldlang.c (lang_memory_region_lookup): Return null for null names.
(lang_output_section_statement_lookup): Initialize update_dot_tree.
(lang_size_sections_1): Evaluate it.
(lang_leave_output_section_statement): Rework LMA lookup.
(overlay_lma, overlay_nocrossrefs): Remove.
(lang_enter_overlay): Remove LMA and crossref arguments.
(lang_enter_overlay_section): Don't set the LMA here.
(lang_leave_overlay): Take LMA and crossref arguments. Move the '.'
assignment to the last section's update_dot_tree. Unconditionally
use the load and run-time regions specified in the OVERLAY statement.
Likewise the first section's LMA. Only set the other sections' LMAs
when no load region is given.
2002-05-06 Nick Clifton <>
* po/sv.po: New translation.
2002-05-04 Alan Modra <>
* emultempl/hppaelf.em (build_section_lists): New function.
(gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists
and build_section_lists.
2002-05-03 Kazu Hirata <>
* ld.h: Fix formatting.
* ldexp.c: Likewise.
* ldfile.c: Likewise.
* ldlang.c: Likewise.
* ldmain.c: Likewise.
* lexsup.c: Likewise.
* pe-dll.c: Likewise.
2002-05-02 Alan Modra <>
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
Adjust for ppc64_elf_set_toc change. #include libbfd.h.
(build_section_lists): Do output_section tests here.
2002-04-30 Tom Rix <>
* emultempl/aix.em : (gld*_parse_arge): Formatting changes.
2002-05-01 Alan Modra <>
Long branch stubs, multiple stub sections.
* emultempl/ppc64elf.em: Include ldctor.h.
(stub_file): New var.
(group_size): New var.
(ppc_create_output_section_statements): New function.
(struct hook_stub_info): New.
(hook_in_stub): New function.
(ppc_add_stub_section): New function.
(ppc_layout_sections_again): New function.
(build_section_lists): New function.
(gld${EMULATION_NAME}_finish): Rewrite.
(real_func): New var.
(ppc_for_each_input_file_wrapper): New function.
(ppc_lang_for_each_input_file): New function.
(lang_for_each_input_file): Define.
2002-04-30 Tom Rix <>
* emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add
-blibpath, -bnolibpath support.
2002-04-30 Mark Mitchell <>
* (ALL_EMULATIONS): Add elf32ppcwindiss.o.
(eelf32ppcwindiss.c): New target.
* Regenerated.
* configure.tgt: Add support for powerpc-*-windiss.
* emulparams/ New file.
2002-04-30 Richard Sandiford <>
* ldlang.c (print_assignment): Update print_dot for assignments to ".".
* ldexp.c (exp_print_token): Add "infix_p" argument.
(exp_print_tree): Update accordingly.
2002-04-28 Alan Modra <>
* (mpw): New maintainer mode rule to make mpw-*.c files.
* Regenerate.
* mpw-elfmips.c: Delete.
* mpw-eppcmac.c: Delete.
* mpw-esh.c: Delete.
* mpw-idtmips.c: Delete.
2002-04-17 J"orn Rennecke <>
* emulparams/ (MACHINE): Now sh5.
2002-04-17 Thiemo Seufer <>
* ldgram.y: Fix syntax warning.
2002-04-11 Nick Clifton <>
* emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Add 'n' in order
to prevent "-n" from being taken as an abbreviation for
2002-04-08 Alan Modra <>
* ldlang.c (lang_size_sections_1): Don't complain about
SEC_NEVER_LOAD sections having no memory region specified.
* ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix.
2002-04-07 matthew green <>
* (*-*-netbsd*): Add support for NetBSD/ELF.
2002-04-04 Alan Modra <>
* dep-in.sed: Cope with absolute paths.
* (dep.sed): Subst TOPDIR and BFDDIR.
Run "make dep-am".
* Regenerate.
2002-04-04 Thiemo Seufer <>
* emulparams/ n64 replaces .reginfo with .MIPS.options.
2002-04-03 Jakub Jelinek <>
* ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size
is smaller than maximum, round dot up to common page boundary.
2002-03-28 Alan Modra <>
* Set up for generic hosts first, then tweak as
necessary in more specific targets.
(HOSTING_LIBS): Include libgcc_eh.a if found.
2002-03-23 Andreas Jaeger <>
* emulparams/ (COMMONPAGESIZE): Set it.
2002-03-21 Alan Modra <>
* Run "make dep-am".
* Regenerate.
2002-03-21 Albert Chin-A-Young <>
* (LIB_SEARCH_DIRS): Quote path.
2002-03-20 Alan Modra <>
* ldlang.c (ldlang_add_undef): If the output bfd has been opened,
add the symbol to the linker hash table immediately.
(lang_place_undefineds): Split symbol creation out..
(insert_undefined): here.
2002-03-18 David O'Brien <>
* emultempl/elf32.em: Use lbasename vs. basename to fix problem where
the contents of the buffer returned from basename function will are
getting overwritten while still being used.
2002-03-18 Jan Hubicka <>
Andreas Jaeger <>
Andreas Schwab <>
* configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.
* (ARCH): Set to i386:x86-64
set libraries to default to lib64 paths.
2002-03-18 Tom Rix <>
* : Add eaix5ppc and eaix5rs6, AIX 5 support.
* configure.tgt : Same.
* emulparms/ : New file. For eaix5ppc.
* emulparms/ : New file. For eaix5rs6.
emulation parameters for better -b32, -b64 support.
* emulparms/ : Same.
* emulparms/ : Same.
* emultempl/aix.em (choose_target) : Use new emulation parameters
* : Regenerate.
2002-03-18 Nick Clifton <>
* po/fr.po: Updated version.
2002-03-18 Alan Modra <>
* ldmain.c (main): Move .text readonly flag fudges from here..
* ldlang.c (lang_process): here.
2002-03-14 Alan Modra <>
* ldlang.c (lang_check): Remove the word size check added in last
change. Treat emitrelocations case as for relocatable links.
2002-03-13 Nick Clifton <>
* po/fr.po: Updated version.
2002-03-13 Alan Modra <>
* ldlang.c (lang_check): Do relocatable link checks first, so that
warn_mismatch can't override. Check compatible and word size too.
2002-03-07 Daniel Jacobowitz <>
* ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
2002-03-05 Jakub Jelinek <>
* scripttempl/ Only use DATA_SEGMENT_END() together with
2002-03-04 H.J. Lu <>
* scripttempl/ Put .preinit_array, .init_array and
.fini_array in the data segment.
2002-03-04 Alan Modra <>
* scripttempl/ Correct syntax errors in 2002-03-01 commit.
2002-03-01 David Mosberger <>
* scripttempl/ (SECTIONS): Add entries for .preinit_array,
.init_array, and .fini_array.
2002-02-20 Andreas Schwab <>
* emulparams/ (OTHER_READONLY_SECTIONS): Don't fold
.IA64_unwind* in a relocatable link.
2002-02-20 Nick Clifton <>
* NEWS: Mark 2.12 branch.
2002-02-19 Martin Schwidefsky <>
* emulparams/ (ARCH): Change to "s390:64-bit".
* emulparams/ (ARCH): Change to "s390:31-bit".
2002-02-18 Tom Rix <>
* emultempl/aix.em (gld*_parse_args): Add -brtl support.
(gld*_before_allocation): Same.
(gld*_create_output_section_statements): Generate
__rtinit if run time linking. Add librtl.a to the link.
(gld*_read_file): Clean.
2002-02-18 Alan Modra <>
* emulparams/ (OTHER_TEXT_SECTIONS): Define.
2002-02-18 David O'Brien <>
* Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
* Regenerate.
* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
use a FreeBSD-specific emulation rather than the psABI one.
* emulparams/ (ELF_INTERPRETER_NAME): Set appropriate value
for all FreeBSD ELF systems.
* emulparams/ Bridge and the "native" psABI
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
2002-02-18 Nick Clifton <>
* po/tr.po: Updated version.
2002-02-18 Alan Modra <>
* ld.texinfo (Output Section Fill): Fix amateur texinfo.
(FILL): Likewise.
2002-02-17 Hans-Peter Nilsson <>
* emultempl/mmo.em (mmo_after_open): Don't call
_bfd_mmix_check_all_relocs when producing ELF output.
2002-02-15 Richard Henderson <>
* emulparams/ (NOP): Adjust for big-endian
definition. Emit a unop+nop pair.
2002-02-15 Hans-Peter Nilsson <>
* emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
for presence of .MMIX.reg_contents.linker_allocated before early
* NEWS: Mention support for MMIX.
2002-02-15 Alan Modra <>
Support arbitrary length fill patterns.
* ld.texinfo (Output Section Fill): Describe fill expressions.
(FILL): Refer to the above.
* ldexp.h (etree_value_type): Add "str" field.
(union etree_union): Add "str" to "value" struct.
(exp_bigintop): Declare.
(exp_get_fill): Declare.
* ldexp.c: Include "safe-ctype.h".
(exp_intop): Set value.str to NULL.
(exp_bigintop): New function.
(new_rel): Pass in "str", and set new.str from it.
(new_rel_from_section): Set new.str to NULL.
(fold_name): Adjust calls to new_rel.
(exp_fold_tree): Likewise.
(exp_get_fill): New function.
* ldgram.y (struct big_int bigint, fill_type *fill): New.
(INT): Returns a "bigint". Adjust all code handling INTs.
(fill_opt): Returns a "fill".
(fill_exp): Split out of fill_opt, use for FILL.
* ldlang.h (struct _fill_type): New.
(fill_type): Move typedef to ldexp.h.
(lang_output_section_statement_type): "fill" is now a pointer.
(lang_fill_statement_type): Likewise.
(lang_padding_statement_type): Likewise.
(lang_add_fill): Now takes a "fill_type *" param.
(lang_leave_output_section_statement): Likewise.
(lang_do_assignments): Likewise.
(lang_size_sections): Likewise.
(lang_leave_overlay_section): Likewise.
(lang_leave_overlay): Likewise.
* ldlang.c: Include ldgram.h after ldexp.h.
(lang_output_section_statement_lookup): Adjust for fill_type change.
(print_fill_statement): Likewise.
(print_padding_statement): Likewise.
(insert_pad): Now takes a "fill_type *" arg.
(size_input_section): Likewise.
(lang_size_sections_1): Likewise.
(lang_size_sections): Likewise.
(lang_do_assignments): Likewise.
(lang_add_fill): Likewise.
(lang_leave_output_section_statement): Likewise.
(lang_leave_overlay_section): Likewise.
(lang_leave_overlay): Likewise.
Adjust all callers of the above function.
* ldlex.l: Include ldgram.h after ldexp.h. Allow hex numbers
starting with "0X" as well as "0x". Return bigint.str for hex
numbers starting with "0x" or "0X", zero bigint.str otherwise.
Always use base 16 for numbers starting with "$".
* ldmain.c: Include ldgram.h after ldexp.h.
* ldwrite.c (build_link_order): Use bfd_data_link_order in place
of bfd_fill_link_order.
* pe-dll.c: Adjust lang_do_assignments calls.
* emultempl/elf32.em: Likewise.
* emultempl/hppaelf.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
lang_add_assignment call.
* emultempl/pe.em: Likewise.
2002-02-14 Phil Edwards <>
* ld.texinfo (VERSION scripts): Symbol names are globbing patterns.
* ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern;
the pattern in question is not a regexp.
* ldlang.c: Likewise.
* ldlang.h: Likewise.
* ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
2002-02-12 Jakub Jelinek <>
* ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
(exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
* ldexp.c (exp_data_seg): New variable.
(exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
(fold_binary): Handle DATA_SEGMENT_ALIGN.
(exp_fold_tree): Handle DATA_SEGMENT_END.
Pass allocation_done when recursing instead of hardcoding
* ldexp.h (exp_data_seg): New.
* ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
(lang_size_sections): New.
* ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
if COMMONPAGESIZE is defined.
* emulparams/ (COMMONPAGESIZE): Set to 4K.
* emulparams/ (COMMONPAGESIZE): Set to 8K.
* emulparams/ (COMMONPAGESIZE): Set to 8K.
* emulparams/ (COMMONPAGESIZE): Set to 8K.
* emulparams/ (COMMONPAGESIZE): Set to 16K for shared
libraries only.
2002-02-11 Alan Modra <>
* Regenerate.
2002-02-10 Daniel Jacobowitz <>
* lexsup.c: Remove strtoul declaration.
2002-02-10 Daniel Jacobowitz <>
* ldmain.c: Add prototype for main ().
* lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
* emultempl/lnk960.em (lnk960_choose_target): Function should
take two arguments.
2002-02-10 Alan Modra <>
* ldlang.c (entry_section): New initialised variable.
(lang_finish): Use it.
* ldlang.h (entry_section): Declare.
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
entry_section to ".opd".
2002-02-09 Chris Demetriou <>
* ld.texinfo (Options): Add back in -nostdlib documentation,
which had been inadvertently removed.
2002-02-09 Hans-Peter Nilsson <>
* emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
register section vma to a sane value after emitting error. Make
fatal conditions cause program exit when emitting message.
2002-02-08 Ivan Guzvinec <>
* configure.tgt: Add or32-*-rtems target.
2002-02-08 Alexandre Oliva <>
Contribute sh64-elf.
2002-01-24 Alexandre Oliva <>
* emulparams/ (STACK_ADDR): Define as formerly defined
2002-01-18 Alexandre Oliva <>
* emulparams/ (STACK_ADDR): Define.
(OTHER_SECTIONS): this. Removed stack settings.
* emulparams/ (OTHER_RELOCATABLE_SECTIONS): Do not set.
(OTHER_SECTIONS): Reset after sourcing
2001-03-12 DJ Delorie <>
* emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
relaxing if any shmedia or mixed sections are found.
2001-03-07 DJ Delorie <>
* emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
einfo. Gracefully decline to output to non-elf formats.
2001-03-06 Hans-Peter Nilsson <>
* emulparams/ (OTHER_RELOCATING_SECTIONS) <.stack>:
Default to _end aligned to next multiple of 0x40000, plus 0x40000.
* emulparams/ Ditto.
2001-01-14 Hans-Peter Nilsson <>
* emulparams/ (OTHER_RELOCATING_SECTIONS): Tweak
2001-01-10 Ben Elliston <>
* emulparams/ (OTHER_RELOCATING_SECTIONS): Avoid
non-portable shell constructs. From Hans-Peter Nilsson.
2001-01-09 Hans-Peter Nilsson <>
* emulparams/ (EXTRA_EM_FILE): Define empty.
* (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
dependencies to the shell script include chain.
* Regenerate.
2001-01-06 Hans-Peter Nilsson <>
* emultempl/sh64elf.em: Update and tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
make a .cranges section SEC_IN_MEMORY.
2000-12-30 Hans-Peter Nilsson <>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
.cranges section found to be necessary; continue and set stored
section contents flags for sections with non-mixed contents.
Use a struct sh64_section_data container and sh64_elf_section_data
to store contents-type flags.
Remove unused update of "isec".
(sh64_elf_${EMULATION_NAME}_after_allocation): Only process
sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
access contents-type flags. Assert that the associated container
is initialized. Use that container, not elf_gp_size, to hold size
of linker-generated cranges contents.
2000-12-18 Hans-Peter Nilsson <>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
there's already a .cranges section. When section flag difference
is found, don't NULL-check cranges a second time. Tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
merging, not max size, as size of ld-generated .cranges contents.
Don't set ELF section flags in output section. When checking for
needed .cranges descriptors, don't use a variable; compare
incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
2000-12-18 Hans-Peter Nilsson <>
* emultempl/sh64elf.em: New file.
* (eshelf32.c, eshlelf32.c): Adjust dependencies.
* Regenerate.
* emulparams/ (OUTPUT_FORMAT): Only set if not set.
(EXTRA_EM_FILE): New, set to sh64elf if not set.
* emulparams/ Stub out all settings except
* emulparams/ Similar, but also keep ELF_SIZE and
* emulparams/ Stub out all settings except
2000-12-15 Hans-Peter Nilsson <>
* emulparams/ (OTHER_RELOCATING_SECTIONS): Include
.cranges section.
(DATA_START_SYMBOLS): Define, provide ___data.
(OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
for consecutive .data section.
(OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
section after .data section.
* emulparams/ Ditto.
* emulparams/ Ditto.
(ALIGNMENT): Define to 8.
* emulparams/ Ditto.
2000-12-12 Hans-Peter Nilsson <>
* configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
built-in linker scripts.
2000-11-30 Hans-Peter Nilsson <>
* emulparams/ New.
* emulparams/ New.
* configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
* Add support for shlelf64 and shelf64.
* Regenerate.
2000-11-29 Hans-Peter Nilsson <>
* configure.tgt (sh64-*-elf*): Add shelf as default.
Add shlelf to targ_extra_emuls.
2000-11-24 Hans-Peter Nilsson <>
* emulparams/ New file.
* emulparams/ New file.
* Add support for shlelf32 and shelf32.
* configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
* Regenerate.
2002-02-05 Hans-Peter Nilsson <>
* ldlang.c (lang_reset_memory_regions): Rename from
reset_memory_regions. Change all callers. Make public.
* ldlang.h (lang_reset_memory_regions): Prototype.
* emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
lang_reset_memory_regions before lang_size_sections.
* emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
2002-02-04 Hans-Peter Nilsson <>
* emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
arithmetic when checking for too many global registers.
2002-02-02 Jason Thorpe <>
* (ALL_EMULATIONS): Add ehppanbsd.o.
(ehppanbsd.c): New rule.
* Regenerate.
* configure.tgt (hppa*-*-netbsd*): New target.
* emulparams/ Add comment to check other files
that source this file it is modified, and list which
files that do.
* emulparams/ New file.
2002-02-01 Geoffrey Keating <>
* scripttempl/ Don't allocate extra space for the
2002-02-01 Hans-Peter Nilsson <>
Support on-demand global register allocation from
* emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
mmix_set_reg_section_vma. Call
(mmix_before_allocation): New function.
(LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
(LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
* scripttempl/ (.text): Mark .init, .fini as KEEP.
(.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
before .MMIX.reg_contents.
* emultempl/mmo.em (gldmmo_before_allocation): Define to default.
(mmo_after_open): New function.
(LDEMUL_AFTER_OPEN): Define to mmo_after_open.
* emulparams/ (OTHER_SECTIONS): Tweak formatting. Add
.MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
2002-01-31 Ivan Guzvinec <>
* emulparams/ New file.
* emulparams/ New file.
* scripttempl/ New file.
* configure.tgt : Add support for or32.
* configure: Regenerate
* Add support for or32.
* Regenerate.
* NEWS: Mention support for or32.
* po/ld.pot: Regenerate.
2002-01-29 Chris Demetriou <>
Mitch Lichtenberg <>
* emulparams/ (EXTRA_EM_FILE): Define to be mipself.
* emultempl/mipself.em: New file to handle MIPS ELF embedded
reloc creation (ld --embedded-relocs).
2002-01-27 Daniel Jacobowitz <>
* configure: Regenerated.
2002-01-26 Hans-Peter Nilsson <>
* (install): Depend on install-info.
* Regenerate.
2002-01-26 Christian Rose <>
* ldmain.c (main): Use full sentences to ease translation.
2002-01-26 Nick Clifton <>
* po/fr.po: Updated version.
2002-01-25 Nick Clifton <>
* po/es.po: Updated version.
2002-01-25 Andreas Jaeger <>
* ldlex.l (yy_input): Correct error check.
2002-01-25 Alan Modra <>
* ldmisc.c (demangle): Put back dots when string not demangled.
2002-01-22 Richard Henderson <>
* emulparams/ (NOP): Use unop.
2002-01-21 Andreas Jaeger <>
* ldlex.l: Use fread instead of read.
2002-01-21 Jason Thorpe <>
* configure.tgt (ia64-*-netbsd*): New target.
2002-01-21 H.J. Lu <>
* emulparams/ (SHLIB_TEXT_START_ADDR): Change to
* emulparams/ (SHLIB_TEXT_START_ADDR): Likewise.
2002-01-18 Andreas Jaeger <>
* ldver.c (ldversion): Update year.
2002-01-17 Nick Clifton <>
* po/ld.pot: Regenerate.
2002-01-16 Alan Modra <>
* (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
* Regenerate.
* emulparams/ (EXTRA_EM_FILE): Define.
* emultempl/ppc64elf.em: New file.
2002-01-15 DJ Delorie <>
* scripttempl/ Add support for constructor priorities.
2002-01-07 Marek Michalkiewicz <>
* emulparams/ (DATA_START): Define as 0x60.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* emulparams/ Likewise.
* scripttempl/ Use DATA_START instead of 0x60.
2002-01-08 Alexandre Oliva <>
* ldlang.c (walk_wild_section): Exclude object file if enclosing
archive is excluded.
2002-01-07 Jason Thorpe <>
* (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
(eshelf_nbsd.c): New rule.
(eshlelf_nbsd.c): New rule.
* Regenerate.
* configure.tgt (sh*le-*-netbsdelf*): New target.
(sh*-*-netbsdelf*): New target.
* emulparams/ Document that sources this file.
* emulparams/ New emulation.
* emulparams/ New emulation.
2002-01-07 Nick Clifton <>
* po/es.po: New file: Spanish translation.
* (ALL_LINGUAS): Add es.
* configure: Regenerate.
2002-01-06 John Marshall <>
* ld.texinfo: Note that --emit-relocs is currently only
implemented for ELF.
2002-01-05 Alan Modra <>
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
of bfd_section_list_remove and bfd_section_list_insert macros.
* emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
* emultempl/mmo.em (mmo_place_orphan): Likewise.
2002-01-04 Jason Thorpe <>
* configure.tgt (x86_64-*-netbsd*): New target.
For older changes see ChangeLog-0001
Copyright (C) 2002-2003 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never