* emultempl/pe.em (debug_section_p): New bfd_map_over_sections hook.
[binutils.git] / ld / ChangeLog
blobba87342d8f3885a2fa1bd17482708bd11f57dff5
1 2009-03-03  Dave Korn  <dave.korn.cygwin@gmail.com>
3         * emultempl/pe.em (debug_section_p):  New bfd_map_over_sections hook.
4         (gld_${EMULATION_NAME}_after_open):  Use it to iterate all sections
5         of all input BFDs, looking for debug info.  Enable long section names
6         if any found.
7         * emultempl/pe.em (debug_section_p):  Likewise.
8         (gld_${EMULATION_NAME}_after_open):  Likewise.
9         * NEWS:  Retrospectively adjust news announcement.
10         * ld.texinfo:  Update documentation to mention new behaviour.
12 2009-03-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
14         * ldgram.y: Add support for REGION_ALIAS operator.
15         * ldlang.c: Likewise.
16         * ldlang.h: Likewise.
17         * ldlex.l: Likewise.
18         * NEWS: Mention the new feature.
19         * ld.texinfo: Document the new feature.
21 2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
23         * Makefile.am: Replace score elf emulation with score3 and score7
24         emulations.
25         * Makefile.in: Regenerate,
26         * NEWS: Mention support for Score7 architecture.
27         * configure.tgt: Add score7 emulation to score-elf target.
28         * emulparams/scoreelf.sh: Add score7 support.
29         * emultempl/scoreelf.em: Likewise.
31 2009-03-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
33         * configure.tgt: Only use elf64hppa target emulation for hpux.
34         * emulparams/elf64hppa.sh: Don't include hppa64linux.sh.
35         (SCRIPT_NAME): Use new script elf64hppa.
36         (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY,
37         TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS,
38         OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS,
39         DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT,
40         TEXT_DYNAMIC): Define.
41         * emulparams/hppa64linux.sh: Adjust comments.
42         * scripttempl/elf64hppa.sc: New file.
44 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
46         * configure: Regenerate.
48 2009-02-27  Dave Korn  <dave.korn.cygwin@gmail.com>
50         * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):  Set
51         default state of auto-import flag based on $target.
53 2009-02-24  Joseph Myers  <joseph@codesourcery.com>
55         * ld.texinfo (ARM): Document changed meaning of --stub-group-size.
56         * emultempl/armelf.em (hook_in_stub): Insert after the input section.
57         (elf32_arm_add_stub_section): Update comment.
58         (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size.
60 2009-02-24  Sandra Loosemore  <sandra@codesourcery.com>
62         * ld.texinfo (Options): Correct typos in example.  Recommend
63         using joined forms of syntax for passing options with arguments 
64         from a driver.
65         (-a): Use consistent syntax for documenting option arguments.
66         Clean up indexing and markup.
67         (-A/--architecture): Likewise.
68         (-f/--auxiliary): Likewise.
69         (-F/--filter): Likewise.
70         (-fini): Likewise.
71         (-G/--gpsize): Likewise.
72         (-h/-soname):Likewise.
73         (-init): Likewise.
74         (-l/--library): Likewise.
75         (-L/--library-path): Likewise.
76         (-m): Likewise.
77         (--defsym): Likewise.
78         (-I/--dynamic-linker): Likewise.
79         (-Map): Likewise.
80         (--oformat): Likewise.
81         (--retain-symbols-file): Likewise.
82         (-rpath): Likewise.
83         (-rpath-link): Likewise.
84         (--sort-common): Likewise.
85         (--sort-section): Likewise.
86         (--split-by-file): Likewise.
87         (--split-by-reloc): Likewise.
88         (--sysroot): Likewise.
89         (--section-start): Likewise.
90         (-Tbss, -Tdata, -Ttext): Likewise.
91         (-Ttext-segment): Likewise.
92         (--version-script): Likewise.
93         (--wrap): Likewise.
95 2009-02-18  Dave Korn  <dave.korn.cygwin@gmail.com>
97         * ld.texinfo:  Update to mention long section name options.
98         * NEWS:  Mention new behaviour and command-line options.
99         * pe-dll.c (pe_use_coff_long_section_names):  New global variable.
100         (pe_output_file_set_long_section_names):  New function.
101         (pe_dll_build_sections):  Call it on output BFDs.
102         (pe_exe_build_sections):  Likewise.
103         (pe_dll_fill_sections):  Likewise.
104         (pe_exe_fill_sections):  Likewise.
105         * pe-dll.h (pe_use_coff_long_section_names):  Declare extern.
106         (pe_output_file_set_long_section_names):  Add prototype.
107         * pep-dll.c (pe_use_coff_long_section_names):  Define pep_ alias.
108         (pe_output_file_set_long_section_names):  Likewise.
109         * pep-dll.h (pep_use_coff_long_section_names):  Declare extern.
110         (pep_output_file_set_long_section_names):  Add prototype.
111         * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES):  New getopt value macro.
112         (OPTION_DISABLE_LONG_SECTION_NAMES):  Likewise.
113         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
114         (gld_${EMULATION_NAME}_list_options):  Describe them.
115         (gld${EMULATION_NAME}_handle_option):  Set or clear global
116         pe_use_coff_long_section_names flag when options recognised.
117         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
118         for main output bfd by calling pe_output_file_set_long_section_names.
119         * pep.em (enum options):  Extend enum with new getopt option values.
120         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
121         (gld_${EMULATION_NAME}_list_options):  Describe them.
122         (gld${EMULATION_NAME}_handle_option):  Set or clear global
123         pe_use_coff_long_section_names flag when options recognised.
124         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
125         for main output bfd by calling pep_output_file_set_long_section_names.
127 2009-02-16  Dave Korn  <dave.korn.cygwin@gmail.com>
129         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):  Don't emit
130         inadvertent .reloc sections caused by refactoring accident.
132 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
134         * ldlang.c (process_insert_statements): ASSERT that output section
135         statements are in order.
137 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
139         * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions.
140         (stat_save, stat_save_ptr): New variables.
141         (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr.
142         (load_symbols): Likewise.  Delete dead "bad_load" code.
143         (open_input_bfds): Warn on script containing output sections.
144         (lang_enter_output_section_statement): Use push_stat_ptr.
145         (lang_enter_group): Likewise.
146         (lang_leave_output_section_statement): Use pop_stat_ptr.
147         (lang_leave_group): Likewise.
148         * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare.
149         * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr.
150         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
151         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
152         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
153         * emultempl/spuelf.em (spu_place_special_section): Likewise.
154         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise.
156 2009-02-09  Nathan Sidwell  <nathan@codesourcery.com>
158         Missing piece of 2009-01-26 commit
159         * ldlang.c (lang_process): Don't consider relocatable flag when
160         checking for overlap.
162 2009-02-05  Joseph Myers  <joseph@codesourcery.com>
164         * emulparams/m68kelf.sh: Add newline at end of file.
166 2009-02-04  Nick Clifton  <nickc@redhat.com>
168         PR 9805
169         * ld.texinfo (--allow-shlib-undefined): Correct description of
170         default settings and tidy up the rest of the entry.
172 2009-02-04  Alan Modra  <amodra@bigpond.net.au>
174         * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
175         during relocatable link.
177 2009-02-03  Nick Clifton  <nickc@redhat.com>
179         PR 9797
180         * ld.texinfo (Constants): Document the base-encoding suffixes
181         supported in linker scripts.
183 2009-02-03  Alan Modra  <amodra@bigpond.net.au>
185         * NEWS: Mention --as-needed change.
187 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
189         * configure.in: AC_SUBST pdfdir.
190         * Makefile.am: Add install-pdf, install-pdf-am,
191         and install-pdf-recursive targets. Define pdf__strip_dir.
192         * po/Make-in: Add install-pdf target.
193         * configure: Regenerate.
194         * Makefile.in: Regenerate.
196 2009-01-31  Alan Modra  <amodra@bigpond.net.au>
198         * ld.texinfo (--as-needed): Update.
200 2009-01-29  Andrew Jenner  <andrew@codesourcery.com>
202         * emultempl/armelf.em: Correct formatting of help text for
203         --no-enum-size-warning option.
205 2009-01-26  Nathan Sidwell  <nathan@codesourcery.com>
207         * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
208         * ld.h (args_type): Make check_section_addresses a char.
209         * ldmain.c (main): Default check_section_addresses to -1. Check it
210         for relocatable links.
211         * ld.texinfo (--check-sections): Update documentation.
213 2009-01-26  Kai Tietz  <kai.tietz@onevision.com>
215         * pe-dll.c (tmp_seq2): New static variable.
216         (make_singleton_name_imp): New.
217         (make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
218         avoid duplicate import table generation for same symbol.
219         (pe_create_runtime_relocator_reference): Make reference for
220         64-bit 8 bytes.
222 2009-01-21  Alan Modra  <amodra@bigpond.net.au>
224         * emultempl/spuelf.em (params): Init new field.
225         (OPTION_SPU_NON_IA_TEXT): Define.
226         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
227         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
229 2009-01-16  H.J. Lu  <hongjiu.lu@intel.com>
231         * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
232         (ld_options): Add -Ttext-segment.
233         (parse_args): Handle OPTION_TTEXT_SEGMENT.
235         * ld.texinfo: Document -Ttext-segment.
237         * NEWS: Mention -Ttext-segment.
239         * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
240         (SHLIB_TEXT_START_ADDR): Likewise.
242 2009-01-13  Alan Modra  <amodra@bigpond.net.au>
244         * emultempl/spu_icache.o_c: Regenerate.
246 2009-01-12  Alan Modra  <amodra@bigpond.net.au>
248         * emultempl/spuelf.em (params): Init new fields.
249         (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
250         (spu_place_special_section): Adjust placement for soft-icache.  Pad
251         soft-icache section to a fixed size.  Clear addr_tree.
252         (spu_elf_load_ovl_mgr): Support soft-icache.  Map overlay manager
253         sections a little more intelligently.
254         (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
255         (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
256         (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
257         (OPTION_SPU_LRLIVE): Define.
258         (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
259         (PARSE_AND_LIST_OPTIONS): Likewise.
260         (PARSE_AND_LIST_ARGS_CASES): Handle them.
261         * emultempl/spu_icache.S: Dummy file.
262         * emultempl/spu_icache.o_c: Regenerate.
263         * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
264         (spu_icache.o_c): Add rule to build.
265         (CLEANFILES): Zap temp files.
266         (EXTRA_DIST): Add spu_icache.o_c.
267         * Makefile.in: Regenerate.
269 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
271         * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
272         (gld..._add_options): Add new option
273         --use-nul-prefixed-import-tables.
274         (gld..._handle_option): Likewise.
275         * pep.em: Same as for pe.em.
276         * ld.texinfo: Add new option documentation for
277         --use-nul-prefixed-import-tables.
278         * pe-dll.c (pe_use_nul_prefixed_import_tables): New.
279         (make_head): Make prefix leading zero prefix element for
280         idata$4 and idata$5 dependent to new flag.
281         (make_import_fixup_entry): Remove idata4/5 prefix.
282         * pe-dll.h (pe_use_nul_prefixed_import_tables): New.
283         * pep-dll.c (pe_use_nul_prefixed_import_tables): New.
284         * pep-dll.h (pep_use_nul_prefixed_import_tables): New.
285         * NEWS: Add new option.
287 2009-01-05  Kai Tietz  <kai.tietz@onevision.com>
289         * emultempl/pe.em: Prefix dollar characters to be outputed in
290         generated C file.
291         * emultempl/pep.em: Likewise.
293 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
295         * NEWS:  Mention new feature --exclude-modules-for-implib.
296         * ld.texinfo:  Document new --exclude-modules-for-implib option.
297         * pe-dll.c (exclude_list_struct):  Change type member from int to
298         new enumeration exclude_type.
299         (pe_dll_add_excludes):  Accept exclude_type instead of int param.
300         (auto_export):  Replace magic constants by exclude_type values and
301         handle new choice EXCLUDEFORIMPLIB.
302         (pe_dll_generate_implib):  Accept a pointer to the link_info and
303         iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
304         fresh BFDs for any found and link into import lib archive chain.
305         * pe-dll.h (exclude_type):  Add new enumerated type to replace magic
306         constants previously used for exclude_list_struct type member.
307         (pe_dll_add_excludes, pe_dll_generate_implib):  Update prototypes.
308         * pep-dll.h (exclude_type, pe_dll_add_excludes,
309         pe_dll_generate_implib):  Likewise to all the above.
310         * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB):  Define new
311         getopts long option code for new --exclude-modules-for-implib option.
312         (gld${EMULATION_NAME}_add_options):  Add new entry to xtra_long[].
313         (gld_${EMULATION_NAME}_list_options):  List usage for it.
314         (gld${EMULATION_NAME}_handle_option):  Use exclude_type enumerated
315         values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
316         (gld_${EMULATION_NAME}_finish):  Pass pointer to link_info when
317         calling pe_dll_generate_implib.
318         * emultempl/pep.em (options):  Define new enumerated value for getopts
319         long option code for new --exclude-modules-for-implib option.
320         (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
321         gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
322         Again, likewise to all the above.
324 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
326         * pe-dll.c (autofilter_liblist):  Add entry for shared libgcc.
327         (libnamencmp):  New function.
328         (auto_export):  Use it in place of strncmp when filtering libraries.
330 For older changes see ChangeLog-2008
332 Local Variables:
333 mode: change-log
334 left-margin: 8
335 fill-column: 74
336 version-control: never
337 End: