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