[include/elf]
[binutils.git] / ld / ChangeLog
blob316130761b7eaf8d1c71bac38ed08bc3e9fa74a8
1 2009-04-07  DJ Delorie  <dj@redhat.com>
3         * emulparams/elf32mep.sh: Change default endian to little.
5 2009-04-07  Nick Clifton  <nickc@redhat.com>
7         * ld.texinfo (Output Section Address): Note that specifying an
8         address for an output section will only change the location
9         counter if the output section is used.
11 2009-04-06  Kazu Hirata  <kazu@codesourcery.com>
13         * ldfile.c (ldfile_find_command_file): Initialize result.
15 2009-04-06  Kazu Hirata  <kazu@codesourcery.com>
17         * ld.texinfo (-L): Mention that -L options do not affect how ld
18         searches for a linker script unless -T option is specified.
19         * ldfile.c (ldfile_find_command_file): Append the path obtained
20         from the program name to the search path instead of
21         prepending. Add a new parameter "default_only". Restrict the
22         search to the default script location if the new parameter is
23         true.
24         (ldfile_open_command_file_1): New.
25         (ldfile_open_command_file): Call ldfile_open_command_file_1.
26         (ldfile_open_default_command_file): New.
28 2009-04-03  Nathan Sidwell  <nathan@codesourcery.com>
30         * ldlang.c (lang_leave_output_section_statement): Set lma_region
31         if it is not overridden and section is for the same vma region as
32         the previous section.
34 2009-04-02  Dave Korn  <dave.korn.cygwin@gmail.com>
36         PR ld/6744
37         * ld.texinfo (--export-dynamic):  Mention --export-all-symbols.
38         * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse):  Issue
39         warning if --export-dynamic was passed on command-line.
40         * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse):  Likewise.
42 2009-04-01  Richard Sandiford  <r.sandiford@uk.ibm.com>
44         * emultempl/aix.em (gld${EMULATION_NAME}_open_dynamic_archive): New
45         function.
46         (ld_${EMULATION_NAME}_emulation): Use it.
48 2009-03-20  H.J. Lu  <hongjiu.lu@intel.com>
50         PR ld/9970
51         * ldlang.c (lang_end): Warn missing entry symbol for -pie.
53 2009-03-19  Alan Modra  <amodra@bigpond.net.au>
55         * emultempl/spuelf.em (spu_before_allocation): Report errors from
56         spu_elf_find_overlays.
58 2009-03-18  H.J. Lu  <hongjiu.lu@intel.com>
60         PR ld/6766
61         * lexsup.c (parse_args): Call ldlang_add_undef for -e.
63 2009-03-18  Alan Modra  <amodra@bigpond.net.au>
65         * ld.h: Remove alloca handling.
67 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
69         * emultempl/spu_icache.S: Add new entry to dummy handler.
70         * emultempl/spu_icache.o_c: Regenerate.
71         * emultempl/spuelf.em (params): Init new field.
72         (no_overlays): New static var.
73         (spu_before_allocation): Use it.
74         (OPTION_SPU_COMPACT_STUBS): Define.
75         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add compact-stubs.
76         (PARSE_AND_LIST_ARGS_CASES): Handle compact-stubs.  Adjust no-overlays
77         handling.
79 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
81         * configure.host (HOSTING_LIBS): Two dollars on shell variable
82         expansion to suit make.
84 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
86         * configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL.
87         * Makefile.am (check-DEJAGNU): Set DO_COMPARE.
88         * aclocal.m4: Regenerate.
89         * configure: Regenerate.
90         * Makefile.in: Regenerate.
92 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
94         * emultempl/aix.em (auto_export_flags): New variable.
95         (explicit_auto_export_flags): Likewise.
96         (OPTION_EXPALL, OPTION_EXPFULL): New enum values.
97         (OPTION_NOEXPALL, OPTION_NOEXPFULL): Likewise.
98         (gld${EMULATION_NAME}_add_options): Add -bexpall, -bexpfull,
99         -bnoexpall and -bnoexpfull.
100         (gld${EMULATION_NAME}_handle_option): Handle them.
101         (gld${EMULATION_NAME}_before_allocation): Update the call to
102         bfd_size_dynamic_sections.
104 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
106         * emultempl/aix.em (gld${EMULATION_NAME}_handle_option): Make
107         -berok and -bernotok control link_info.unresolved_syms_in_objects
108         and link_info.unresolved_syms_in_shared_libs instead of
109         force_make_executable.
111 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
113         * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
114         config.dynamic_link to TRUE.
116 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
118         * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Mark
119         .text, .data and .bss output sections as SEC_KEEP.
121 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
123         * configure.tgt: Extend AIX 5 behavior to AIX 6 and above.
125 2009-03-14  Dave Korn  <dave.korn.cygwin@gmail.com>
126             Danny Smith  <dannysmith@users.sourceforge.net>
128         * emultmpl/pe.em (pe_dll_characteristics): New variable.
129         (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
130         OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
131         OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
132         New macros for options to set DllCharacteristics flag bits.
133         (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
134         nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
135         (init): Add DllCharacteristics field.
136         (gld_${EMULATION_NAME}_list_options): List new options.
137         (gld${EMULATION_NAME}_handle_option): Handle new options.
138         * emultmpl/pep.em (pe_dll_characteristics): New variable.
139         (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
140         OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
141         OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
142         New macros for options to set DllCharacteristics flags.
143         (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
144         nxcompat,no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
145         (init): Add DllCharacteristics field.
146         (gld_${EMULATION_NAME}_list_options): List new options.
147         (gld${EMULATION_NAME}_handle_option): Handle new options.
148         * ldtexinfo : Document dynamicbase, forceinteg, nxcompat,
149         no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
151 2009-03-06  Nick Clifton  <nickc@redhat.com>
153         * po/es.po: Updated Spanish translation.
155 2009-03-03  Dave Korn  <dave.korn.cygwin@gmail.com>
157         * emultempl/pe.em (debug_section_p):  New bfd_map_over_sections hook.
158         (gld_${EMULATION_NAME}_after_open):  Use it to iterate all sections
159         of all input BFDs, looking for debug info.  Enable long section names
160         if any found.
161         * emultempl/pe.em (debug_section_p):  Likewise.
162         (gld_${EMULATION_NAME}_after_open):  Likewise.
163         * NEWS:  Retrospectively adjust news announcement.
164         * ld.texinfo:  Update documentation to mention new behaviour.
166 2009-03-03  Alan Modra  <amodra@bigpond.net.au>
168         * Makefile.am: Run "make dep-am".
169         * Makefile.in: Regenerate.
171 2009-03-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
173         * ldgram.y: Add support for REGION_ALIAS operator.
174         * ldlang.c: Likewise.
175         * ldlang.h: Likewise.
176         * ldlex.l: Likewise.
177         * NEWS: Mention the new feature.
178         * ld.texinfo: Document the new feature.
180 2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
182         * Makefile.am: Replace score elf emulation with score3 and score7
183         emulations.
184         * Makefile.in: Regenerate,
185         * NEWS: Mention support for Score7 architecture.
186         * configure.tgt: Add score7 emulation to score-elf target.
187         * emulparams/scoreelf.sh: Add score7 support.
188         * emultempl/scoreelf.em: Likewise.
190 2009-03-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
192         * configure.tgt: Only use elf64hppa target emulation for hpux.
193         * emulparams/elf64hppa.sh: Don't include hppa64linux.sh.
194         (SCRIPT_NAME): Use new script elf64hppa.
195         (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY,
196         TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS,
197         OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS,
198         DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT,
199         TEXT_DYNAMIC): Define.
200         * emulparams/hppa64linux.sh: Adjust comments.
201         * scripttempl/elf64hppa.sc: New file.
203 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
205         * configure: Regenerate.
207 2009-02-27  Dave Korn  <dave.korn.cygwin@gmail.com>
209         * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):  Set
210         default state of auto-import flag based on $target.
212 2009-02-24  Joseph Myers  <joseph@codesourcery.com>
214         * ld.texinfo (ARM): Document changed meaning of --stub-group-size.
215         * emultempl/armelf.em (hook_in_stub): Insert after the input section.
216         (elf32_arm_add_stub_section): Update comment.
217         (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size.
219 2009-02-24  Sandra Loosemore  <sandra@codesourcery.com>
221         * ld.texinfo (Options): Correct typos in example.  Recommend
222         using joined forms of syntax for passing options with arguments 
223         from a driver.
224         (-a): Use consistent syntax for documenting option arguments.
225         Clean up indexing and markup.
226         (-A/--architecture): Likewise.
227         (-f/--auxiliary): Likewise.
228         (-F/--filter): Likewise.
229         (-fini): Likewise.
230         (-G/--gpsize): Likewise.
231         (-h/-soname):Likewise.
232         (-init): Likewise.
233         (-l/--library): Likewise.
234         (-L/--library-path): Likewise.
235         (-m): Likewise.
236         (--defsym): Likewise.
237         (-I/--dynamic-linker): Likewise.
238         (-Map): Likewise.
239         (--oformat): Likewise.
240         (--retain-symbols-file): Likewise.
241         (-rpath): Likewise.
242         (-rpath-link): Likewise.
243         (--sort-common): Likewise.
244         (--sort-section): Likewise.
245         (--split-by-file): Likewise.
246         (--split-by-reloc): Likewise.
247         (--sysroot): Likewise.
248         (--section-start): Likewise.
249         (-Tbss, -Tdata, -Ttext): Likewise.
250         (-Ttext-segment): Likewise.
251         (--version-script): Likewise.
252         (--wrap): Likewise.
254 2009-02-18  Dave Korn  <dave.korn.cygwin@gmail.com>
256         * ld.texinfo:  Update to mention long section name options.
257         * NEWS:  Mention new behaviour and command-line options.
258         * pe-dll.c (pe_use_coff_long_section_names):  New global variable.
259         (pe_output_file_set_long_section_names):  New function.
260         (pe_dll_build_sections):  Call it on output BFDs.
261         (pe_exe_build_sections):  Likewise.
262         (pe_dll_fill_sections):  Likewise.
263         (pe_exe_fill_sections):  Likewise.
264         * pe-dll.h (pe_use_coff_long_section_names):  Declare extern.
265         (pe_output_file_set_long_section_names):  Add prototype.
266         * pep-dll.c (pe_use_coff_long_section_names):  Define pep_ alias.
267         (pe_output_file_set_long_section_names):  Likewise.
268         * pep-dll.h (pep_use_coff_long_section_names):  Declare extern.
269         (pep_output_file_set_long_section_names):  Add prototype.
270         * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES):  New getopt value macro.
271         (OPTION_DISABLE_LONG_SECTION_NAMES):  Likewise.
272         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
273         (gld_${EMULATION_NAME}_list_options):  Describe them.
274         (gld${EMULATION_NAME}_handle_option):  Set or clear global
275         pe_use_coff_long_section_names flag when options recognised.
276         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
277         for main output bfd by calling pe_output_file_set_long_section_names.
278         * pep.em (enum options):  Extend enum with new getopt option values.
279         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
280         (gld_${EMULATION_NAME}_list_options):  Describe them.
281         (gld${EMULATION_NAME}_handle_option):  Set or clear global
282         pe_use_coff_long_section_names flag when options recognised.
283         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
284         for main output bfd by calling pep_output_file_set_long_section_names.
286 2009-02-16  Dave Korn  <dave.korn.cygwin@gmail.com>
288         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):  Don't emit
289         inadvertent .reloc sections caused by refactoring accident.
291 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
293         * ldlang.c (process_insert_statements): ASSERT that output section
294         statements are in order.
296 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
298         * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions.
299         (stat_save, stat_save_ptr): New variables.
300         (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr.
301         (load_symbols): Likewise.  Delete dead "bad_load" code.
302         (open_input_bfds): Warn on script containing output sections.
303         (lang_enter_output_section_statement): Use push_stat_ptr.
304         (lang_enter_group): Likewise.
305         (lang_leave_output_section_statement): Use pop_stat_ptr.
306         (lang_leave_group): Likewise.
307         * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare.
308         * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr.
309         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
310         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
311         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
312         * emultempl/spuelf.em (spu_place_special_section): Likewise.
313         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise.
315 2009-02-09  Nathan Sidwell  <nathan@codesourcery.com>
317         Missing piece of 2009-01-26 commit
318         * ldlang.c (lang_process): Don't consider relocatable flag when
319         checking for overlap.
321 2009-02-05  Joseph Myers  <joseph@codesourcery.com>
323         * emulparams/m68kelf.sh: Add newline at end of file.
325 2009-02-04  Nick Clifton  <nickc@redhat.com>
327         PR 9805
328         * ld.texinfo (--allow-shlib-undefined): Correct description of
329         default settings and tidy up the rest of the entry.
331 2009-02-04  Alan Modra  <amodra@bigpond.net.au>
333         * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
334         during relocatable link.
336 2009-02-03  Nick Clifton  <nickc@redhat.com>
338         PR 9797
339         * ld.texinfo (Constants): Document the base-encoding suffixes
340         supported in linker scripts.
342 2009-02-03  Alan Modra  <amodra@bigpond.net.au>
344         * NEWS: Mention --as-needed change.
346 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
348         * configure.in: AC_SUBST pdfdir.
349         * Makefile.am: Add install-pdf, install-pdf-am,
350         and install-pdf-recursive targets. Define pdf__strip_dir.
351         * po/Make-in: Add install-pdf target.
352         * configure: Regenerate.
353         * Makefile.in: Regenerate.
355 2009-01-31  Alan Modra  <amodra@bigpond.net.au>
357         * ld.texinfo (--as-needed): Update.
359 2009-01-29  Andrew Jenner  <andrew@codesourcery.com>
361         * emultempl/armelf.em: Correct formatting of help text for
362         --no-enum-size-warning option.
364 2009-01-26  Nathan Sidwell  <nathan@codesourcery.com>
366         * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
367         * ld.h (args_type): Make check_section_addresses a char.
368         * ldmain.c (main): Default check_section_addresses to -1. Check it
369         for relocatable links.
370         * ld.texinfo (--check-sections): Update documentation.
372 2009-01-26  Kai Tietz  <kai.tietz@onevision.com>
374         * pe-dll.c (tmp_seq2): New static variable.
375         (make_singleton_name_imp): New.
376         (make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
377         avoid duplicate import table generation for same symbol.
378         (pe_create_runtime_relocator_reference): Make reference for
379         64-bit 8 bytes.
381 2009-01-21  Alan Modra  <amodra@bigpond.net.au>
383         * emultempl/spuelf.em (params): Init new field.
384         (OPTION_SPU_NON_IA_TEXT): Define.
385         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
386         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
388 2009-01-16  H.J. Lu  <hongjiu.lu@intel.com>
390         * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
391         (ld_options): Add -Ttext-segment.
392         (parse_args): Handle OPTION_TTEXT_SEGMENT.
394         * ld.texinfo: Document -Ttext-segment.
396         * NEWS: Mention -Ttext-segment.
398         * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
399         (SHLIB_TEXT_START_ADDR): Likewise.
401 2009-01-13  Alan Modra  <amodra@bigpond.net.au>
403         * emultempl/spu_icache.o_c: Regenerate.
405 2009-01-12  Alan Modra  <amodra@bigpond.net.au>
407         * emultempl/spuelf.em (params): Init new fields.
408         (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
409         (spu_place_special_section): Adjust placement for soft-icache.  Pad
410         soft-icache section to a fixed size.  Clear addr_tree.
411         (spu_elf_load_ovl_mgr): Support soft-icache.  Map overlay manager
412         sections a little more intelligently.
413         (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
414         (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
415         (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
416         (OPTION_SPU_LRLIVE): Define.
417         (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
418         (PARSE_AND_LIST_OPTIONS): Likewise.
419         (PARSE_AND_LIST_ARGS_CASES): Handle them.
420         * emultempl/spu_icache.S: Dummy file.
421         * emultempl/spu_icache.o_c: Regenerate.
422         * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
423         (spu_icache.o_c): Add rule to build.
424         (CLEANFILES): Zap temp files.
425         (EXTRA_DIST): Add spu_icache.o_c.
426         * Makefile.in: Regenerate.
428 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
430         * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
431         (gld..._add_options): Add new option
432         --use-nul-prefixed-import-tables.
433         (gld..._handle_option): Likewise.
434         * pep.em: Same as for pe.em.
435         * ld.texinfo: Add new option documentation for
436         --use-nul-prefixed-import-tables.
437         * pe-dll.c (pe_use_nul_prefixed_import_tables): New.
438         (make_head): Make prefix leading zero prefix element for
439         idata$4 and idata$5 dependent to new flag.
440         (make_import_fixup_entry): Remove idata4/5 prefix.
441         * pe-dll.h (pe_use_nul_prefixed_import_tables): New.
442         * pep-dll.c (pe_use_nul_prefixed_import_tables): New.
443         * pep-dll.h (pep_use_nul_prefixed_import_tables): New.
444         * NEWS: Add new option.
446 2009-01-05  Kai Tietz  <kai.tietz@onevision.com>
448         * emultempl/pe.em: Prefix dollar characters to be outputed in
449         generated C file.
450         * emultempl/pep.em: Likewise.
452 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
454         * NEWS:  Mention new feature --exclude-modules-for-implib.
455         * ld.texinfo:  Document new --exclude-modules-for-implib option.
456         * pe-dll.c (exclude_list_struct):  Change type member from int to
457         new enumeration exclude_type.
458         (pe_dll_add_excludes):  Accept exclude_type instead of int param.
459         (auto_export):  Replace magic constants by exclude_type values and
460         handle new choice EXCLUDEFORIMPLIB.
461         (pe_dll_generate_implib):  Accept a pointer to the link_info and
462         iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
463         fresh BFDs for any found and link into import lib archive chain.
464         * pe-dll.h (exclude_type):  Add new enumerated type to replace magic
465         constants previously used for exclude_list_struct type member.
466         (pe_dll_add_excludes, pe_dll_generate_implib):  Update prototypes.
467         * pep-dll.h (exclude_type, pe_dll_add_excludes,
468         pe_dll_generate_implib):  Likewise to all the above.
469         * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB):  Define new
470         getopts long option code for new --exclude-modules-for-implib option.
471         (gld${EMULATION_NAME}_add_options):  Add new entry to xtra_long[].
472         (gld_${EMULATION_NAME}_list_options):  List usage for it.
473         (gld${EMULATION_NAME}_handle_option):  Use exclude_type enumerated
474         values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
475         (gld_${EMULATION_NAME}_finish):  Pass pointer to link_info when
476         calling pe_dll_generate_implib.
477         * emultempl/pep.em (options):  Define new enumerated value for getopts
478         long option code for new --exclude-modules-for-implib option.
479         (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
480         gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
481         Again, likewise to all the above.
483 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
485         * pe-dll.c (autofilter_liblist):  Add entry for shared libgcc.
486         (libnamencmp):  New function.
487         (auto_export):  Use it in place of strncmp when filtering libraries.
489 For older changes see ChangeLog-2008
491 Local Variables:
492 mode: change-log
493 left-margin: 8
494 fill-column: 74
495 version-control: never
496 End: