bfd/
[binutils-gdb.git] / bfd / ChangeLog
1 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
2
3 * elfxx-mips.c (mips_got_entry): Update comments.
4 (mips_elf_multi_got_entry_eq): Rename to...
5 (mips_elf_got_entry_eq): ...this, deleting the old definition.
6 (mips_elf_create_got_info): Remove master_got_p argument.
7 Always use mips_elf_got_entry_eq.
8 (mips_elf_bfd_got, mips_elf_multi_got, mips_elf_create_got_section):
9 Update calls accordingly.
10
11 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
12
13 * elfxx-mips.c (mips_got_info): Remove bfd2got.
14 (mips_elf_bfd2got_hash): Delete.
15 (mips_elf_got_per_bfd_arg): Remove bfd2got.
16 (mips_elf_replace_bfd_got, mips_elf_count_got_entries): New functions.
17 (mips_elf_global_got_index, mips_elf_create_local_got_entry): Use
18 g->next to test for the multigot case. Use mips_elf_bfd_got rather
19 than mips_elf_got_for_ibfd.
20 (mips_elf_bfd2got_entry_hash, mips_elf_bfd2got_entry_eq)
21 (mips_elf_got_for_ibfd, mips_elf_get_got_for_bfd): Delete.
22 (mips_elf_make_got_per_bfd): Replace with...
23 (mips_elf_add_got_entry): ...this new function.
24 (mips_elf_make_got_pages_per_bfd): Replace with...
25 (mips_elf_add_got_page_entry): ...this new function.
26 (mips_elf_merge_got_with): Replace bfd2got argument with separate
27 bfd and GOT arguments. Use mips_elf_add_got_entry and
28 mips_elf_add_got_page_entry instead of mips_elf_make_got_per_bfd
29 and mips_elf_make_got_pages_per_bfd. Use mips_elf_replace_bfd_got
30 to set the BFD's GOT and free the old table.
31 (mips_elf_merge_got): Replace bfd2got argument with separate
32 bfd and GOT arguments. Apply mips_elf_resolve_final_got_entries.
33 Use mips_elf_count_got_entries to count the number of entries in
34 each GOT. Update the calls to mips_elf_merge_got_with.
35 (mips_elf_adjust_gp): Use g->next to test for the multigot case.
36 Use mips_elf_bfd_got rather than mips_elf_got_for_ibfd.
37 (mips_elf_multi_got): Don't create the bfd2got hash table.
38 Replace hash table traversal with a walk over the input bfds,
39 updating the call to mips_elf_merge_got. Use mips_elf_replace_bfd_got
40 to set the output bfd's GOT.
41 (mips_elf_lay_out_got): Rename "sub" to "ibfd". Record that all
42 bfds use the master GOT in the single-GOT case.
43 (_bfd_mips_elf_finish_dynamic_sections): Use mips_elf_bfd_got
44 rather than mips_elf_got_for_ibfd.
45
46 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
47
48 * elfxx-mips.c (mips_elf_obj_tdata): Add a got field.
49 (mips_elf_bfd_got, mips_elf_record_got_entry): New functions.
50 (mips_elf_record_global_got_symbol): Update the hash entry before
51 adding the mips_got_entry. Use mips_elf_record_got_entry to do
52 the latter.
53 (mips_elf_record_local_got_symbol): Use mips_elf_record_got_entry.
54 (mips_elf_record_got_page_entry): Record the entry in both the
55 master and bfd GOTs.
56
57 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
58
59 * elfxx-mips.c (mips_elf_recreate_got): Don't change the entry;
60 create another one if necessary.
61 (mips_elf_set_gotidx): New function.
62 (mips_elf_set_global_gotidx): Use it.
63 (mips_elf_initialize_tls_index): Likewise. Take a
64 mips_elf_traverse_got_arg as argument.
65 (mips_elf_lay_out_got): Update use of mips_elf_initialize_tls_index.
66 (mips_elf_multi_got): Likewise. Cope with error returns from
67 mips_elf_set_global_gotidx.
68
69 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
70
71 * elfxx-mips.c (mips_got_info): Add relocs field.
72 (mips_elf_set_global_got_offset_arg, mips_elf_count_tls_arg): Replace
73 with...
74 (mips_elf_traverse_got_arg): ...this new structure.
75 (mips_elf_count_local_tls_relocs): Delete.
76 (mips_elf_count_global_tls_relocs): Likewise.
77 (mips_elf_count_got_entry): New function.
78 (mips_elf_count_local_got_entries): Likewise.
79 (mips_elf_count_global_tls_entries): Take a mips_elf_traverse_got_arg
80 rather than a mips_elf_count_tls_arg. Count both relocs and entries.
81 (mips_elf_record_local_got_symbol): Don't count got entries here.
82 (mips_elf_make_got_per_bfd): Use mips_elf_count_got_entry.
83 (mips_elf_set_global_got_offset): Split into...
84 (mips_elf_set_global_got_area, mips_elf_set_global_gotidx): ...these
85 new functions. Take a mips_elf_traverse_got_arg rather than a
86 mips_elf_set_global_got_offset_arg. Don't count TLS relocs here.
87 Use g->relocs to record the number of relocs needed for global GOT
88 entries.
89 (mips_elf_multi_got): Use mips_elf_traverse_got_arg rather than
90 mips_elf_set_global_got_offset_arg. Use the relocs field to count
91 relocations. Update for above function split.
92 (mips_elf_lay_out_got): Use mips_elf_count_local_got_entries
93 to count both the number of GOT entries and the number of TLS
94 relocs required by local entries. Likewise
95 mips_elf_count_global_tls_entries and global entries.
96 Remove uses of mips_elf_count_local_tls_relocs and
97 mips_elf_count_global_tls_relocs.
98
99 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
100
101 * elfxx-mips.c (mips_got_entry): Update comment above tls_type entry
102 to say that each structure represents only one type of TLS reference.
103 (GOT_TLS_TYPE): New define.
104 (mips_elf_link_hash_entry): Temporarily split tls_type and
105 tls_got_offset into two variables each.
106 (mips_elf_link_hash_newfunc): Update accordingly.
107 (mips_elf_got_entry_eq, mips_elf_got_entry_hash)
108 (mips_elf_multi_got_entry_eq): Require the tls_type to be the same.
109 (mips_elf_reloc_tls_type, mips_tls_got_entries): New functions.
110 (mips_tls_got_relocs): Use a switch statement.
111 (mips_elf_count_global_tls_entries): Handle the new hash entry fields.
112 (mips_elf_initialize_tls_slots): Use a switch statement. Avoid
113 local "offset" variable.
114 (mips_tls_got_index): Remove r_type argument and assert. Remove
115 code that handled entries with two TLS types; always use the
116 original got_index instead.
117 (mips_tls_single_got_index): New function.
118 (mips_elf_local_got_index): Use entry->tls_type to check for
119 TLS entries. Use mips_tls_single_got_index. Update call to
120 mips_tls_got_index.
121 (mips_elf_global_got_index): Use mips_elf_reloc_tls_type.
122 Use p->tls_type to check for TLS entries. Update call to
123 mips_tls_got_index. Use mips_tls_single_got_index.
124 (mips_elf_create_local_got_entry): Use mips_elf_reloc_tls_type.
125 Use entry.tls_type to check for TLS entries.
126 (mips_elf_record_global_got_symbol): Replace tls_flag argument
127 with r_type argument. Use mips_elf_reloc_tls_type.
128 Set up the new hash entry fields.
129 (mips_elf_record_local_got_symbol): Replace tls_flag argument
130 with r_type argument. Use mips_elf_reloc_tls_type and
131 mips_tls_got_entries. Remove code that handled entries
132 with multiple TLS types.
133 (mips_elf_make_got_per_bfd): Use mips_tls_got_entries.
134 (mips_elf_initialize_tls_index): Handle new hash entry fields.
135 Use equality rather than masks when checking for specific TLS types.
136 Use mips_tls_got_entries. Remove code that handled entries
137 with multiple TLS types.
138 (mips_elf_calculate_relocation): Use TLS_RELOC_P instead of
139 testing the hash table entry.
140 (_bfd_mips_elf_check_relocs): Update calls to
141 mips_elf_record_global_got_symbol and mips_elf_record_local_got_symbol.
142 (_bfd_mips_elf_finish_dynamic_symbol): Don't check h->type.
143 (_bfd_mips_elf_copy_indirect_symbol): Handle new hash entry fields.
144
145 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
146
147 * elfxx-mips.c (mips_elf_multi_got_entry_hash): Rename to...
148 (mips_elf_got_entry_hash): ...this, deleting the old version.
149 (mips_elf_create_got_info): Use mips_elf_got_entry_hash for
150 both types of GOT.
151
152 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
153
154 * elfxx-mips.c (mips_elf_create_got_info): New function.
155 (mips_elf_get_got_for_bfd, mips_elf_multi_got): Use it.
156 (mips_elf_create_got_section): Likewise.
157
158 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
159
160 * elfxx-mips.c (mips_elf_record_local_got_symbol): Always set
161 gotidx to -1.
162
163 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
164
165 * elfxx-mips.c (mips_elf_multi_got): Simplify size calculation.
166
167 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
168
169 * elfxx-mips.c (mips_got_info): Move global_gotsym to...
170 (mips_elf_link_hash_table): ...here. Update rest of file accordingly.
171
172 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
173
174 * elfxx-mips.c (mips_elf_count_global_tls_entries)
175 (mips_elf_count_global_tls_relocs): Don't count indirect or
176 warning symbols.
177 (mips_elf_multi_got, mips_elf_lay_out_got): Assert that the right
178 number of TLS entries were allocated.
179
180 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
181
182 * elfxx-mips.c (mips_elf_sort_hash_table_f): Remove asserts.
183
184 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
185
186 * elfxx-mips.c (mips_elf_merge_got_with): Only use arg->global_count
187 if there are TLS relocations.
188
189 2013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
190
191 * elfxx-mips.c (mips_elf_recreate_got): Remove free.
192 (mips_elf_resolve_final_got_entries): Remove bogus comment.
193
194 2013-02-10 Alan Modra <amodra@gmail.com>
195
196 * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_zmalloc.
197 * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
198 * m68klinux.c (linux_link_hash_table_create): Likewise.
199 * sparclinux.c (linux_link_hash_table_create): Likewise.
200 * sunos.c (sunos_link_hash_table_create): Likewise.
201 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
202 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
203 * elf32-arm.c (elf32_arm_link_hash_table_create): Likewise.
204 * elf32-avr.c (elf32_avr_link_hash_table_create): Likewise.
205 * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise.
206 * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
207 * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
208 * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
209 * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise.
210 * elf32-m32r.c (m32r_elf_link_hash_table_create): Likewise.
211 * elf32-m68hc1x.c (m68hc11_elf_hash_table_create): Likewise.
212 * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
213 * elf32-metag.c (elf_metag_link_hash_table_create): Likewise.
214 * elf32-nios2.c (nios2_elf32_link_hash_table_create): Likewise.
215 * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
216 * elf32-score.c (elf32_score_link_hash_table_create): Likewise.
217 * elf32-spu.c (spu_elf_link_hash_table_create): Likewise.
218 * elf32-tic6x.c (elf32_tic6x_link_hash_table_create): Likewise.
219 * elf32-vax.c (elf_vax_link_hash_table_create): Likewise.
220 * elf32-xgate.c (xgate_elf_bfd_link_hash_table_create): Likewise.
221 * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Likewise.
222 * elf64-aarch64.c (elf64_aarch64_link_hash_table_create): Likewise.
223 * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
224 * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
225 * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Likewise.
226 * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
227 * elflink.c (_bfd_elf_link_hash_table_create): Likewise.
228 (_bfd_elf_link_hash_table_init): Assume zero fill table on entry.
229
230 2013-02-10 Alan Modra <amodra@gmail.com>
231
232 * i386linux.c (linux_link_hash_table_create): Allocate table
233 with bfd_zmalloc, not bfd_alloc.
234 * pdp11.c (link_hash_table_create): Allocate table with
235 bfd_malloc, not bfd_alloc.
236 * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create): Allocate table
237 with bfd_zmalloc, not bfd_zalloc.
238 (bfin_link_hash_table_create): Likewise.
239 * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise.
240 * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise.
241
242 2013-02-10 Alan Modra <amodra@gmail.com>
243
244 PR ld/15113
245 * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
246
247 2013-02-08 Markos Chandras <markos.chandras@imgtec.com>
248
249 * elf32-metag.c: Use bfd_get_linker_section to get SEC_LINKER_CREATED
250 sections.
251 (elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss
252 symbol.
253
254 2013-02-08 Yufeng Zhang <yufeng.zhang@arm.com>
255
256 * elf64-aarch64.c (elf64_aarch64_grok_prstatus): Change 'size' from
257 288 to 272.
258
259 2013-02-08 Alan Modra <amodra@gmail.com>
260
261 PR binutils/15106
262 * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
263 * elf.c (elf_find_function): Revert last change. Use new
264 tdata field rather than static vars for cache.
265
266 2013-02-07 H.J. Lu <hongjiu.lu@intel.com>
267
268 PR ld/15107
269 * elflink.c (elf_link_output_extsym): Set STB_GNU_UNIQUE only if
270 symbol is defined in regular object.
271
272 2013-02-07 Roberto Agostino Vitillo <ra.vitillo@gmail.com>
273
274 PR binutils/15106
275 * elf.c (elf_find_function): Don't cache if symbols change.
276
277 2013-02-07 Alan Modra <amodra@gmail.com>
278
279 PR binutils/14873
280 * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
281 copy attributes from or to non-ELF.
282
283 2013-02-06 H.J. Lu <hongjiu.lu@intel.com>
284
285 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
286 for non-zero TLS symbol.
287 (elf_i386_relocate_section): Don't resolve size relocation against
288 non-zero TLS symbol.
289 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
290 pc_count for non-zero TLS symbol.
291 (elf_x86_64_relocate_section): Don't resolve size relocation
292 against non-zero TLS symbol.
293
294 2013-02-06 Sandra Loosemore <sandra@codesourcery.com>
295 Andrew Jenner <andrew@codesourcery.com>
296
297 Based on patches from Altera Corporation.
298
299 * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
300 (ALL_MACHINES_CFILES): Add cpu-nios2.c.
301 (BFD_BACKENDS): Add elf32-nios2.lo.
302 (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
303 * Makefile.in: Regenerated.
304 * configure.in: Add entries for bfd_elf32_bignios2_vec and
305 bfd_elf32_littlenios2_vec.
306 * configure: Regenerated.
307 * config.bfd: Add cases for nios2.
308 * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
309 (bfd_mach_nios2): Define.
310 (bfd_nios2_arch): Declare.
311 (bfd_archures_list): Add bfd_nios2_arch.
312 * targets.c (bfd_elf32_bignios2_vec): Declare.
313 (bfd_elf32_littlenios2_vec): Declare.
314 (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
315 bfd_elf32_littlenios2_vec.
316 * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
317 * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
318 * bfd-in2.h: Regenerated.
319 * libbfd.h: Regenerated.
320 * cpu-nios2.c: New file.
321 * elf32-nios2.c: New file.
322
323 2013-02-06 Alan Modra <amodra@gmail.com>
324
325 * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
326 stubs in stub_bfd.
327
328 2013-02-06 Alan Modra <amodra@gmail.com>
329
330 * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
331 * Makefile.in: Regenerate.
332
333 2013-02-04 Sergio Durigan Junior <sergiodj@redhat.com>
334 Pedro Alves <palves@redhat.com>
335
336 * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
337 * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
338 declaration.
339 (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
340 (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
341 * elf-linux-psinfo.h: New file.
342 * elf.c: Include elf-linux-psinfo.h.
343 (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
344 New functions.
345 * elf32-ppc.c: Include `elf-linux-psinfo.h'.
346 (elf_external_ppc_linux_prpsinfo32): New structure declaration.
347 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
348 (elfcore_write_ppc_linux_prpsinfo32): New function.
349
350 2013-02-04 Tristan Gingold <gingold@adacore.com>
351
352 * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
353 start address.
354
355 2013-02-04 Alan Modra <amodra@gmail.com>
356
357 * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
358 (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
359 * Makefile.in: Regenerate.
360 * po/SRC-POTFILES.in: Regenerate.
361
362 2013-02-04 Alan Modra <amodra@gmail.com>
363
364 * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
365 * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
366
367 2013-02-01 Alan Modra <amodra@gmail.com>
368
369 * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
370 clears def_regular.
371
372 2013-01-31 Tristan Gingold <gingold@adacore.com>
373
374 * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
375 earlier. Fix status checking of bfd_mach_o_scan_start_address.
376 (bfd_mach_o_scan_start_address): Handle LC_MAIN.
377
378 2013-01-31 Alan Modra <amodra@gmail.com>
379 David S. Miller <davem@davemloft.net>
380
381 PR ld/15056
382 * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
383 references to __tls_get_addr.
384 * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise. Correct
385 vtinherit and vtentry reloc handling too.
386 * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
387
388 2013-01-31 Alan Modra <amodra@gmail.com>
389
390 * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
391
392 2013-01-31 Alan Modra <amodra@gmail.com>
393
394 * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
395
396 2013-01-28 Alan Modra <amodra@gmail.com>
397
398 * elf64-ppc.c: Use %T to print symbols names and remove redundant
399 "relocation" in error messages throughout file.
400 (ppc64_elf_relocate_section): Remove sibling call error message,
401 replace with "call lacks nop". Specially report errors for
402 branches to function entry points via OPD lookup and branches
403 to stubs. Remove NULL symbol handling now done by %T.
404
405 2013-01-28 Alan Modra <amodra@gmail.com>
406
407 * archive.c (bfd_generic_archive_p): Return target and keep
408 ardata on partial matches.
409 * format.c (bfd_check_format_matches): Adjust for above
410 change. Remove bfd_error_file_ambiguously_recognized dead
411 code.
412
413 2013-01-26 Alan Modra <amodra@gmail.com>
414
415 * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
416 bfd_preserve_finish): Move to..
417 * format.c: ..here, splitting out..
418 (bfd_reinit): ..this. New function.
419 (bfd_check_format_matches): Use bfd_preserve_save/restore to
420 keep bfd state for a match.
421 * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
422 * elfcore.h (elf_core_file_p): Likewise.
423 * mach-o.c (bfd_mach_o_header_p): Likewise.
424 * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
425 * xsym.c (bfd_sym_object_p): Likewise.
426 * mmo.c (mmo_scan): Clear abfd->symcount.
427 * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
428 * section.c (bfd_section_list_clear): Clear section_htab.count.
429 * bfd-in2.h: Regenerate.
430
431 2013-01-25 Michael Schewe <michael.schewe@gmx.net>
432
433 * elf32-h8300.c (elf32_h8_relax_section): When checking for a
434 second reloc, make sure that the reloc potentially exists first.
435
436 2013-01-24 Nick Clifton <nickc@redhat.com>
437
438 * archures.c: Add bfd_mach_v850e3v5.
439 * bfd-in2.h: Regenerate.
440 * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
441 * cpu-v850_rh850.c: Likewise.
442 * elf32-v850.c: Add support for v850e3v5 architecture.
443
444 2013-01-23 Markos Chandras <markos.chandras@imgtec.com>
445
446 * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
447
448 2013-01-23 Leif Ekblad <leif@rdos.net>
449
450 * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
451
452 2013-01-18 H.J. Lu <hongjiu.lu@intel.com>
453
454 * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
455 non-zero TLS symbol.
456 (elf_i386_relocate_section): Resolve size relocation against
457 non-zero TLS symbol.
458 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
459 for non-zero TLS symbol.
460 (elf_x86_64_relocate_section): Resolve size relocation against
461 non-zero TLS symbol.
462
463 2013-01-18 Mike Frysinger <vapier@gentoo.org>
464
465 * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
466 when new_dtags is false. Only add DT_RUNPATH when new_dtags is
467 true.
468
469 2013-01-17 H.J. Lu <hongjiu.lu@intel.com>
470
471 * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
472 PC-relative relocation.
473 * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
474 as PC-relative relocation.
475
476 2013-01-16 H.J. Lu <hongjiu.lu@intel.com>
477
478 * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
479 check.
480 (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
481
482 * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
483 and R_X86_64_SIZE64 check.
484 (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
485 nor R_X86_64_SIZE64.
486
487 2013-01-16 H.J. Lu <hongjiu.lu@intel.com>
488
489 * bfd-in2.h: Regenerated.
490 * libbfd.h: Likewise.
491
492 * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
493 (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
494 (elf_i386_check_relocs): Handle R_386_SIZE32.
495 (elf_i386_gc_sweep_hook): Likewise.
496 (elf_i386_relocate_section): Likewise.
497
498 * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
499 and R_X86_64_SIZE64 entries.
500 (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
501 (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
502 (elf_x86_64_reloc_name_lookup): Likewise.
503 (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
504 R_X86_64_SIZE64.
505 (elf_x86_64_gc_sweep_hook): Likewise.
506 (elf_x86_64_relocate_section): Likewise.
507
508 * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
509 BFD_RELOC_SIZE64.
510
511 2013-01-15 H.J. Lu <hongjiu.lu@intel.com>
512
513 * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
514 with R_X86_64_RELATIVE64.
515
516 2013-01-15 Nick Clifton <nickc@redhat.com>
517
518 * elf32-msp430.c: Fix spelling typo.
519
520 2013-01-15 Alan Modra <amodra@gmail.com>
521
522 * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
523 plt-thread-safe.
524
525 2013-01-14 Alan Modra <amodra@gmail.com>
526
527 PR binutils/14813
528 * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
529 (memory_bclose): Likewise. Return 0 on success.
530 * cache.c (cache_bclose): Likewise.
531 * opncls.c (opncls_bclose, bfd_close): Likewise.
532 * vms-lib.c (vms_lib_bclose): Likewise.
533 * libbfd.h: Regenerate.
534
535 2013-01-13 Alan Modra <amodra@gmail.com>
536
537 * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
538 Add ref_dynamic_nonweak.
539 * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
540 (_bfd_elf_merge_symbol): Don't call above function. Move
541 setting of ref_dynamic_nonweak and dynamic_def earlier. Don't
542 clear dynamic_def.
543 (elf_link_add_object_symbols): Delete redundant "override" test.
544 Don't set dynamic_def here.
545 (elf_link_output_extsym): Update.
546
547 2013-01-12 H.J. Lu <hongjiu.lu@intel.com>
548
549 * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
550 normal and TLS symbol access.
551 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
552
553 2013-01-12 Alan Modra <amodra@gmail.com>
554
555 * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
556 * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
557 * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
558
559 2013-01-12 Alan Modra <amodra@gmail.com>
560
561 PR ld/12549
562 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
563 (_bfd_elf_strtab_clear_all_refs): Define.
564 * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
565 (_bfd_elf_strtab_clear_all_refs): Delete.
566 * elflink.c (elf_link_add_object_symbols): Clear out added
567 strtab refs. Correct handling of warning common symbols.
568
569 2013-01-10 H.J. Lu <hongjiu.lu@intel.com>
570
571 * aout0.c: Remove trailing white spaces.
572 * archive.c: Likewise.
573 * archures.c: Likewise.
574 * bfd-in.h: Likewise.
575 * bfd-in2.h: Likewise.
576 * coff-alpha.c: Likewise.
577 * coff-i860.c: Likewise.
578 * coff-mips.c: Likewise.
579 * coff-ppc.c: Likewise.
580 * coff-tic80.c: Likewise.
581 * coff-x86_64.c: Likewise.
582 * coff-z80.c: Likewise.
583 * coffcode.h: Likewise.
584 * coffgen.c: Likewise.
585 * cofflink.c: Likewise.
586 * compress.c: Likewise.
587 * corefile.c: Likewise.
588 * cpu-arm.c: Likewise.
589 * cpu-avr.c: Likewise.
590 * cpu-bfin.c: Likewise.
591 * cpu-cr16.c: Likewise.
592 * cpu-cr16c.c: Likewise.
593 * cpu-crx.c: Likewise.
594 * cpu-h8300.c: Likewise.
595 * cpu-i386.c: Likewise.
596 * cpu-lm32.c: Likewise.
597 * cpu-m68k.c: Likewise.
598 * cpu-moxie.c: Likewise.
599 * cpu-msp430.c: Likewise.
600 * cpu-sh.c: Likewise.
601 * cpu-xc16x.c: Likewise.
602 * dwarf2.c: Likewise.
603 * ecofflink.c: Likewise.
604 * ecoffswap.h: Likewise.
605 * elf-ifunc.c: Likewise.
606 * elf-m10300.c: Likewise.
607 * elf-vxworks.c: Likewise.
608 * elf32-avr.c: Likewise.
609 * elf32-avr.h: Likewise.
610 * elf32-cr16.c: Likewise.
611 * elf32-cr16c.c: Likewise.
612 * elf32-cris.c: Likewise.
613 * elf32-crx.c: Likewise.
614 * elf32-frv.c: Likewise.
615 * elf32-hppa.c: Likewise.
616 * elf32-i860.c: Likewise.
617 * elf32-ip2k.c: Likewise.
618 * elf32-iq2000.c: Likewise.
619 * elf32-m32c.c: Likewise.
620 * elf32-m68hc1x.c: Likewise.
621 * elf32-msp430.c: Likewise.
622 * elf32-mt.c: Likewise.
623 * elf32-ppc.c: Likewise.
624 * elf32-rl78.c: Likewise.
625 * elf32-s390.c: Likewise.
626 * elf32-score.h: Likewise.
627 * elf32-sh-symbian.c: Likewise.
628 * elf32-sh.c: Likewise.
629 * elf32-spu.c: Likewise.
630 * elf32-tic6x.c: Likewise.
631 * elf32-v850.c: Likewise.
632 * elf32-xc16x.c: Likewise.
633 * elf32-xtensa.c: Likewise.
634 * elf64-alpha.c: Likewise.
635 * elf64-hppa.c: Likewise.
636 * elf64-ppc.c: Likewise.
637 * elf64-s390.c: Likewise.
638 * elfcore.h: Likewise.
639 * elflink.c: Likewise.
640 * elfxx-mips.c: Likewise.
641 * elfxx-sparc.c: Likewise.
642 * elfxx-tilegx.c: Likewise.
643 * ieee.c: Likewise.
644 * libcoff.h: Likewise.
645 * libpei.h: Likewise.
646 * libxcoff.h: Likewise.
647 * linker.c: Likewise.
648 * mach-o-i386.c: Likewise.
649 * mach-o-target.c: Likewise.
650 * mach-o.c: Likewise.
651 * mach-o.h: Likewise.
652 * mmo.c: Likewise.
653 * opncls.c: Likewise.
654 * pdp11.c: Likewise.
655 * pe-x86_64.c: Likewise.
656 * peXXigen.c: Likewise.
657 * pef-traceback.h: Likewise.
658 * pei-x86_64.c: Likewise.
659 * peicode.h: Likewise.
660 * plugin.c: Likewise.
661 * reloc.c: Likewise.
662 * riscix.c: Likewise.
663 * section.c: Likewise.
664 * som.c: Likewise.
665 * syms.c: Likewise.
666 * tekhex.c: Likewise.
667 * ticoff.h: Likewise.
668 * vaxbsd.c: Likewise.
669 * xcofflink.c: Likewise.
670 * xtensa-isa.c: Likewise.
671
672 2013-01-10 Will Newton <will.newton@imgtec.com>
673
674 * Makefile.am: Add Meta.
675 * Makefile.in: Regenerate.
676 * archures.c (bfd_mach_metag): New.
677 * bfd-in2.h: Regenerate.
678 * config.bfd: Add Meta.
679 * configure: Regenerate.
680 * configure.in: Add Meta.
681 * cpu-metag.c: New file.
682 * elf-bfd.h: Add Meta.
683 * elf32-metag.c: New file.
684 * elf32-metag.h: New file.
685 * libbfd.h: Regenerate.
686 * reloc.c: Add Meta relocations.
687 * targets.c: Add Meta.
688
689 2013-01-08 Yufeng Zhang <yufeng.zhang@arm.com>
690
691 * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
692 (elfcore_write_aarch_hw_break): Likewise.
693 (elfcore_write_aarch_hw_watch): Likewise.
694 * elf.c (elfcore_grok_aarch_tls): New function.
695 (elfcore_grok_aarch_hw_break): Likewise.
696 (elfcore_grok_aarch_hw_watch): Likewise.
697 (elfcore_grok_note): Call the new functions to handle the
698 corresponding notes.
699 (elfcore_write_aarch_tls): New function.
700 (elfcore_write_aarch_hw_break): Likewise.
701 (elfcore_write_aarch_hw_watch): Likewise.
702 (elfcore_write_register_note): Call the new functions to handle the
703 corresponding pseudo sections.
704
705 2013-01-07 Tom Tromey <tromey@redhat.com>
706
707 * section.c (_bfd_std_section): Rename from std_section.
708 (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
709 (STD_SECTION): Update.
710 * bfd-in2.h: Rebuild.
711
712 2013-01-04 Juergen Urban <JuergenUrban@gmx.de>
713
714 * archures.c (bfd_mach_mips5900): Define.
715 * bfd-in2.h: Regenerate.
716 * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
717 * cpu-mips.c: Add support for MIPS r5900.
718 * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
719
720 2013-01-03 Nickolai Zeldovich <nickolai@csail.mit.edu>
721 Nick Clifton <nickc@redhat.com>
722
723 * elflink.c (get_value): Prevent the use of an undefined shift
724 operation. Add sanity checks.
725
726 2013-01-02 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
727
728 * config.bfd (cr16*-*-uclinux*): New target support.
729
730
731 For older changes see ChangeLog-2012
732 \f
733 Copyright (C) 2013 Free Software Foundation, Inc.
734
735 Copying and distribution of this file, with or without modification,
736 are permitted in any medium without royalty provided the copyright
737 notice and this notice are preserved.
738
739 Local Variables:
740 mode: change-log
741 left-margin: 8
742 fill-column: 74
743 version-control: never
744 End: