1d810a7c04c50dcb70831171bddcf8f420bd335b
[deliverable/binutils-gdb.git] / ld / ChangeLog
1 2012-03-14 Kai Tietz <ktietz@redhat.com>
2 Pascal Obry <pascal@obry.net>
3
4 * pe-dll.c (found_sym): New static variable.
5 (undef_count): Likewise.
6 (key_value): New structure.
7 (undef_sort_cmp): Compare routine for qsort/bsearch.
8 (pe_find_cdecl_alias_match): Add new argument.
9 (pe_undef_alias_cdecl_match): Removed.
10 (pe_undef_count): New helper routine.
11 (pe_create_undef_table): Likewise.
12 (pe_process_import_defs): Use pe_create_undef_table and
13 new pe_undef_alias_cdecl_match function.
14
15 2012-03-14 Alan Modra <amodra@gmail.com>
16
17 PR ld/13839
18 * ldexp.c (fold_name): Ignore undefined symbols when assigning to
19 dot in mark phase.
20 (exp_fold_tree_1): Evaluate assignment to dot expressions even when
21 discarding result, for side effects. Fix typo in error message.
22
23 2012-03-08 Tristan Gingold <gingold@adacore.com>
24
25 * ldexp.c (exp_print_tree): Special case for SEGMENT_START.
26 (exp_print_token): Constify.
27
28 2012-03-08 Alan Modra <amodra@gmail.com>
29
30 PR ld/10340
31 * ldfile.c (is_sysrooted_pathname): Remove notsame param.
32 (ldfile_add_library_path): Don't set sysrooted flag.
33 (ldfile_open_file_search): Likewise, and don't copy them.
34 (try_open): Delete exten and code handling such. Add sysrooted
35 param and return whether path is in sysroot.
36 (ldfile_find_command_file): Delete extend param. Add sysrooted
37 param. Rename local var. Update try_open calls.
38 (ldfile_open_command_file_1): Pass sysrooted to lex_push_file.
39 * ldfile.h (search_dirs_type): Remove sysrooted field.
40 * ldlang.c (new_afile): Always set sysrooted from input_flags.
41 (load_symbols): Don't set input_flags.sysrooted.
42 * ldlang.h (struct lang_input_statement_flags): Revise sysrooted
43 comment.
44 * ldlex.h (lex_push_file): Update prototype.
45 * ldlex.l (sysrooted_stack): New array.
46 (EOF): Pop input_flags.sysrooted.
47 (lex_push_file): Add sysrooted param. Save and set
48 input_flags.sysrooted.
49
50 2012-03-06 Alan Modra <amodra@gmail.com>
51
52 * ldlang.h (struct lang_input_statement_flags): New, extract from..
53 (lang_input_statement_type): ..here. New field "flags".
54 (input_flags): Declare.
55 (missing_file): Delete.
56 * ldmain.h (whole_archive): Delete.
57 (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
58 * ld.h (ld_config_type <dynamic_link>): Delete.
59 * ldmain.c (whole_archive): Delete.
60 (add_DT_NEEDED_for_regular, add_DT_NEEDED_for_dynamic): Delete.
61 * ldlang.c (missing_file, ldlang_sysrooted_script): Delete.
62 (input_flags): New variable. Replace all uses of config.dynamic_link,
63 missing_file, ldlang_sysrooted_script, whole_archive,
64 add_DT_NEEDED_for_regular and add_DT_NEEDED_for_dynamic with fields
65 from here.
66 * ldfile.c: Likewise.
67 * ldgram.y: Likewise.
68 * ldmain.c: Likewise.
69 * ldwrite.c: Likewise.
70 * lexsup.c: Likewise.
71 * plugin.c: Likewise.
72 * emultempl/aix.em: Likewise.
73 * emultempl/armelf.em: Likewise.
74 * emultempl/elf32.em: Likewise.
75 * emultempl/hppaelf.em: Likewise.
76 * emultempl/linux.em: Likewise.
77 * emultempl/pe.em: Likewise.
78 * emultempl/pep.em: Likewise.
79 * emultempl/ppc64elf.em: Likewise.
80 * emultempl/scoreelf.em: Likewise.
81 * emultempl/spuelf.em: Likewise.
82 * emultempl/sunos.em: Likewise.
83 * emultempl/vms.em: Likewise.
84 * ldlang.c (new_afile): Use memset to init zero fields.
85 (load_symbols): Simplify save and restore of flags around command
86 file processing.
87 * ldfile.c (is_sysrooted_pathname): Tidy.
88
89 2012-03-05 Hans-Peter Nilsson <hp@axis.com>
90
91 * configure.tgt (mips64*el-*-freebsd*, mips64*-*-freebsd*)
92 (mips*el-*-freebsd*, mips*-*-freebsd*): Correct triplets by
93 replacing trailing "-*" with "*".
94
95 2012-02-25 Walter Lee <walt@tilera.com>
96
97 * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx_be.c.
98 (ALL_64_EMULATION_SOURCES): Add eelf64tilegx_be.c.
99 (eelf32tilegx_be.c): Add rule to build this file.
100 (eelf64tilegx_be.c): Ditto.
101 * Makefile.in: Regenerate.
102 * configure.tgt (tilegx-*-*): Support big endian.
103 (tilegxbe-*-*): New.
104 * emulparams/elf32tilegx.sh (OUTPUT_FORMAT): Rename.
105 (BIG_OUTPUT_FORMAT): Define.
106 (LITTLE_OUTPUT_FORMAT): Define.
107 * emulparams/elf32tilegx_be.sh: New.
108 * emulparams/elf64tilegx.sh (OUTPUT_FORMAT): Rename.
109 (BIG_OUTPUT_FORMAT): Define.
110 (LITTLE_OUTPUT_FORMAT): Define.
111 * emulparams/elf64tilegx_be.sh: New.
112
113 2012-02-24 Kai Tietz <ktietz@redhat.com>
114
115 PR binutils/13710
116 * deffilep.y (keyword_as_name): Disable LIBRARY
117 keyword.
118
119 2012-02-22 Alan Modra <amodra@gmail.com>
120
121 PR ld/13683
122 * ldlang.c (lang_process): Rerun lang_do_assignments before
123 starting garbage collection.
124 * ldexp.c (fold_name): Generate a reloc for defined symbols
125 found without an associated output section during the mark phase.
126 (exp_fold_tree_1): Continue processing an expression, even if we
127 are unable to fold it, if we are in the first two evaluation
128 phases.
129 * ldexp.h (enum lang_phase_type): Add descriptions of the phases.
130
131 2012-02-19 Kai Tietz <ktietz@redhat.com>
132
133 * deffilep.y (cmp_import_elem): Sort first by module name.
134 * pe-dll.c (process_def_file_and_drectve): Free strings
135 from removed export-element.
136 (add_bfd_to_link): Optimize loop on import-elements and lower
137 allocated memory.
138 (pe_implied_import_dll): Pass NULL instead of 0 for pointer
139 argument.
140
141 2012-02-18 Hans-Peter Nilsson <hp@axis.com>
142
143 * ldmisc.c (vfinfo <%S>): Use same type and avoid cast for
144 temporary variable node used for NULL argument.
145
146 2012-02-18 Alan Modra <amodra@gmail.com>
147
148 PR ld/13343
149 * ld.h (parsing_defsym): Delete.
150 * ldexp.c (exp_intop, exp_bigintop, exp_relop): Set type.filename.
151 (fold_binary, fold_name, exp_fold_tree_1, exp_get_vma, exp_get_fill,
152 exp_get_abs_int): Add tree arg for %S in error messages. Don't
153 fudge lineno.
154 (exp_binop, exp_unop, exp_nameop, exp_assop, exp_assert): Copy
155 type.filename from sub-tree.
156 (exp_trinop): Likewise, and use "cond" rather than "lhs".
157 * ldexp.h (node_type): Add filename field to struct.
158 * ldfile.c (ldfile_input_filename): Delete. Remove all refs.
159 * ldfile.h (ldfile_input_filename): Delete.
160 * ldgram.y (phdr_type, phdr_qualifiers, yyerror): Add NULL arg for
161 %S in error messages.
162 * ldemul.c (syslib_default, hll_default): Likewise.
163 * ldlang.c (lang_memory_region_lookup, lang_memory_region_alias,
164 lang_get_regions, lang_new_phdr): Likewise.
165 (lang_size_sections_1): Pass addr_tree for %S.
166 * ldlex.h (lex_redirect): Update prototype.
167 (ldlex_filename): Declare.
168 * ldlex.l (<EOF>): Don't set ldfile_input_filename.
169 (lex_redirect): Add fake_filename and count params. Push
170 fake_filename to file_name_stack and init lineno from count.
171 (ldlex_filename): New function.
172 (lex_warn_invalid): Use above.
173 * ldmain.c (main): Update lex_redirect call.
174 * ldmisc.c (vfinfo <%S>): Take file name and line number from
175 etree_type arg, or use current if arg is NULL.
176 * lexsup.c (parsing_defsym): Delete.
177 (parse_args <OPTION_DEFSYM>): Update lex_redirect call.
178
179 2012-02-13 Kai Tietz <ktietz@redhat.com>
180
181 * deffilep.y (find_export_in_list): Set is_indent for
182 first or last element, if identical.
183 (find_import_in_list): Likewise.
184
185 2012-02-11 Kai Tietz <ktietz@redhat.com>
186
187 * deffilep.y (%union): New type id_const.
188 (opt_name2): New rule.
189 (keyword_as_name): New rule.
190 (dot_name): Replaced by opt_name2 rule.
191 (opt_name): Adjust rule.
192 (opt_equal_name): Likewise.
193
194 2012-02-11 Pascal Obry <pascal@obry.net>
195
196 * pe-dll.c (auto_export): Use bsearch to speed up scan of exports
197 table.
198 (process_def_file_and_drectve): Maintain sorting of exports table
199 after stripping leading @ signs.
200
201 2012-02-09 Alan Modra <amodra@gmail.com>
202
203 * ldgram.y (input_section_spec_no_keep): Don't ignore sect_flags.
204
205 2012-01-31 H.J. Lu <hongjiu.lu@intel.com>
206
207 PR ld/13616
208 * emulparams/elf32_x86_64.sh: Remove NOP.
209 * emulparams/elf_i386.sh: Likewise.
210 * emulparams/elf_i386_be.sh: Likewise.
211 * emulparams/elf_i386_ldso.sh: Likewise.
212 * emulparams/elf_i386_vxworks.sh: Likewise.
213 * emulparams/elf_k1om.sh: Likewise.
214 * emulparams/elf_l1om.sh: Likewise.
215 * emulparams/elf_x86_64.sh: Likewise.
216
217 * ldlang.c (zero_fill): Initialized to 0.
218
219 * ldwrite.c (build_link_order): Set data size to linker odrder
220 size when they are the same.
221
222 * scripttempl/elf.sc: Don't specify fill if NOP is undefined.
223
224 2012-01-17 Alan Modra <amodra@gmail.com>
225
226 * ldver.c (ldversion): Update copyright message year.
227
228 2012-01-15 Alan Modra <amodra@gmail.com>
229
230 PR ld/12758
231 * ldlang.c (lang_process): Don't reopen all files, just those
232 newly added by plugin.
233
234 2012-01-11 Alan Modra <amodra@gmail.com>
235
236 * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE,
237 PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS,
238 PARSE_AND_LIST_ARGS_CASES): Handle --{no-,}plt-thread-safe and
239 --{no-,}plt-align.
240 (plt_thread_safe, plt_stub_align): New vars.
241 (gld${EMULATION_NAME}_after_allocation): Pass them to
242 ppc64_elf_size_stubs. Align stub sections according to plt_stub_align.
243 * ld.texinfo: Document new command line options, and an old
244 undocumented option.
245
246 2012-01-09 Roland McGrath <mcgrathr@google.com>
247
248 * configure.in: Use AM_ZLIB.
249 * configure: Regenerated.
250
251 For older changes see ChangeLog-2011
252 \f
253 Local Variables:
254 mode: change-log
255 left-margin: 8
256 fill-column: 74
257 version-control: never
258 End:
This page took 0.035224 seconds and 4 git commands to generate.