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