02bcfd002adba3f9ca3f5bbeade74de293888368
[external/binutils.git] / ld / ChangeLog
1 2008-07-12  Jie Zhang  <jie.zhang@analog.com>
2
3         Revert
4         2008-07-12  Jie Zhang  <jie.zhang@analog.com>
5         * Makefile.am (eelf32bfin.c): Depend on bfin.em.
6         (eelf32bfinfd.c): Likewise.
7         * Makefile.in: Regenerate.
8         * gen-doc.texi: Set Blackfin.
9         * ld.texinfo: Document --sep-code and Blackfin specific
10         options.
11         * ldmain.c (main): Initialize link_info.sep_code.
12         * lexsup.c (enum option_values): Add OPTION_SEP_CODE.
13         (ld_options[]): Add --sep-code.
14         (parse_args): Deal with --sep-code.
15         * emulparams/bfin.sh (EXTRA_EM_FILE): Define.
16         * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
17         * emultempl/bfin.em: New file.
18
19 2008-07-12  Jie Zhang  <jie.zhang@analog.com>
20
21         * Makefile.am (eelf32bfin.c): Depend on bfin.em.
22         (eelf32bfinfd.c): Likewise.
23         * Makefile.in: Regenerate.
24         * gen-doc.texi: Set Blackfin.
25         * ld.texinfo: Document --sep-code and Blackfin specific
26         options.
27         * ldmain.c (main): Initialize link_info.sep_code.
28         * lexsup.c (enum option_values): Add OPTION_SEP_CODE.
29         (ld_options[]): Add --sep-code.
30         (parse_args): Deal with --sep-code.
31         * emulparams/bfin.sh (EXTRA_EM_FILE): Define.
32         * emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
33         * emultempl/bfin.em: New file.
34
35 2008-07-09  Danny Smith  <dannysmith@users.sourceforge.net>
36
37            *pe-dll.c (autofilter_symbolprefixlist): Excude all symbols
38            starting with ".".
39            Exclude "_IMPORT_DESCRIPTOR_".
40            (autofilter_symbolsuffixlist): Exclude "_NULL_THUNK_DATA".
41            (autofilter_symbollist_generic): Don't check for ".text".
42            Exclude "_NULL_IMPORT_DESCRIPTOR".
43            (autofilter_symbollist_i386): Likewise.
44
45 2008-07-07  Alan Modra  <amodra@bigpond.net.au>
46
47         * emultempl/armelf.em (elf32_arm_add_stub_section): Use
48         bfd_make_section_with_flags.
49         * emultempl/avrelf.em (avr_elf_create_output_section_statements):
50         Likewise.
51         * emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
52         * emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
53         * emultempl/m68kcoff.em (gld${EMULATION_NAME}_after_open): Likewise.
54         * emultempl/m68kelf.em (m68k_elf_after_open): Likewise.
55         * emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
56         * emultempl/sh64elf.em (sh64_elf_${EMULATION_NAME}_before_allocation):
57         Likewise.
58
59 2008-07-06  Nathan Sidwell  <nathan@codesourcery.com>
60
61         * ld.texinfo (File Commands): Document that INCLUDE can be used in
62         several different places.
63         * ldgram.y (statement, memory_spec, section): Allow INCLUDE.
64         (memory, memory_spec_list): Simplify BNF
65         (memory_spec_list_opt): New rule.
66         * ldlex.l (INCLUDE): Recognize in EXPRESSION.
67
68 2008-06-20  Alan Modra  <amodra@bigpond.net.au>
69
70         * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Make "can not
71         build overlay stubs" a fatal error.
72
73 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
74
75         * config.in: Regenerate.
76         * configure: Regenerate.
77
78 2008-06-17  Alan Modra  <amodra@bigpond.net.au>
79
80         * emultempl/spuelf.em (extra_stack_space): New variable.
81         (gld${EMULATION_NAME}_finish): Pass it to spu_elf_check_vma.
82         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
83         PARSE_AND_LIST_ARGS_CASES): Handle --extra-stack-space.
84         * emultempl/spu_ovl.S: Mask interrupts during dma and update of
85         overlay manager structures.
86         * emultempl/spu_ovl.o: Regenerate.
87
88 2008-06-16  Hans-Peter Nilsson  <hp@bitrange.com>
89
90         * ld.texinfo (@node MMIX): For the __.MMIX.start. prefix, only
91         mention it as being special for global symbols.
92
93 2008-06-12  Nick Clifton  <nickc@redhat.com>
94
95         * ldlang.c (print_output_section_statement): If the output section
96         statement has an update_dot_tree expression, apply it to
97         print_dot.
98         (print_input_section): Do not update print_dot if it would move
99         print_dot backwards.
100         (lang_do_assignments_1): If the output section statement has an
101         update_dot_tree expression apply it to dot.
102
103 2008-06-07  Alan Modra  <amodra@bigpond.net.au>
104
105         * NEWS: Mention archive:path patterns.
106         * ld.texinfo: Likewise.
107         * ldlang.c: Formatting throughout.
108         (archive_path): Only assume "[A-Za-z]:" is a dos drive.
109         (input_statement_is_archive_path): New function, extracted from..
110         (walk_wild): ..here.
111         (walk_wild_consider_section): Match archive:path here too.
112         (init_map_userdata, sort_def_symbol): Convert to ISO C.
113         * ldmain.c (main): Set link_info.path_separator.
114         * emultempl/spuelf.em (choose_target): Don't set it here.
115
116 2008-06-06  Alan Modra  <amodra@bigpond.net.au>
117
118         * ldlang.c (name_match): New function.
119         (unique_section_p, walk_wild_consider_section): Use it here.
120         (walk_wild_section_general): And here.
121         (archive_path): New function.
122         (walk_wild): Match archive:path filespecs.
123         (open_input_bfds): Don't load archive:path files.
124         * emultempl/spuelf.em (choose_target): Set path_separator.
125         * emulparams/elf32_spu.sh: Add ._ea.* sections to ._ea output.
126
127 2008-06-04  Nick Clifton  <nickc@redhat.com>
128
129         * ld.texinfo (Orphan Sections): Fix texi typo.
130
131 2008-06-04  Chris Metcalf  <cmetcalf@tilera.com>
132
133         * lexsup.c (option_values): Add OPTION_NO_WARN_FATAL.
134         (ld_options): Add entry for --no-fatal-warnings.
135         (parse_args): Handle OPTION_NO_WARN_FATAL.
136         * ld.texinfo (Options): Document new command line switch.
137
138 2008-06-04  Alan Modra  <amodra@bigpond.net.au>
139
140         * emultempl/spuelf.em (spu_elf_relink): Correct --no-auto-overlay arg.
141
142 2008-06-02  Nathan Sidwell  <nathan@codesourcery.com>
143
144         * ldlang.c (closest_target_match): Skip generic big and little
145         endian ELF targets.
146
147 2008-05-31  Evandro Menezes  <evandro@yahoo.com>
148
149         PR ld/6430
150         * ld.h (enum sort_order): New.
151         * ldlang.c (lang_check: Fix comment.
152         (lang_common): Sort commons in ascending or descending order.
153         (lang_one_common): Likewise.
154         * lexsup.c (ld_options): Have --sort-common take an option
155         argument.
156         (parse_args): Handle argument to --sort-common.
157         * ld.texinfo (--sort-common): Document new optional argument.
158         * NEWS: Mention new feature.
159
160 2008-05-28  Christophe Lyon  <christophe.lyon@st.com>
161         
162         * ld.texinfo: State that farcalls stubs are supported for ARM-EABI
163         only.
164
165 2008-05-27  Kai Tietz  <kai.tietz@onevision.com>
166
167         * pe-dll.c (fill_edata): Make sure we calculate vma's in
168         type bfd_vma.
169         (generate_reloc): Likewise.
170         (pe_implied_import_dll): Likewise.
171
172 2008-05-21  Nick Clifton  <nickc@redhat.com>
173
174         PR ld/6519
175         * ld.texinfo (Orphan Sections): Mention that the linker will
176         provide start and stop symbols for orphaned sections if their
177         names are valid C identifiers.
178         * NEWS: Add an addendum to the description of the linker feature
179         for providing orphan section start and end symbols.
180
181 2008-05-21  Maxim Kuvyrkov  <maxim@codesourcery.com>
182
183         * configure.in (--enable-got): New option.  Handle it.
184         * configure: Regenerate.
185         * config.in: Regenerate.
186         * emultempl/m68kelf.em: (got_handling_target_default): New shell
187         variable.
188         (GOT_HANDLING_TARGET_DEFAULT): New macro.
189         (GOT_HANDLING_DEFAULT): New macro.  Initialize it from configure
190         option if one was given.
191         (got_handling): New static variable.
192         (elf_m68k_create_output_section_statements): New static function
193         implementing hook.
194         (PARSE_AND_LIST_PROLOGUE): Define shell variable.
195         (OPTION_GOT): New macro.
196         (PARSE_AND_LIST_LONGOPTS): Define shell variable.  Specify
197         --got option.
198         (got): New linker option.
199         (PARSE_AND_LIST_OPTIONS): Define shell variable.  Print help string
200         for --got option.
201         (PARSE_AND_LIST_ARGS_CASES): Define shell variable.  Handle --got
202         option. 
203         * ld.texinfo: Document --got=<type> option.
204         * gen-doc.texi: Add M68K.
205         * NEWS: Mention the new feature.
206
207 2008-05-21  Evandro Menezes  <evandro@yahoo.com>
208
209         PR ld/6430
210         * ld.texinfo (--sort-common): Correct documentation to indicate
211         that sorting is performed by alignment, not size, biggest
212         alignment first.
213
214 2008-05-21  Christophe Lyon  <christophe.lyon@st.com>
215             Nick Clifton  <nickc@redhat.com>
216
217         * ld.texinfo (ARM): Document --stub-group-size=N option.
218         Move description of --pic-veneer option into the ARM section.
219         * NEWS: Mention the support for long function calls.
220
221 2008-05-15  Christophe Lyon  <christophe.lyon@st.com>
222         
223         * emultempl/armelf.em (build_section_lists): New function.
224         (stub_file): Define.
225         (need_laying_out): Define.
226         (group_size): Define.
227         (hook_stub_info): Define.
228         (hook_in_stub): New function.
229         (elf32_arm_add_stub_section): New function.
230         (gldarm_layout_sections_again): New function.
231         (gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
232         stubs for long calls if needed.
233         (arm_elf_create_output_section_statements): create stub_file bfd.
234         (arm_for_each_input_file_wrapper): New function.
235         (arm_lang_for_each_input_file): New function.
236         (lang_for_each_input_file): Define.
237         (PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
238         (PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
239         (PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
240         (PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
241         (LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
242         * lang.c (print_input_statement): Skip if bfd has
243         BFD_LINKER_CREATED.
244
245 2008-05-14  Alan Modra  <amodra@bigpond.net.au>
246
247         * Makefile.in: Regenerate.
248
249 2008-05-09  Kai Tietz  <kai.tietz@onevision.com>
250
251         ld/PR6502
252         * emultempl/pep.em (compute_dll_image_base): Use bfd_vma instead
253         of long and change return type to bfd_vma.
254         (definfo): Change type of address from long to bfd_vma.
255         (set_pep_value): Replace strtoul to strtoull.
256         (gld_${EMULATION_NAME}_set_symbols): use bfd_vma instead of long..
257         * pe-dll.c (pe_dll_generate_def_file): Use fprintf_vma to print
258         ImageBase.
259         (quick_reloc): Change argument address from int to bfd_size_type.
260
261 2008-05-08  Tom Tromey  <tromey@redhat.com>
262
263         * ld.texinfo (PowerPC64 ELF64): Fix typo.
264
265 2008-05-08  Alan Modra  <amodra@bigpond.net.au>
266
267         * elf32_spu.sh (OTHER_SECTIONS): Add "._ea".
268         * elf32ppc.sh: If building with spu support, put ".data.spehandle"
269         sections at the start of ".data" and provide a symbol to locate
270         the directory of embedded spe programs.
271
272 2008-05-08  Alan Modra  <amodra@bigpond.net.au>
273
274         * ldexp.c (exp_print_token): Add ABSOLUTE, MIN_K, ASSERT_K.  Correct
275         MAX_K.
276         (fold_binary <SEGMENT_START>): Set expld.result.section to
277         current section.  Expand comment.  Formatting.
278         (fold_name <DEFINED>): Set expld.result.section to current section.
279
280 2008-04-28  Nathan Sidwell  <nathan@codesourcery.com>
281
282         * ldlang.c (lang_size_sections_1): Don't check LMA overflow on
283         non-load sections.
284
285 2008-04-25  Michael Frysinger  <vapier@gentoo.org>
286
287         * configure.tgt (bfin-*-linux-uclibc*): Set targ_emul to elf32bfinfd
288         and targ_extra_emuls to elf32bfin.
289
290 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
291
292         * aclocal.m4: Regenerate.
293         * configure: Regenerate.
294
295 2008-04-03  Kai Tietz  <kai.tietz@onevision.com>
296
297         * scripttempl/pep.sc: Align start of symbol __CTOR_LIST__.
298
299 2008-04-08  Alan Modra  <amodra@bigpond.net.au>
300
301         * po/POTFILES.in: Regenerate.
302
303 2008-04-08  Alan Modra  <amodra@bigpond.net.au>
304
305         * emultempl/spuelf.em (auto_overlay, auto_overlay_file,
306         auto_overlay_fixed, auto_overlay_reserved, my_argc, my_argv): New vars.
307         (spu_before_allocation): Warn on --auto-overlay and existing overlays.
308         (struct tflist, clean_tmp): Move.
309         (new_tmp_file): New function, extracted from..
310         (embedded_spu_file): ..here.
311         (spu_elf_open_overlay_script, spu_elf_relink): New function.
312         (gld${EMULATION_NAME}_finish): Pass a bunch of --auto-overlay params.
313         Warn on --auto-overlay and zero local store.
314         (gld${EMULATION_NAME}_choose_target): New function to stash argv.
315         (OPTION_SPU_AUTO_OVERLAY, OPTION_SPU_AUTO_RELINK,
316         OPTION_SPU_OVERLAY_RODATA, OPTION_SPU_FIXED_SPACE,
317         OPTION_SPU_RESERVED_SPACE, OPTION_SPU_NO_AUTO_OVERLAY): Define.
318         (PARSE_AND_LIST_LONGOPTS): Add entries for new options.
319         (PARSE_AND_LIST_OPTIONS): Likewise.
320         (PARSE_AND_LIST_ARGS_CASES): Likewise.
321         (LDEMUL_CHOOSE_TARGET): Define.
322
323 2008-04-03  Kai Tietz  <kai.tietz@onevision.com>
324
325         PR ld/6026
326         * pe-dll.c (make_head): Fix iat and thunk addend offset.
327
328 2008-03-31  Nick Clifton  <nickc@redhat.com>
329
330         * po/fr.po: Updated French translation.
331
332 2008-03-24  Ian Lance Taylor  <iant@google.com>
333
334         The sha1 code is now in libiberty.
335         * sha1.c: Remove.
336         * sha1.h: Remove.
337         * Makefile.am (CFILES): Remove sha1.c.
338         (HFILES): Remove sha1.h.
339         (OFILES): Remove sha1.o.
340         (ld_new_SOURCES): Remove sha1.c.
341         (sha1.o): Remove target.
342         * Makefile.in: Rebuild.
343
344 2008-03-20  Alan Modra  <amodra@bigpond.net.au>
345
346         * emultempl/spuelf.em: Update calls to elf32-spu.c funcs.
347
348 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
349
350         * aclocal.m4: Regenerate.
351         * configure: Likewise.
352         * Makefile.in: Likewise.
353
354 2008-03-14  Alan Modra  <amodra@bigpond.net.au>
355
356         * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect
357         spu_elf_build_stubs with is_spu_target.
358
359 2008-03-13  Alan Modra  <amodra@bigpond.net.au>
360
361         * Makefile.am: Run "make dep-am".
362         * Makefile.in: Regenerate.
363         * configure: Regenerate.
364
365 2008-03-06  Joseph Myers  <joseph@codesourcery.com>
366             Roman Zippel  <zippel@linux-m68k.org>
367
368         * emulparams/m68kelf.sh (GENERATE_PIE_SCRIPT): Define.
369         (COMMONPAGESIZE): Define.
370
371 2008-02-22  Nick Clifton  <nickc@redhat.com>
372
373         PR ld/5785
374         * ldlang.c (lang_size_sections_1): Honour the setting of an
375         lma_region even if there is no vma region set, or the vma region
376         is the same as the lma region.
377
378 2008-02-18  Nick Clifton  <nickc@redhat.com>
379
380         * scripttempl/armbpabi.sc (ENTRY): Do not define when performing a
381         relocatable link.
382         * scripttempl/elf32cr16.sc: Likewise.
383         * scripttempl/elf32cr16c.sc: Likewise.
384         * scripttempl/elf32crx.sc: Likewise.
385         * scripttempl/elf32sh-symbian.sc: Likewise.
386         * scripttempl/elf_chaos.sc: Likewise.
387         * scripttempl/elfd10v.sc: Likewise.
388         * scripttempl/elfi370.sc: Likewise.
389         * scripttempl/elfm68hc11.sc: Likewise.
390         * scripttempl/elfm68hc12.sc: Likewise.
391         * scripttempl/ip2k.sc: Likewise.
392         * scripttempl/iq2000.sc: Likewise.
393         * scripttempl/mep.sc: Likewise.
394         * scripttempl/v850.sc: Likewise.
395         * scripttempl/xstormy16.sc: Likewise.
396
397 2008-02-16  Alan Modra  <amodra@bigpond.net.au>
398
399         PR ld/5761
400         * ldexp.c (fold_name <LOADADDR>): Check result of evaluating
401         load_base before calling make_abs.
402
403 2008-02-15  Alan Modra  <amodra@bigpond.net.au>
404
405         * emultempl/alphaelf.em (alpha_after_open): Use elf_object_id.
406         * emultempl/hppaelf.em (hppaelf_create_output_section_statements):
407         Likewise.
408         * emultempl/ppc64elf.em (ppc_create_output_section_statements):
409         Likewise.
410         * emultempl/ppc32elf.em (is_ppc_elf32_vec): Delete.  Replace all
411         uses with..
412         (is_ppc_elf): ..this new macro.
413
414 2008-02-15  Alan Modra  <amodra@bigpond.net.au>
415
416         * ldmain.h (output_bfd): Delete.
417         * ldmain.c (output_bfd): Delete.
418         Replace all occurrences of output_bfd with link_info.output_bfd.
419         * ldcref.c: Likewise.
420         * ldctor.c: Likewise.
421         * ldemul.c: Likewise.
422         * ldexp.c: Likewise.
423         * ldfile.c: Likewise.
424         * ldlang.c: Likewise.
425         * ldmisc.c: Likewise.
426         * ldwrite.c: Likewise.
427         * pe-dll.c: Likewise.
428         * emultempl/aix.em: Likewise.
429         * emultempl/alphaelf.em: Likewise.
430         * emultempl/armcoff.em: Likewise.
431         * emultempl/armelf.em: Likewise.
432         * emultempl/avrelf.em: Likewise.
433         * emultempl/beos.em: Likewise.
434         * emultempl/elf-generic.em: Likewise.
435         * emultempl/elf32.em: Likewise.
436         * emultempl/gld960.em: Likewise.
437         * emultempl/hppaelf.em: Likewise.
438         * emultempl/irix.em: Likewise.
439         * emultempl/linux.em: Likewise.
440         * emultempl/lnk960.em: Likewise.
441         * emultempl/m68hc1xelf.em: Likewise.
442         * emultempl/mmix-elfnmmo.em: Likewise.
443         * emultempl/mmo.em: Likewise.
444         * emultempl/pe.em: Likewise.
445         * emultempl/pep.em: Likewise.
446         * emultempl/ppc32elf.em: Likewise.
447         * emultempl/ppc64elf.em: Likewise.
448         * emultempl/scoreelf.em: Likewise.
449         * emultempl/sh64elf.em: Likewise.
450         * emultempl/spuelf.em: Likewise.
451         * emultempl/sunos.em: Likewise.
452         * emultempl/vanilla.em: Likewise.
453         * emultempl/vxworks.em: Likewise.
454         * emultempl/xtensaelf.em: Likewise.
455         * emultempl/z80.em: Likewise.
456         * ldlang.c (open_output): Don't return output, instead write
457         link_info_output_bfd directly.
458         * emultempl/alphaelf.em: Replace occurrences of link_info.hash->creator
459         with link_info.output_bfd->xvec.
460         * emultempl/hppaelf.em: Likewise.
461         * emultempl/ppc32elf.em: Likewise.
462         * emultempl/ppc64elf.em: Likewise.
463         * emultempl/spuelf.em: Likewise.
464
465 2008-02-07  Alan Modra  <amodra@bigpond.net.au>
466
467         * ldlang.c (new_afile): Don't pass unadorned NULL to concat.
468         * ldfile.c (ldfile_add_library_path): Likewise.
469         * emultempl/elf32.em (check_ld_elf_hints, check_ld_so_conf): Likewise.
470         * emultempl/lnk960.em (lnk960_before_parse): Likewise.
471         * emultempl/spuelf.em (embedded_spu_file): Likewise.
472
473 2008-02-07  Alan Modra  <amodra@bigpond.net.au>
474
475         * emultempl/spu_ovl.S: Use low bit of _ovly_table.size as
476         a "present" bit rather than low bit of .buf.  Correct indexing
477         into _ovly_buf_table.  Use relative loads and stores to access
478         overlay manager local vars.
479         * emultempl/spu_ovl.o: Regenerate.
480
481 2008-02-04  H.J. Lu  <hongjiu.lu@intel.com>
482
483         PR 5715
484         * configure: Regenerated.
485
486 2008-01-31  Marc Gauthier  <marc@tensilica.com>
487
488         * configure.tgt (xtensa*-*-*): Recognize processor variants.
489
490 2008-01-28  Fabian Groffen  <grobian@gentoo.org>
491
492         * configure.tgt (x86_64-*-solaris2): Add support for this target.
493
494 2008-01-28  Vincent Riviere  <vincent.riviere@freesbee.fr>
495
496         PR ld/5652
497         * genscripts.sh: Check for the existence of BASH_LINENO not just
498         the BASH shell before generating line numbers in the emulation
499         file.
500
501 2008-01-28  Alan Modra  <amodra@bigpond.net.au>
502
503         * emultempl/spu_ovl.S: Rewrite.
504         * emultempl/spu_ovl.o: Regenerate.
505         * emultempl/spuelf.em (toe): Delete.
506         (spu_place_special_section): Add param to control section placement.
507         Adjust callers.
508         (spu_elf_load_ovl_mgr): Adjust for struct _spu_elf_section_data
509         changes.
510         (spu_before_allocation): Adjust spu_elf_size_stubs call.
511         (gld${EMULATION_NAME}_finish): Adjust spu_elf_build_stubs call.
512
513 2008-01-25  H.J. Lu  <hongjiu.lu@intel.com>
514
515         PR ld/5670
516         * ldlang.c (process_insert_statements): Silence gcc 4.1 alias
517         warning.
518
519 2008-01-25  Alan Modra  <amodra@bigpond.net.au>
520
521         * ld.texinfo (INSERT): Describe.
522         * ldgram.y (ldgram_in_script, ldgram_had_equals): Delete.
523         (INSERT_K, AFTER, BEFORE): Add as tokens.
524         (ifile_p1): Handle INSERT statements.
525         (saved_script_handle, force_make_executable): Move to..
526         * ldmain.c: ..here.
527         (previous_script_handle): New global var.
528         * ldmain.h (saved_script_handle, force_make_executable): Declare.
529         (previous_script_handle): Likewise.
530         * ldlex.l (INSERT_K, AFTER, BEFORE): Add tokens.
531         * lexsup.c (parge_args <-T>): Set previous_script_handle.
532         * ldlang.c (lang_for_each_statement_worker): Handle insert statement.
533         (map_input_to_output_sections, print_statement): Likewise.
534         (lang_size_sections_1, lang_do_assignments_1): Likewise.
535         (insert_os_after): New function, extracted from..
536         (lang_insert_orphan): ..here.
537         (process_insert_statements): New function.
538         (lang_process): Call it.
539         (lang_add_insert): New function.
540         * ldlang.h (lang_insert_statement_enum): New.
541         (lang_insert_statement_type): New.
542         (lang_statement_union_type): Add insert_statement.
543         (lang_add_insert): Declare.
544
545 2008-01-18  Bob Wilson  <bob.wilson@acm.org>
546
547         * scripttempl/elfxtensa.sc: Merge ENTRY and .note.gnu.build-id
548         changes from elf.sc.
549
550 2008-01-16  Alan Modra  <amodra@bigpond.net.au>
551
552         * ldlang.c (lang_size_sections_1): Simplify SEC_NEVER_LOAD test.
553
554 2008-01-16  Alan Modra  <amodra@bigpond.net.au>
555
556         * ldlang.h (lang_afile_asection_pair_statement_enum): Delete.
557         (lang_afile_asection_pair_statement_type): Delete.
558         (lang_statement_union_type): Delete afile_asection_pair_statement.
559         * ldlang.c (lang_insert_orphan): Delete case handling the above.
560         (map_input_to_output_sections, print_statement): Likewise.
561
562 2008-01-15  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
563
564         * emulparams/shlelf_linux.sh (DATA_START_SYMBOLS): Use PROVIDE
565         with __data_start.
566         * emulparams/shelf_nbsd.sh (DATA_START_SYMBOLS): Likewise.
567
568 2008-01-15  Alan Modra  <amodra@bigpond.net.au>
569
570         PR 5604
571         * ldlang.c (lang_gc_sections): Move code to set SEC_KEEP on entry
572         syms to _bfd_elf_gc_keep.
573         * emultempl/ppc64elf.em (ppc_before_allocation): Don't call
574         ppc64_elf_edit_opd if no_opd_opt.
575
576 2008-01-11  Tristan Gingold  <gingold@adacore.com>
577             Eric Botcazou  <ebotcazou@adacore.com>
578
579         * ldlang.c (lang_end): Warns if the entry point is not found when
580         --gc-sections.
581         Emit an error if no root is specified when --gc-sections -r.
582         * ld.texinfo (Options): Document that --gc-sections is compatible
583         with -r and -q.
584         * ldmain.c (main): Do not error out if -r and --gc-sections.
585         * scripttempl/elf.sc: Emit ENTRY command only if relocating.
586
587 2008-01-10  Daniel Jacobowitz  <drow@sources.redhat.com>
588
589         PR ld/5533
590         * ldlang.c (lang_end): Issue a warning for a missing start symbol
591         of a shared library if the symbol was specified on the command
592         line.
593
594 2008-01-10  Alan Modra  <amodra@bigpond.net.au>
595
596         * ld.texinfo (--gc-sections): Describe linker behaviour.
597
598 For older changes see ChangeLog-2007
599 \f
600 Local Variables:
601 mode: change-log
602 left-margin: 8
603 fill-column: 74
604 version-control: never
605 End: