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