STT_GNU_IFUNC support for PowerPC.
[external/binutils.git] / ld / ChangeLog
1 2009-07-10  Alan Modra  <amodra@bigpond.net.au>
2
3         * emulparams/elf32ppc.sh (GOTPLT, PLT): Handle .iplt.
4
5 2009-07-06  Matthias Klose <doko@ubuntu.com>
6
7         * ld.texinfo: Fix typo.
8
9 2009-07-03  Tristan Gingold  <gingold@adacore.com>
10
11         * scripttempl/pep.sc: Put .eh_frame in its own section.
12         * scripttempl/pe.sc: Ditto.
13         
14 2009-06-26  Kai Tietz  <kai.tietz@onevision.com>
15
16         * scripttempl/pe.sc (.debug_pubtypes): Added section rule.
17         * scripttempl/pep.sc: Likewise.
18
19 2009-06-25  Tristan Gingold  <gingold@adacore.com>
20
21         * ldlang.c (print_input_section): Add is_discarded parameter.  Adjust
22         prototype.
23         (lang_map): Print the size of discarded sections.
24         (print_statement): Adjust call to print_input_section.
25
26 2009-06-18  Dave Korn  <dave.korn.cygwin@gmail.com>
27
28         Merge cegcc and mingw32ce target name changes from CeGCC project:
29
30         2008-09-24  Pedro Alves  <pedroalves@users.sourceforge.net>
31
32         * configure.tgt (arm*-*-cegcc*): Set LIB_PATH to
33         ${tooldir}/lib/w32api.
34
35         2007-12-25  Pedro Alves  <pedro_alves@portugalmail.pt>
36
37         * configure.tgt: Add arm*-*-cegcc* target.
38
39         2007-12-17  Pedro Alves  <pedro_alves@portugalmail.pt>
40
41         * configure.tgt: Add arm-*-mingw32ce* target.
42
43 2009-06-10  Philip Blundell  <philb@gnu.org>
44
45         * emultempl/armelf.em (gld${EMULATION_NAME}_finish): Avoid crash
46         if section has no ELF data.
47
48 2009-06-06  H.J. Lu  <hongjiu.lu@intel.com>
49
50         * scripttempl/elf.sc: Add .rel.ifunc and .rela.ifunc.
51
52 2009-06-05  H.J. Lu  <hongjiu.lu@intel.com>
53
54         * scripttempl/elf.sc: Remove .rel.ifunc.dyn and .rela.ifunc.dyn.
55
56 2009-06-04  Alan Modra  <amodra@bigpond.net.au>
57
58         * dep-in.sed: Don't use \n in replacement part of s command.
59         * Makefile.am (DEP1): LC_ALL for uniq.
60         * Makefile.in: Regenerate.
61
62 2009-06-01  H.J. Lu  <hongjiu.lu@intel.com>
63
64         * scripttempl/elf.sc (PLT): Add "*(.iplt)".
65         (GOT): Add "*(.igot.plt)a" and "*(.igot)".
66         (GOTPLT): Add "*(.igot)".
67         (__rel_iplt_start): New.
68         (__rel_iplt_end): Likewise.
69         (__rela_iplt_start): Likewise.
70         (__rela_iplt_end): Likewise.
71
72 2009-05-27  Dave Korn  <dave.korn.cygwin@gmail.com>
73
74         * deffilep.y (%union):  Add new string-type semantic value 'digits'.
75         (%token):  Remove NUMBER as token, add DIGITS.
76         (%type):  Add NUMBER as type.  Add new id types anylang_id, opt_id.
77         (ALIGNCOMM):  Parse an anylang_id instead of a plain ID.
78         (anylang_id):  New production.
79         (opt_digits):  Likewise.
80         (opt_id):  Likewise.
81         (NUMBER):  Likewise.
82         (def_lex):  Return strings of digits in raw string form as DIGITS
83         token, instead of converting to numeric integer type.
84
85 2009-05-26  Nathan Sidwell  <nathan@codesourcery.com>
86
87         * ldmain.c (main): Don't reject --relax -r.
88         * ld.texinfo (PowerPC ELF32): Document behaviour of relaxing
89         partial links.
90
91 2009-05-26  Nick Clifton  <nickc@redhat.com>
92
93         * po/id.po: Updated Indonesian translation.
94         * po/ld.pot: Updated template file.
95
96 2009-05-26  Alan Modra  <amodra@bigpond.net.au>
97
98         * dep-in.sed: Output one filename per line with all lines having
99         continuation backslash.  Prefix first line with "A", following
100         lines with "B".
101         * Makefile.am (DEP): Don't use dep.sed here.
102         (DEP1): Run $MKDEP on single files, use dep.sed here on dependencies,
103         sort and uniq.
104         * Makefile.in: Regenerate.
105
106 2009-05-26  Alan Modra  <amodra@bigpond.net.au>
107
108         * ldlang.c (lang_check_section_addresses): Ignore non-alloc sections.
109
110 2009-05-22  Julian Brown  <julian@codesourcery.com>
111
112         * emultempl/armelf.em (fix_cortex_a8): New.
113         (arm_elf_before_allocation): Call bfd_elf32_arm_set_cortex_a8_fix.
114         (arm_elf_create_output_section_statements): Add fix_cortex_a8 to
115         bfd_elf32_arm_set_target_relocs.
116         (OPTION_FIX_CORTEX_A8, OPTION_NO_FIX_CORTEX_A8): New.
117         (PARSE_AND_LIST_LONGOPTS): Add [no-]fix-cortex-a8 options.
118         (PARSE_AND_LIST_OPTIONS): Add [no-]fix-cortex-a8 options.
119         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_[NO_]FIX_CORTEX_A8.
120         * ld.texinfo (--[no-]fix-cortex-a8): Briefly document new options.
121
122 2009-05-22  Nathan Sidwell  <nathan@codesourcery.com>
123
124         * ldlang.c (lang_check_section_addresses): Ignore non-loadable
125         sections when checking for overlap.  Clarify error message
126         concerns load address.
127
128 2009-05-22  Alan Modra  <amodra@bigpond.net.au>
129
130         * Makefile.am: Run "make dep-am".
131         * Makefile.in: Regenerate.
132
133 2009-05-19  Dave Korn  <dave.korn.cygwin@gmail.com>
134
135         * NEWS:  Mention new feature.
136         * deffile.h (def_file_aligncomm):  Add new struct definition.
137         (def_file):  Add new def_file_aligncomm member.
138         * deffilep.y (%token):  Add new ALIGNCOMM token.
139         (command):  Add production rule for ALIGNCOMM.
140         (def_file_free):  Free any chained def_file_aligncomm structs.
141         (diropts[]):  Add entry for '-aligncomm' .drectve command.
142         (def_aligncomm):  New grammar function.
143         * ld.texinfo:  Document new feature.
144         * pe-dll.c (process_def_file):  Rename from this ...
145         (process_def_file_and_drectve):  ... to this, updating all callers,
146         and process any aligncomms chained to the def file after scanning
147         all .drectve sections.
148         (generate_edata):  Updated to match.
149         (pe_dll_build_sections):  Likewise.
150
151 2009-05-17  Aaron W. LaFramboise  <aaron98wiridge9@aaronwl.com>
152
153         * pe-dll.c (process_def_file): Do not create empty export table.
154
155 2009-05-15  Alan Modra  <amodra@bigpond.net.au>
156
157         * ldlang.c (lang_output_section_statement_lookup): Add function
158         comment.  Make "name" non-const.  Ensure duplicate entries use
159         the same string, allowing simple comparison in hash bucket loop.
160         Tweak constraint check.
161         (next_matching_output_section_statement): New function.
162         * ldlang.h (lang_output_section_statement_lookup): Update.
163         (next_matching_output_section_statement): Declare.
164         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
165         combine orphan sections when input sections flags differ in
166         alloc or load.
167         * emultempl/pe.em: Formatting throughout.
168         (gld${EMULATION_NAME}_place_orphan): As for elf32.em.
169         * emultempl/pep.em: Formatting throughout.
170         (gld${EMULATION_NAME}_place_orphan): As for elf32.em.
171
172 2009-05-14  Ulrich Weigand  <uweigand@de.ibm.com>
173
174         * emultempl/spuelf.em (PARSE_AND_LIST_ARGS_CASES): Always use
175         compact stubs with software i-cache.
176
177 2009-05-14  Alan Modra  <amodra@bigpond.net.au>
178
179         * emultempl/spuelf.em (spu_before_allocation): Call
180         spu_elf_place_overlay_data.
181
182 2009-05-14  Alan Modra  <amodra@bigpond.net.au>
183
184         * ldlang.c (lang_insert_orphan): Add __start_<section> symbol
185         assignment inside output section statement.  Ensure only one
186         set of symbols per output section.
187         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Add non-
188         dollar sections before dollar sections.  Correct add_child
189         list insertion.
190         * emultempl/pep.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
191
192 2009-05-05  Paul Brook  <paul@codesourcery.com>
193
194         * emultempl/armelf.em (compare_output_sec_vma): New function.
195         (gld${EMULATION_NAME}_finish): Add exidx munging code.
196
197 2009-05-05  Anatoly Sokolov  <aesok@post.ru>
198
199         * scripttempl/avr.sc (MEMORY): Use DATA_ORIGIN.
200         * emulparams/avr1.sh (DATA_ORIGIN): Add.
201         * emulparams/avr2.sh (DATA_ORIGIN): Add.
202         * emulparams/avr25.sh (DATA_ORIGIN): Add.
203         * emulparams/avr3.sh (DATA_ORIGIN): Add.
204         * emulparams/avr31.sh (DATA_ORIGIN): Add.
205         * emulparams/avr35.sh (DATA_ORIGIN): Add.
206         * emulparams/avr4.sh (DATA_ORIGIN): Add.
207         * emulparams/avr5.sh (DATA_ORIGIN): Add.
208         * emulparams/avr51.sh (DATA_ORIGIN): Add.
209         (DATA_LENGTH): Update.
210         * emulparams/avr6.sh (DATA_ORIGIN): Add.
211         (DATA_LENGTH): Update.
212
213 2009-05-04  Dave Korn  <dave.korn.cygwin@gmail.com>
214
215         * NEWS:  Mention new feature.
216         * ld.texinfo (--version-script):  Document extent of PE support.
217         (WIN32):  Mention --version-script.  Extend auto-export description.
218         * pe-dll.c (process_def_file):  Use version script info to filter
219         symbols from auto-export.
220         * testsuite/ld-pe/vers-script-1.d:  New file.
221         * testsuite/ld-pe/vers-script-2.d:  New file.
222         * testsuite/ld-pe/vers-script-3.d:  New file.
223         * testsuite/ld-pe/vers-script-4.d:  New file.
224         * testsuite/ld-pe/vers-script-1.ver:  New file.
225         * testsuite/ld-pe/vers-script-2.ver:  New file.
226         * testsuite/ld-pe/vers-script-3.ver:  New file.
227         * testsuite/ld-pe/vers-script-4.ver:  New file.
228         * testsuite/ld-pe/vers-script-dll.c:  New file.
229         * testsuite/ld-pe/vers-script.exp:  New test script.
230
231 2009-05-01  Nathan Sidwell  <nathan@codesourcery.com>
232
233         * emulparams/vxworks.sh (TEXT_START_ADDR): Override.
234
235 2009-04-30  Nick Clifton  <nickc@redhat.com>
236
237         * NEWS: Mention support for IFUNC symbols.
238
239 2009-04-29  Anthony Green  <green@moxielogic.com>
240
241         * emulparams/elf32moxie.sh (STACK_ADDR): Move default stack
242         position out to accommodate larger programs.
243
244 2009-04-29  Chris Demetriou  <cgd@google.com>
245
246         * lexsup.c (option_values): Add OPTION_NO_EXPORT_DYNAMIC.
247         (ld_options): Likewise.
248         (parse_args): Likewise.
249         * ld.texinfo: Document --no-export-dynamic.
250         * NEWS: Mention --no-export-dynamic.
251
252 2009-04-29  Alan Modra  <amodra@bigpond.net.au>
253
254         * deffilep.y (STACKSIZE_K): Rename from STACKSIZE.
255
256 2009-04-25  Alan Modra  <amodra@bigpond.net.au>
257
258         PR 10061
259         * genscripts.sh: Don't pass $EMULATION_NAME as $CUSTOMIZER_SCRIPT
260         param.
261
262 2009-04-21  Daniel Jacobowitz  <dan@codesourcery.com>
263
264         * emultempl/armelf.em (bfd_for_interwork, arm_elf_after_open)
265         (arm_elf_set_bfd_for_interworking): Delete.
266         (arm_elf_before_allocation): Do not set the interworking BFD.
267         Move allocation inside not-dynamic block.
268         (arm_elf_create_output_section_statements): Create glue sections
269         and set the interworking BFD here.
270         (LDEMUL_AFTER_OPEN): Delete.
271
272 2009-04-16  Richard Sandiford  <r.sandiford@uk.ibm.com>
273
274         * ldlang.c (lang_one_common): Use bfd_define_common_symbol.
275
276 2009-04-15  Anthony Green  <green@moxielogic.com>
277
278         * configure.tgt: Add moxie support.
279         * Makefile.am: Add moxie files.
280         * Makefile.in: Rebuilt.
281         * emulparams/elf32moxie.sh: New file.
282         * scripttempl/moxie.sc: New file.
283
284 2009-04-15  Kazu Hirata  <kazu@codesourcery.com>
285
286         * ldlang.c: Do not include limits.h.
287
288 2009-04-14  Alan Modra  <amodra@bigpond.net.au>
289
290         PR ld/10047
291         * ldfile.c (find_scripts_dir): Use make_relative_prefix to find
292         ldscripts in build tree.  Don't repeat search for ../lib/ldscripts.
293
294 2009-04-13  H.J. Lu  <hongjiu.lu@intel.com>
295
296         * ldfile.c (ldfile_find_command_file): Revert the last change.
297
298 2009-04-11  H.J. Lu  <hongjiu.lu@intel.com>
299
300         PR ld/10047
301         * ldfile.c (ldfile_find_command_file): First try raw name.
302
303 2009-04-09  Nick Clifton  <nickc@redhat.com>
304
305         PR 9824
306         * ld.texinfo (Output Section Constraint): New node.  Documents the
307         ONLY_IF_RO and ONLY_IF_RW constraints.
308         (Symbolic Constants): New node.  Documents the CONSTANT operator.
309
310 2009-04-09  Thilo Fischer <thilo.fischer@uni-muenster.de>
311
312         * emultempl/spuelf.em (embedded_spu_file): Use pex_one in place
313         of fork/execvp.
314
315 2009-04-08  H.J. Lu  <hongjiu.lu@intel.com>
316
317         * lexsup.c (option_values): Add OPTION_WARN_ALTERNATE_EM.
318         (ld_options): Likewise.
319         (parse_args): Likewise.
320
321         * ld.texinfo: Document --warn-alternate-em.
322
323         * NEWS: Mention --warn-alternate-em.
324
325 2009-04-07  DJ Delorie  <dj@redhat.com>
326
327         * emulparams/elf32mep.sh: Change default endian to little.
328
329 2009-04-07  Nick Clifton  <nickc@redhat.com>
330
331         * ld.texinfo (Output Section Address): Note that specifying an
332         address for an output section will only change the location
333         counter if the output section is used.
334
335 2009-04-06  Kazu Hirata  <kazu@codesourcery.com>
336
337         * ldfile.c (ldfile_find_command_file): Initialize result.
338
339 2009-04-06  Kazu Hirata  <kazu@codesourcery.com>
340
341         * ld.texinfo (-L): Mention that -L options do not affect how ld
342         searches for a linker script unless -T option is specified.
343         * ldfile.c (ldfile_find_command_file): Append the path obtained
344         from the program name to the search path instead of
345         prepending. Add a new parameter "default_only". Restrict the
346         search to the default script location if the new parameter is
347         true.
348         (ldfile_open_command_file_1): New.
349         (ldfile_open_command_file): Call ldfile_open_command_file_1.
350         (ldfile_open_default_command_file): New.
351
352 2009-04-03  Nathan Sidwell  <nathan@codesourcery.com>
353
354         * ldlang.c (lang_leave_output_section_statement): Set lma_region
355         if it is not overridden and section is for the same vma region as
356         the previous section.
357
358 2009-04-02  Dave Korn  <dave.korn.cygwin@gmail.com>
359
360         PR ld/6744
361         * ld.texinfo (--export-dynamic):  Mention --export-all-symbols.
362         * emultempl/pe.em (gld_${EMULATION_NAME}_after_parse):  Issue
363         warning if --export-dynamic was passed on command-line.
364         * emultempl/pep.em (gld_${EMULATION_NAME}_after_parse):  Likewise.
365
366 2009-04-01  Richard Sandiford  <r.sandiford@uk.ibm.com>
367
368         * emultempl/aix.em (gld${EMULATION_NAME}_open_dynamic_archive): New
369         function.
370         (ld_${EMULATION_NAME}_emulation): Use it.
371
372 2009-03-20  H.J. Lu  <hongjiu.lu@intel.com>
373
374         PR ld/9970
375         * ldlang.c (lang_end): Warn missing entry symbol for -pie.
376
377 2009-03-19  Alan Modra  <amodra@bigpond.net.au>
378
379         * emultempl/spuelf.em (spu_before_allocation): Report errors from
380         spu_elf_find_overlays.
381
382 2009-03-18  H.J. Lu  <hongjiu.lu@intel.com>
383
384         PR ld/6766
385         * lexsup.c (parse_args): Call ldlang_add_undef for -e.
386
387 2009-03-18  Alan Modra  <amodra@bigpond.net.au>
388
389         * ld.h: Remove alloca handling.
390
391 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
392
393         * emultempl/spu_icache.S: Add new entry to dummy handler.
394         * emultempl/spu_icache.o_c: Regenerate.
395         * emultempl/spuelf.em (params): Init new field.
396         (no_overlays): New static var.
397         (spu_before_allocation): Use it.
398         (OPTION_SPU_COMPACT_STUBS): Define.
399         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add compact-stubs.
400         (PARSE_AND_LIST_ARGS_CASES): Handle compact-stubs.  Adjust no-overlays
401         handling.
402
403 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
404
405         * configure.host (HOSTING_LIBS): Two dollars on shell variable
406         expansion to suit make.
407
408 2009-03-17  Alan Modra  <amodra@bigpond.net.au>
409
410         * configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL.
411         * Makefile.am (check-DEJAGNU): Set DO_COMPARE.
412         * aclocal.m4: Regenerate.
413         * configure: Regenerate.
414         * Makefile.in: Regenerate.
415
416 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
417
418         * emultempl/aix.em (auto_export_flags): New variable.
419         (explicit_auto_export_flags): Likewise.
420         (OPTION_EXPALL, OPTION_EXPFULL): New enum values.
421         (OPTION_NOEXPALL, OPTION_NOEXPFULL): Likewise.
422         (gld${EMULATION_NAME}_add_options): Add -bexpall, -bexpfull,
423         -bnoexpall and -bnoexpfull.
424         (gld${EMULATION_NAME}_handle_option): Handle them.
425         (gld${EMULATION_NAME}_before_allocation): Update the call to
426         bfd_size_dynamic_sections.
427
428 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
429
430         * emultempl/aix.em (gld${EMULATION_NAME}_handle_option): Make
431         -berok and -bernotok control link_info.unresolved_syms_in_objects
432         and link_info.unresolved_syms_in_shared_libs instead of
433         force_make_executable.
434
435 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
436
437         * emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Set
438         config.dynamic_link to TRUE.
439
440 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
441
442         * emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Mark
443         .text, .data and .bss output sections as SEC_KEEP.
444
445 2009-03-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
446
447         * configure.tgt: Extend AIX 5 behavior to AIX 6 and above.
448
449 2009-03-14  Dave Korn  <dave.korn.cygwin@gmail.com>
450             Danny Smith  <dannysmith@users.sourceforge.net>
451
452         * emultmpl/pe.em (pe_dll_characteristics): New variable.
453         (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
454         OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
455         OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
456         New macros for options to set DllCharacteristics flag bits.
457         (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
458         nxcompat, no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
459         (init): Add DllCharacteristics field.
460         (gld_${EMULATION_NAME}_list_options): List new options.
461         (gld${EMULATION_NAME}_handle_option): Handle new options.
462         * emultmpl/pep.em (pe_dll_characteristics): New variable.
463         (OPTION_DYNAMIC_BASE, OPTION_FORCE_INTEGRITY, OPTION_NX_COMPAT,
464         OPTION_NO_ISOLATION. OPTION_NO_SEH, OPTION_NO_BIND,
465         OPTION_WDM_DRIVER, OPTION_TERMINAL_SERVER_AWARE):
466         New macros for options to set DllCharacteristics flags.
467         (gld${EMULATION_NAME}_add_options): Add dynamicbase, forceinteg,
468         nxcompat,no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
469         (init): Add DllCharacteristics field.
470         (gld_${EMULATION_NAME}_list_options): List new options.
471         (gld${EMULATION_NAME}_handle_option): Handle new options.
472         * ldtexinfo : Document dynamicbase, forceinteg, nxcompat,
473         no-isolation, no-seh, no-bind, wdmdriver, tsaware options.
474
475 2009-03-06  Nick Clifton  <nickc@redhat.com>
476
477         * po/es.po: Updated Spanish translation.
478
479 2009-03-03  Dave Korn  <dave.korn.cygwin@gmail.com>
480
481         * emultempl/pe.em (debug_section_p):  New bfd_map_over_sections hook.
482         (gld_${EMULATION_NAME}_after_open):  Use it to iterate all sections
483         of all input BFDs, looking for debug info.  Enable long section names
484         if any found.
485         * emultempl/pe.em (debug_section_p):  Likewise.
486         (gld_${EMULATION_NAME}_after_open):  Likewise.
487         * NEWS:  Retrospectively adjust news announcement.
488         * ld.texinfo:  Update documentation to mention new behaviour.
489
490 2009-03-03  Alan Modra  <amodra@bigpond.net.au>
491
492         * Makefile.am: Run "make dep-am".
493         * Makefile.in: Regenerate.
494
495 2009-03-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
496
497         * ldgram.y: Add support for REGION_ALIAS operator.
498         * ldlang.c: Likewise.
499         * ldlang.h: Likewise.
500         * ldlex.l: Likewise.
501         * NEWS: Mention the new feature.
502         * ld.texinfo: Document the new feature.
503
504 2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
505
506         * Makefile.am: Replace score elf emulation with score3 and score7
507         emulations.
508         * Makefile.in: Regenerate,
509         * NEWS: Mention support for Score7 architecture.
510         * configure.tgt: Add score7 emulation to score-elf target.
511         * emulparams/scoreelf.sh: Add score7 support.
512         * emultempl/scoreelf.em: Likewise.
513
514 2009-03-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
515
516         * configure.tgt: Only use elf64hppa target emulation for hpux.
517         * emulparams/elf64hppa.sh: Don't include hppa64linux.sh.
518         (SCRIPT_NAME): Use new script elf64hppa.
519         (SCRIPT_NAME, ELFSIZE, NO_REL_RELOCS, ARCH, MACHINE, ENTRY,
520         TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT, OTHER_READONLY_SECTIONS,
521         OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS, OTHER_GOT_RELOC_SECTIONS,
522         DATA_START_SYMBOLS, OTHER_SYMBOLS, DATA_PLT, PLT_BEFORE_GOT,
523         TEXT_DYNAMIC): Define.
524         * emulparams/hppa64linux.sh: Adjust comments.
525         * scripttempl/elf64hppa.sc: New file.
526
527 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
528
529         * configure: Regenerate.
530
531 2009-02-27  Dave Korn  <dave.korn.cygwin@gmail.com>
532
533         * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):  Set
534         default state of auto-import flag based on $target.
535
536 2009-02-24  Joseph Myers  <joseph@codesourcery.com>
537
538         * ld.texinfo (ARM): Document changed meaning of --stub-group-size.
539         * emultempl/armelf.em (hook_in_stub): Insert after the input section.
540         (elf32_arm_add_stub_section): Update comment.
541         (PARSE_AND_LIST_OPTIONS): Update help for --stub-group-size.
542
543 2009-02-24  Sandra Loosemore  <sandra@codesourcery.com>
544
545         * ld.texinfo (Options): Correct typos in example.  Recommend
546         using joined forms of syntax for passing options with arguments 
547         from a driver.
548         (-a): Use consistent syntax for documenting option arguments.
549         Clean up indexing and markup.
550         (-A/--architecture): Likewise.
551         (-f/--auxiliary): Likewise.
552         (-F/--filter): Likewise.
553         (-fini): Likewise.
554         (-G/--gpsize): Likewise.
555         (-h/-soname):Likewise.
556         (-init): Likewise.
557         (-l/--library): Likewise.
558         (-L/--library-path): Likewise.
559         (-m): Likewise.
560         (--defsym): Likewise.
561         (-I/--dynamic-linker): Likewise.
562         (-Map): Likewise.
563         (--oformat): Likewise.
564         (--retain-symbols-file): Likewise.
565         (-rpath): Likewise.
566         (-rpath-link): Likewise.
567         (--sort-common): Likewise.
568         (--sort-section): Likewise.
569         (--split-by-file): Likewise.
570         (--split-by-reloc): Likewise.
571         (--sysroot): Likewise.
572         (--section-start): Likewise.
573         (-Tbss, -Tdata, -Ttext): Likewise.
574         (-Ttext-segment): Likewise.
575         (--version-script): Likewise.
576         (--wrap): Likewise.
577
578 2009-02-18  Dave Korn  <dave.korn.cygwin@gmail.com>
579
580         * ld.texinfo:  Update to mention long section name options.
581         * NEWS:  Mention new behaviour and command-line options.
582         * pe-dll.c (pe_use_coff_long_section_names):  New global variable.
583         (pe_output_file_set_long_section_names):  New function.
584         (pe_dll_build_sections):  Call it on output BFDs.
585         (pe_exe_build_sections):  Likewise.
586         (pe_dll_fill_sections):  Likewise.
587         (pe_exe_fill_sections):  Likewise.
588         * pe-dll.h (pe_use_coff_long_section_names):  Declare extern.
589         (pe_output_file_set_long_section_names):  Add prototype.
590         * pep-dll.c (pe_use_coff_long_section_names):  Define pep_ alias.
591         (pe_output_file_set_long_section_names):  Likewise.
592         * pep-dll.h (pep_use_coff_long_section_names):  Declare extern.
593         (pep_output_file_set_long_section_names):  Add prototype.
594         * pe.em (OPTION_ENABLE_LONG_SECTION_NAMES):  New getopt value macro.
595         (OPTION_DISABLE_LONG_SECTION_NAMES):  Likewise.
596         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
597         (gld_${EMULATION_NAME}_list_options):  Describe them.
598         (gld${EMULATION_NAME}_handle_option):  Set or clear global
599         pe_use_coff_long_section_names flag when options recognised.
600         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
601         for main output bfd by calling pe_output_file_set_long_section_names.
602         * pep.em (enum options):  Extend enum with new getopt option values.
603         (gld${EMULATION_NAME}_add_options):  Add new options to xtra_long[].
604         (gld_${EMULATION_NAME}_list_options):  Describe them.
605         (gld${EMULATION_NAME}_handle_option):  Set or clear global
606         pe_use_coff_long_section_names flag when options recognised.
607         (gld_${EMULATION_NAME}_after_open):  En/disable long section names
608         for main output bfd by calling pep_output_file_set_long_section_names.
609
610 2009-02-16  Dave Korn  <dave.korn.cygwin@gmail.com>
611
612         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):  Don't emit
613         inadvertent .reloc sections caused by refactoring accident.
614
615 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
616
617         * ldlang.c (process_insert_statements): ASSERT that output section
618         statements are in order.
619
620 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
621
622         * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions.
623         (stat_save, stat_save_ptr): New variables.
624         (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr.
625         (load_symbols): Likewise.  Delete dead "bad_load" code.
626         (open_input_bfds): Warn on script containing output sections.
627         (lang_enter_output_section_statement): Use push_stat_ptr.
628         (lang_enter_group): Likewise.
629         (lang_leave_output_section_statement): Use pop_stat_ptr.
630         (lang_leave_group): Likewise.
631         * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare.
632         * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr.
633         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
634         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
635         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
636         * emultempl/spuelf.em (spu_place_special_section): Likewise.
637         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise.
638
639 2009-02-09  Nathan Sidwell  <nathan@codesourcery.com>
640
641         Missing piece of 2009-01-26 commit
642         * ldlang.c (lang_process): Don't consider relocatable flag when
643         checking for overlap.
644
645 2009-02-05  Joseph Myers  <joseph@codesourcery.com>
646
647         * emulparams/m68kelf.sh: Add newline at end of file.
648
649 2009-02-04  Nick Clifton  <nickc@redhat.com>
650
651         PR 9805
652         * ld.texinfo (--allow-shlib-undefined): Correct description of
653         default settings and tidy up the rest of the entry.
654
655 2009-02-04  Alan Modra  <amodra@bigpond.net.au>
656
657         * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
658         during relocatable link.
659
660 2009-02-03  Nick Clifton  <nickc@redhat.com>
661
662         PR 9797
663         * ld.texinfo (Constants): Document the base-encoding suffixes
664         supported in linker scripts.
665
666 2009-02-03  Alan Modra  <amodra@bigpond.net.au>
667
668         * NEWS: Mention --as-needed change.
669
670 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
671
672         * configure.in: AC_SUBST pdfdir.
673         * Makefile.am: Add install-pdf, install-pdf-am,
674         and install-pdf-recursive targets. Define pdf__strip_dir.
675         * po/Make-in: Add install-pdf target.
676         * configure: Regenerate.
677         * Makefile.in: Regenerate.
678
679 2009-01-31  Alan Modra  <amodra@bigpond.net.au>
680
681         * ld.texinfo (--as-needed): Update.
682
683 2009-01-29  Andrew Jenner  <andrew@codesourcery.com>
684
685         * emultempl/armelf.em: Correct formatting of help text for
686         --no-enum-size-warning option.
687
688 2009-01-26  Nathan Sidwell  <nathan@codesourcery.com>
689
690         * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
691         * ld.h (args_type): Make check_section_addresses a char.
692         * ldmain.c (main): Default check_section_addresses to -1. Check it
693         for relocatable links.
694         * ld.texinfo (--check-sections): Update documentation.
695
696 2009-01-26  Kai Tietz  <kai.tietz@onevision.com>
697
698         * pe-dll.c (tmp_seq2): New static variable.
699         (make_singleton_name_imp): New.
700         (make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
701         avoid duplicate import table generation for same symbol.
702         (pe_create_runtime_relocator_reference): Make reference for
703         64-bit 8 bytes.
704
705 2009-01-21  Alan Modra  <amodra@bigpond.net.au>
706
707         * emultempl/spuelf.em (params): Init new field.
708         (OPTION_SPU_NON_IA_TEXT): Define.
709         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
710         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
711
712 2009-01-16  H.J. Lu  <hongjiu.lu@intel.com>
713
714         * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
715         (ld_options): Add -Ttext-segment.
716         (parse_args): Handle OPTION_TTEXT_SEGMENT.
717
718         * ld.texinfo: Document -Ttext-segment.
719
720         * NEWS: Mention -Ttext-segment.
721
722         * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
723         (SHLIB_TEXT_START_ADDR): Likewise.
724
725 2009-01-13  Alan Modra  <amodra@bigpond.net.au>
726
727         * emultempl/spu_icache.o_c: Regenerate.
728
729 2009-01-12  Alan Modra  <amodra@bigpond.net.au>
730
731         * emultempl/spuelf.em (params): Init new fields.
732         (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
733         (spu_place_special_section): Adjust placement for soft-icache.  Pad
734         soft-icache section to a fixed size.  Clear addr_tree.
735         (spu_elf_load_ovl_mgr): Support soft-icache.  Map overlay manager
736         sections a little more intelligently.
737         (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
738         (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
739         (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
740         (OPTION_SPU_LRLIVE): Define.
741         (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
742         (PARSE_AND_LIST_OPTIONS): Likewise.
743         (PARSE_AND_LIST_ARGS_CASES): Handle them.
744         * emultempl/spu_icache.S: Dummy file.
745         * emultempl/spu_icache.o_c: Regenerate.
746         * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
747         (spu_icache.o_c): Add rule to build.
748         (CLEANFILES): Zap temp files.
749         (EXTRA_DIST): Add spu_icache.o_c.
750         * Makefile.in: Regenerate.
751
752 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
753
754         * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
755         (gld..._add_options): Add new option
756         --use-nul-prefixed-import-tables.
757         (gld..._handle_option): Likewise.
758         * pep.em: Same as for pe.em.
759         * ld.texinfo: Add new option documentation for
760         --use-nul-prefixed-import-tables.
761         * pe-dll.c (pe_use_nul_prefixed_import_tables): New.
762         (make_head): Make prefix leading zero prefix element for
763         idata$4 and idata$5 dependent to new flag.
764         (make_import_fixup_entry): Remove idata4/5 prefix.
765         * pe-dll.h (pe_use_nul_prefixed_import_tables): New.
766         * pep-dll.c (pe_use_nul_prefixed_import_tables): New.
767         * pep-dll.h (pep_use_nul_prefixed_import_tables): New.
768         * NEWS: Add new option.
769
770 2009-01-05  Kai Tietz  <kai.tietz@onevision.com>
771
772         * emultempl/pe.em: Prefix dollar characters to be outputed in
773         generated C file.
774         * emultempl/pep.em: Likewise.
775
776 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
777
778         * NEWS:  Mention new feature --exclude-modules-for-implib.
779         * ld.texinfo:  Document new --exclude-modules-for-implib option.
780         * pe-dll.c (exclude_list_struct):  Change type member from int to
781         new enumeration exclude_type.
782         (pe_dll_add_excludes):  Accept exclude_type instead of int param.
783         (auto_export):  Replace magic constants by exclude_type values and
784         handle new choice EXCLUDEFORIMPLIB.
785         (pe_dll_generate_implib):  Accept a pointer to the link_info and
786         iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
787         fresh BFDs for any found and link into import lib archive chain.
788         * pe-dll.h (exclude_type):  Add new enumerated type to replace magic
789         constants previously used for exclude_list_struct type member.
790         (pe_dll_add_excludes, pe_dll_generate_implib):  Update prototypes.
791         * pep-dll.h (exclude_type, pe_dll_add_excludes,
792         pe_dll_generate_implib):  Likewise to all the above.
793         * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB):  Define new
794         getopts long option code for new --exclude-modules-for-implib option.
795         (gld${EMULATION_NAME}_add_options):  Add new entry to xtra_long[].
796         (gld_${EMULATION_NAME}_list_options):  List usage for it.
797         (gld${EMULATION_NAME}_handle_option):  Use exclude_type enumerated
798         values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
799         (gld_${EMULATION_NAME}_finish):  Pass pointer to link_info when
800         calling pe_dll_generate_implib.
801         * emultempl/pep.em (options):  Define new enumerated value for getopts
802         long option code for new --exclude-modules-for-implib option.
803         (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
804         gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
805         Again, likewise to all the above.
806
807 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
808
809         * pe-dll.c (autofilter_liblist):  Add entry for shared libgcc.
810         (libnamencmp):  New function.
811         (auto_export):  Use it in place of strncmp when filtering libraries.
812
813 For older changes see ChangeLog-2008
814 \f
815 Local Variables:
816 mode: change-log
817 left-margin: 8
818 fill-column: 74
819 version-control: never
820 End: