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