* ldlang.c (process_insert_statements): ASSERT that output section
[platform/upstream/binutils.git] / ld / ChangeLog
1 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
2
3         * ldlang.c (process_insert_statements): ASSERT that output section
4         statements are in order.
5
6 2009-02-16  Alan Modra  <amodra@bigpond.net.au>
7
8         * ldlang.c (push_stat_ptr, pop_stat_ptr): New functions.
9         (stat_save, stat_save_ptr): New variables.
10         (lang_insert_orphan): Use push_stat_ptr and pop_stat_ptr.
11         (load_symbols): Likewise.  Delete dead "bad_load" code.
12         (open_input_bfds): Warn on script containing output sections.
13         (lang_enter_output_section_statement): Use push_stat_ptr.
14         (lang_enter_group): Likewise.
15         (lang_leave_output_section_statement): Use pop_stat_ptr.
16         (lang_leave_group): Likewise.
17         * ldlang.h (push_stat_ptr, pop_stat_ptr): Declare.
18         * ldctor.c (ldctor_build_sets): Use push_stat_ptr and pop_stat_ptr.
19         * emultempl/beos.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
20         * emultempl/pe.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
21         * emultempl/pep.em (gld_${EMULATION_NAME}_set_symbols): Likewise.
22         * emultempl/spuelf.em (spu_place_special_section): Likewise.
23         * emultempl/xtensaelf.em (ld_xtensa_insert_page_offsets): Likewise.
24
25 2009-02-09  Nathan Sidwell  <nathan@codesourcery.com>
26
27         Missing piece of 2009-01-26 commit
28         * ldlang.c (lang_process): Don't consider relocatable flag when
29         checking for overlap.
30
31 2009-02-05  Joseph Myers  <joseph@codesourcery.com>
32
33         * emulparams/m68kelf.sh: Add newline at end of file.
34
35 2009-02-04  Nick Clifton  <nickc@redhat.com>
36
37         PR 9805
38         * ld.texinfo (--allow-shlib-undefined): Correct description of
39         default settings and tidy up the rest of the entry.
40
41 2009-02-04  Alan Modra  <amodra@bigpond.net.au>
42
43         * emultempl/spuelf.em (spu_after_open): Don't combine .text.ia.*
44         during relocatable link.
45
46 2009-02-03  Nick Clifton  <nickc@redhat.com>
47
48         PR 9797
49         * ld.texinfo (Constants): Document the base-encoding suffixes
50         supported in linker scripts.
51
52 2009-02-03  Alan Modra  <amodra@bigpond.net.au>
53
54         * NEWS: Mention --as-needed change.
55
56 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
57
58         * configure.in: AC_SUBST pdfdir.
59         * Makefile.am: Add install-pdf, install-pdf-am,
60         and install-pdf-recursive targets. Define pdf__strip_dir.
61         * po/Make-in: Add install-pdf target.
62         * configure: Regenerate.
63         * Makefile.in: Regenerate.
64
65 2009-01-31  Alan Modra  <amodra@bigpond.net.au>
66
67         * ld.texinfo (--as-needed): Update.
68
69 2009-01-29  Andrew Jenner  <andrew@codesourcery.com>
70
71         * emultempl/armelf.em: Correct formatting of help text for
72         --no-enum-size-warning option.
73
74 2009-01-26  Nathan Sidwell  <nathan@codesourcery.com>
75
76         * lexsup.c (parse_args): Set check_section_addresses to 1 or 0.
77         * ld.h (args_type): Make check_section_addresses a char.
78         * ldmain.c (main): Default check_section_addresses to -1. Check it
79         for relocatable links.
80         * ld.texinfo (--check-sections): Update documentation.
81
82 2009-01-26  Kai Tietz  <kai.tietz@onevision.com>
83
84         * pe-dll.c (tmp_seq2): New static variable.
85         (make_singleton_name_imp): New.
86         (make_import_fixup_entry): Use for v2 the _imp_<name> symbol and
87         avoid duplicate import table generation for same symbol.
88         (pe_create_runtime_relocator_reference): Make reference for
89         64-bit 8 bytes.
90
91 2009-01-21  Alan Modra  <amodra@bigpond.net.au>
92
93         * emultempl/spuelf.em (params): Init new field.
94         (OPTION_SPU_NON_IA_TEXT): Define.
95         (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --non-ia-text.
96         (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_SPU_NON_IA_TEXT.
97
98 2009-01-16  H.J. Lu  <hongjiu.lu@intel.com>
99
100         * lexsup.c (option_values): Add OPTION_TTEXT_SEGMENT.
101         (ld_options): Add -Ttext-segment.
102         (parse_args): Handle OPTION_TTEXT_SEGMENT.
103
104         * ld.texinfo: Document -Ttext-segment.
105
106         * NEWS: Mention -Ttext-segment.
107
108         * scripttempl/elf.sc (TEXT_START_ADDR): Use SEGMENT_START.
109         (SHLIB_TEXT_START_ADDR): Likewise.
110
111 2009-01-13  Alan Modra  <amodra@bigpond.net.au>
112
113         * emultempl/spu_icache.o_c: Regenerate.
114
115 2009-01-12  Alan Modra  <amodra@bigpond.net.au>
116
117         * emultempl/spuelf.em (params): Init new fields.
118         (num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
119         (spu_place_special_section): Adjust placement for soft-icache.  Pad
120         soft-icache section to a fixed size.  Clear addr_tree.
121         (spu_elf_load_ovl_mgr): Support soft-icache.  Map overlay manager
122         sections a little more intelligently.
123         (gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
124         (OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
125         (OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
126         (OPTION_SPU_LRLIVE): Define.
127         (PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
128         (PARSE_AND_LIST_OPTIONS): Likewise.
129         (PARSE_AND_LIST_ARGS_CASES): Handle them.
130         * emultempl/spu_icache.S: Dummy file.
131         * emultempl/spu_icache.o_c: Regenerate.
132         * Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
133         (spu_icache.o_c): Add rule to build.
134         (CLEANFILES): Zap temp files.
135         (EXTRA_DIST): Add spu_icache.o_c.
136         * Makefile.in: Regenerate.
137
138 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
139
140         * pe.em (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
141         (gld..._add_options): Add new option
142         --use-nul-prefixed-import-tables.
143         (gld..._handle_option): Likewise.
144         * pep.em: Same as for pe.em.
145         * ld.texinfo: Add new option documentation for
146         --use-nul-prefixed-import-tables.
147         * pe-dll.c (pe_use_nul_prefixed_import_tables): New.
148         (make_head): Make prefix leading zero prefix element for
149         idata$4 and idata$5 dependent to new flag.
150         (make_import_fixup_entry): Remove idata4/5 prefix.
151         * pe-dll.h (pe_use_nul_prefixed_import_tables): New.
152         * pep-dll.c (pe_use_nul_prefixed_import_tables): New.
153         * pep-dll.h (pep_use_nul_prefixed_import_tables): New.
154         * NEWS: Add new option.
155
156 2009-01-05  Kai Tietz  <kai.tietz@onevision.com>
157
158         * emultempl/pe.em: Prefix dollar characters to be outputed in
159         generated C file.
160         * emultempl/pep.em: Likewise.
161
162 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
163
164         * NEWS:  Mention new feature --exclude-modules-for-implib.
165         * ld.texinfo:  Document new --exclude-modules-for-implib option.
166         * pe-dll.c (exclude_list_struct):  Change type member from int to
167         new enumeration exclude_type.
168         (pe_dll_add_excludes):  Accept exclude_type instead of int param.
169         (auto_export):  Replace magic constants by exclude_type values and
170         handle new choice EXCLUDEFORIMPLIB.
171         (pe_dll_generate_implib):  Accept a pointer to the link_info and
172         iterate all input BFDs looking for EXCLUDEFORIMPLIB modules; re-open
173         fresh BFDs for any found and link into import lib archive chain.
174         * pe-dll.h (exclude_type):  Add new enumerated type to replace magic
175         constants previously used for exclude_list_struct type member.
176         (pe_dll_add_excludes, pe_dll_generate_implib):  Update prototypes.
177         * pep-dll.h (exclude_type, pe_dll_add_excludes,
178         pe_dll_generate_implib):  Likewise to all the above.
179         * emultempl/pe.em (OPTION_EXCLUDE_MODULES_FOR_IMPLIB):  Define new
180         getopts long option code for new --exclude-modules-for-implib option.
181         (gld${EMULATION_NAME}_add_options):  Add new entry to xtra_long[].
182         (gld_${EMULATION_NAME}_list_options):  List usage for it.
183         (gld${EMULATION_NAME}_handle_option):  Use exclude_type enumerated
184         values when calling pe_dll_add_excludes, and handle EXCLUDEFORIMPLIB.
185         (gld_${EMULATION_NAME}_finish):  Pass pointer to link_info when
186         calling pe_dll_generate_implib.
187         * emultempl/pep.em (options):  Define new enumerated value for getopts
188         long option code for new --exclude-modules-for-implib option.
189         (gld${EMULATION_NAME}_add_options, gld_${EMULATION_NAME}_list_options,
190         gld${EMULATION_NAME}_handle_option, gld_${EMULATION_NAME}_finish):
191         Again, likewise to all the above.
192
193 2009-01-03  Dave Korn  <dave.korn.cygwin@gmail.com>
194
195         * pe-dll.c (autofilter_liblist):  Add entry for shared libgcc.
196         (libnamencmp):  New function.
197         (auto_export):  Use it in place of strncmp when filtering libraries.
198
199 For older changes see ChangeLog-2008
200 \f
201 Local Variables:
202 mode: change-log
203 left-margin: 8
204 fill-column: 74
205 version-control: never
206 End: