daily update
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
ad3d9127
AM
12013-05-22 Eric Herman <eric@freesa.org>
2
3 PR binutils/15462
4 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Warning fix.
5
5b3905f1
AM
62013-05-22 Ralf Dreesen <gamma@dreesen.net>
7
8 PR binutils/15474
9 * srec.c (srec_set_section_contents): Properly convert size
10 and offset to address when octets_per_byte is not unity.
11
8be65dd3
MR
122013-05-20 Maciej W. Rozycki <macro@linux-mips.org>
13
14 * elf32-vax.c (elf_vax_instantiate_got_entries): Only set the
15 refcount member of the gotplt_union when resetting the reference
16 count. Adjust comment.
17
593f8f29
WN
182013-05-20 Will Newton <will.newton@linaro.org>
19
20 * elf64-aarch64.c (elf64_aarch64_link_hash_entry): Remove
21 relocs_copied member.
22 (elf64_aarch64_link_hash_newfunc): Remove initialization of
23 relocs_copied member.
24 (elf64_aarch64_copy_indirect_symbol): Remove code to copy
25 relocs_copied member.
26
a0f0eb1e
MR
272013-05-19 Maciej W. Rozycki <macro@linux-mips.org>
28
29 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Convert K&R
30 function definition.
31
af65e588
CC
322013-05-16 Cary Coutant <ccoutant@google.com>
33
34 * ecoff.c (ecoff_link_check_archive_element): Add initializers for
35 external_ext_size and esize.
36
9f6e76f4
TG
372013-05-16 Tristan Gingold <gingold@adacore.com>
38
39 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_16.
40 * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
41
c495064d
AS
422013-05-15 Andreas Schwab <schwab@suse.de>
43
44 * elf64-aarch64.c (elf_backend_default_execstack): Define to 0.
45
110a61d3
JB
462013-05-10 Joel Brobecker <brobecker@adacore.com>
47
48 * coffcode.h (styp_to_sec_flags) [RS6000COFF_C]: Add handling
49 of STYP_EXCEPT, STYP_LOADER and STYP_TYPCHK sections.
50
ceae87f3
JB
512013-05-09 Joel Brobecker <brobecker@adacore.com>
52
53 * bfd.c (_bfd_default_error_handler): Replace use of putc
54 by fputc. Add comment explaining why.
55
012b2306
AM
562013-05-09 Alan Modra <amodra@gmail.com>
57
58 * elflink.c (elf_link_add_object_symbols): Don't omit reading
59 of symbols when hashes already exist.
60
7b70956d
WN
612013-05-07 Will Newton <will.newton@linaro.org>
62
63 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Add a
64 plt_header_size argument for ports where it differs from
65 plt_entry_size.
66 * elf-bfd.h: Likewise.
67 * elf32-i386.c: Pass plt_header_size to
68 _bfd_elf_allocate_ifunc_dyn_relocs.
69 * elf64-x86-64.c: Likewise.
70
1ee9e8b3
WN
712013-05-07 Will Newton <will.newton@linaro.org>
72
012b2306 73 * elf-ifunc.c (_bfd_elf_create_ifunc_dyn_reloc): Remove unused
1ee9e8b3
WN
74 function.
75 * elf-bfd.h: Likewise.
76
b47468a6
CM
772013-05-06 Paul Brook <paul@codesourcery.com>
78
012b2306
AM
79 * elf64-mips.c (elf_mips_gnu_pcrel32): New.
80 (bfd_elf64_bfd_reloc_type_lookup, bfd_elf64_bfd_reloc_name_lookup,
81 mips_elf64_rtype_to_howto): Handle R_MIPS_PC32.
82 * elfn32-mips.c (elf_mips_gnu_pcrel32): New.
83 (bfd_elfn32_bfd_reloc_type_lookup, bfd_elfn32_bfd_reloc_name_lookup,
84 mips_elfn32_rtype_to_howto): Handle R_MIPS_PC32.
b47468a6 85
128205bb
AM
862013-05-06 Alan Modra <amodra@gmail.com>
87
88 * elf64-ppc.c (opd_entry_value): Handle case where symbol
89 hashes are not available.
90
f45794cb
AM
912013-05-06 Alan Modra <amodra@gmail.com>
92
93 * elflink.c (elf_link_add_object_symbols): Don't save symbol
94 hashes around loading as-needed library. Zero them on allocation,
95 and restore to initial all-zero state if library not needed.
96 Arrange to reuse hashes if we load library again later.
97
d150b1a2
RS
982013-05-04 Richard Sandiford <rdsandiford@googlemail.com>
99
100 * elf32-mips.c (elf_mips_copy_howto, elf_mips_jump_slot_howto):
101 Use _bfd_mips_elf_generic_reloc instead of bfd_elf_generic_reloc.
102 * elfn32-mips.c: Likewise.
103 * elf64-mips.c: Likewise.
104
13761a11
NC
1052013-05-02 Nick Clifton <nickc@redhat.com>
106
107 * archures.c: Add some more MSP430 machine numbers.
108 * config.bfd (msp430): Define targ_selvecs.
109 * configure.in: Add bfd_elf32_msp430_ti_vec.
110 * cpu-msp430.c: Add some more MSP430 machine numbers.
111 * elf32-msp430.c Add support for MSP430X relocations.
112 Add support for TI compiler generated relocations.
113 Add support for sym_diff relocations.
114 Add support for relaxing out of range short branches into long
115 branches.
116 Add support for MSP430 attribute section.
117 * reloc.c: Add MSP430X relocations.
118 * targets.c: Add bfd_elf32_msp430_ti_vec.
119 * bfd-in2.h: Regenerate.
120 * configure: Regenerate.
121 * libbfd.h: Regenerate.
122
df26367c
MR
1232013-05-01 Maciej W. Rozycki <macro@codesourcery.com>
124
125 * config.bfd: Replace alpha*-*-linuxecoff* pattern with
126 alpha*-*-linux*ecoff*.
127
ed54588d
NC
1282013-04-30 Olaf Flebbe <o.flebbe@science-computing.de>
129
130 PR binutils/15417
131 * elflink.c (elf_link_add_object_symbols): Initialise 'idx' to
132 zero.
133
b8297068
AM
1342013-04-30 Alan Modra <amodra@gmail.com>
135
136 * elflink.c (bfd_elf_record_link_assignment): Dont make
137 STV_INTERNAL symbols STV_HIDDEN.
138
b40bf0a2
NC
1392013-04-29 Nick Clifton <nickc@redhat.com>
140
141 * elflink.c (_bfd_elf_gc_mark_extra_sections): Remove mark from
142 fragmented .debug_line sections associated with unmarked code
143 sections.
144
aba8c3de
WN
1452013-04-29 Will Newton <will.newton@linaro.org>
146
147 * elf32-arm.c (elf32_arm_populate_plt_entry): Call
148 elf32_arm_add_dynreloc when emitting R_ARM_IRELATIVE relocs.
149
7fcfd62d
NC
1502013-04-29 Will Newton <will.newton@linaro.org>
151
152 * elf64-aarch64.c (elf64_aarch64_check_relocs): Move relocation
153 error check up and add error message.
154
ed5acf27
WN
1552013-04-26 Will Newton <will.newton@linaro.org>
156
157 * elf64-aarch64.c (elf64_aarch64_check_relocs): Remove dead code.
158
49926cd0
AM
1592013-04-25 Alan Modra <amodra@gmail.com>
160
161 * config.bfd: Add powerpc64le-linux.
162
05567e3d
L
1632013-04-24 H.J. Lu <hongjiu.lu@intel.com>
164
165 * config.bfd (targ_selvecs): Add bfd_elf32_x86_64_vec for
166 x86_64-*-elf*.
167
99059e56
RM
1682013-04-24 Roland McGrath <mcgrathr@google.com>
169
170 * elf32-arm.c (elf32_arm_allocate_plt_entry): If HTAB->nacl_p,
171 allocate space for PLT header even if IS_IPLT_ENTRY.
172 (arm_nacl_put_plt0): New function, broken out of ...
173 (elf32_arm_finish_dynamic_sections): ... here. Call it.
174 If HTAB->nacl_p, set up the PLT header in .iplt too.
175 (elf32_arm_output_arch_local_syms): If HTAB->nacl_p, write
176 a mapping symbol for the start of .iplt too.
177
544008aa
NC
1782013-04-19 Luca Pizzamiglio <luca.pizzamiglio@gmail.com>
179
7b5d8d96
NC
180 * ecoff.c (_bfd_ecoff_sizeof_headers): Cast the return value of
181 BFD_ALIGN to int.
182 * elf32-tic6x.c (elf32_tic6x_size_dynamic_sections): Remove unused
183 variables.
184 * elf32-v850.c (v850_elf_relax_section): Redefine the type of 'i'
185 to bfd_vma.
186 * vms-alpha.c (evax_bfd_print_etir): Initialize sec_len.
544008aa 187
86f7d49b
AM
1882013-04-22 Alan Modra <amodra@gmail.com>
189
190 PR ld/15382
191 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Don't multiply
192 sh_size or reloc_count adjustment by count.
193
bfeb4a28
AM
1942013-04-22 Alan Modra <amodra@gmail.com>
195
196 * elf64-ppc.c (ppc64_elf_check_relocs): Don't call
197 create_linkage_sections here..
198 (ppc64_elf_init_stub_bfd): ..do so here. Return status.
199 (create_linkage_sections): Move earlier in file.
200 (ppc64_elf_setup_section_lists): Remove now useless htab->brlt test.
201 * elf64-ppc.h (ppc64_elf_init_stub_bfd): Update proto.
202
2d0a6933
NC
2032013-04-19 Nick Clifton <nickc@redhat.com>
204
205 PR binutils/15356
206 * compress.c (decompress_contents): Always call inflateEnd, even
207 when another inflation operation fails.
208
a9ea330b
L
2092013-04-17 H.J. Lu <hongjiu.lu@intel.com>
210
211 * elf-ifunc.c: Update copyright year.
212
a253d456
NC
2132013-04-17 Luca Pizzamiglio <luca.pizzamiglio@gmail.com>
214
215 * coffcode.h: Added a cast to void when a bfd_set_section_*()
216 macro's return value is ignored.
217 * elf32-hppa.c: Likewise.
218 * elf32-tic6x.c: Likewise.
219 * mach-o.c: Likewise.
220 * mmo.c: Likewise.
221 * opncls.c: Likewise.
222 * peicode.h: Likewise.
223 * elf32-m32r.c: Check return value of bfd_set_section_*().
224 * elfnn-ia64.c: Likewise.
225 * elfxx-mips.c: Likewise.
226 * vms-alpha.c: Likewise.
227
1622ff3b
L
2282013-04-15 H.J. Lu <hongjiu.lu@intel.com>
229
230 PR ld/15371
231 * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Check
232 regular reference without non-GOT reference when building
233 shared library.
234
a22cd6f6
AM
2352013-04-15 Alan Modra <amodra@gmail.com>
236
237 * archive.c (_bfd_archive_close_and_cleanup): Clear parent
238 cache slot for archives.
239
ed905580
HPN
2402013-04-14 Hans-Peter Nilsson <hp@bitrange.com>
241
242 * mmo.c (mmo_write_chunk): Break out abfd->tdata.mmo_data to new
243 local variable mmop.
244
8d6a12ee
NC
2452013-04-09 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
246
247 PR ld/12494
248 * bfd/elf32-avr.c: Consider all sections to determine if linker
249 relaxation can safely delete a ret after a call/jmp
250
79bb5c23
NC
2512013-04-09 Mingjie Xing <mingjie.xing@gmail.com>
252
253 * bfd.c (typedef bfd, Error reporting, Miscellaneous): Add
254 INODEs.
255
36192a8d
TT
2562013-04-08 Tom Tromey <tromey@redhat.com>
257
258 * som.c (bfd_section_from_som_symbol): No longer static.
259 * som.h (bfd_section_from_som_symbol): Declare.
260
198f1157
AM
2612013-04-06 Alan Modra <amodra@gmail.com>
262
263 * elf32-ppc.c (ppc_elf_check_relocs): Use SYMBOLIC_BIND.
264 * elf64-ppc.c (ppc64_elf_check_relocs, dec_dynrel_count): Likewise.
265
c69ba956
NC
2662013-04-05 Nick Clifton <nickc@redhat.com>
267
268 * elflink.c (elf_link_add_object_symbols): Revert accidental commit.
269
ff5ac77b
AM
2702013-04-04 Alan Modra <amodra@gmail.com>
271
272 * bfd.c (bfd_error_type, bfd_errmsgs): Add bfd_error_missing_dso.
273 * bfd-in2.h: Regenerate.
274 * elflink.c (elf_link_add_object_symbols): Use new error.
275
41702d50
NC
2762013-04-03 Nick Clifton <nickc@redhat.com>
277
278 * elf32-v850.c (v850_elf_is_target_special_symbol): New function.
279 (bfd_elf32_bfd_is_target_special_symbol): Define.
280
cb8af559
NC
2812013-04-03 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
282
a22cd6f6
AM
283 * elf64-aarch64.c (elf64_aarch64_gc_sweep_hook): Use
284 elf64_aarch64_locals to get local GOT reference counts.
cb8af559 285
1122dc88
DD
2862013-04-02 DJ Delorie <dj@redhat.com>
287
288 * elf32-rl78.c (GET_RELOC): Assert that there are relocs to get.
289 (rl78_elf_relax_section): Only fetch the next reloc if there is
290 one expected.
291
81fbe831
AM
2922013-03-30 Alan Modra <amodra@gmail.com>
293
294 PR ld/15323
295 * elf-m10300.c (mn10300_elf_check_relocs): Set non_ir_ref for
296 global symbols referenced by relocs.
297 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
298 * elf32-bfin.c (bfin_check_relocs): Likewise.
299 * elf32-cr16.c (cr16_elf_check_relocs): Likewise.
300 * elf32-cris.c (cris_elf_check_relocs): Likewise.
301 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
302 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
303 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
304 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
305 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
306 * elf32-i370.c (i370_elf_check_relocs): Likewise.
307 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
308 * elf32-lm32.c (lm32_elf_check_relocs): Likewise.
309 * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
310 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
311 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
312 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
313 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
314 * elf32-metag.c (elf_metag_check_relocs): Likewise.
315 * elf32-microblaze.c (microblaze_elf_check_relocs): Likewise.
316 * elf32-moxie.c (moxie_elf_check_relocs): Likewise.
317 * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
318 * elf32-mt.c (mt_elf_check_relocs): Likewise.
319 * elf32-nios2.c (nios2_elf32_check_relocs): Likewise.
320 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
321 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
322 * elf32-rl78.c (rl78_elf_check_relocs): Likewise.
323 * elf32-s390.c (elf_s390_check_relocs): Likewise.
324 * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise.
325 * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise.
326 * elf32-sh.c (sh_elf_check_relocs): Likewise.
327 * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise.
328 * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise.
329 * elf32-v850.c (v850_elf_check_relocs): Likewise.
330 * elf32-vax.c (elf_vax_check_relocs): Likewise.
331 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
332 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
333 * elf64-aarch64.c (elf64_aarch64_check_relocs): Likewise.
334 * elf64-alpha.c (elf64_alpha_check_relocs): Likewise.
335 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
336 * elf64-ia64-vms.c (elf64_ia64_check_relocs): Likewise.
337 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
338 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
339 * elf64-s390.c (elf_s390_check_relocs): Likewise.
340 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
341 * elfnn-ia64.c (elfNN_ia64_check_relocs): Likewise.
342 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
343 * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
344 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. Don't
345 test indirect/warning links for NULL.
346
61315175
L
3472013-03-29 H.J. Lu <hongjiu.lu@intel.com>
348
349 PR ld/15323
350 * elf32-i386.c (elf_i386_check_relocs): Set non_ir_ref if a
81fbe831 351 symbol is referenced by a non-shared object.
61315175
L
352 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
353
a6f713fc
KK
3542013-03-28 Joe Seymour <jseymour@codesourcery.com>
355
356 * elf32-sh.c (sh_elf_relocate_section): Suppress warnings for
357 R_SH_REL32 relocations against undefined weak symbols.
358
19e08130
AM
3592013-03-28 Alan Modra <amodra@gmail.com>
360
361 * elf64-ppc.c (struct ppc_dyn_relocs): New.
362 (ppc64_elf_check_relocs): Separate dynrel counts for local syms
363 into ifunc and non-ifunc.
364 (dec_dynrel_count): Pass in sym rather than sym_sec. Handle
365 separate ifunc/non-ifunc dynrel counts.
366 (allocate_got): Always use reliplt for ifunc.
367 (allocate_dynrelocs): Likewise.
368 (ppc64_elf_size_dynamic_sections): Likewise.
369 (ppc64_elf_layout_multitoc): Likewise.
370 (ppc64_elf_relocate_section): Likewise.
371
f95f8542
AM
3722013-03-28 Alan Modra <amodra@gmail.com>
373
374 * elf32-ppc.c (struct ppc_dyn_relocs): New.
375 (ppc_elf_check_relocs): Separate dynrel counts for local syms
376 into ifunc and non-ifunc.
377 (allocate_dynrelocs): Always put ifunc relocs into reliplt.
378 (ppc_elf_size_dynamic_sections): Likewise.
379 (ppc_elf_relocate_section): Likewise.
380
7e612e98
AM
3812013-03-28 Alan Modra <amodra@gmail.com>
382
383 * elf-bfd.h (enum elf_reloc_type_class): Add reloc_class_ifunc.
384 (struct elf_backend_data <elf_backed_reloc_type_class>): Add
385 bfd_link_info* and asection* params.
386 (_bfd_elf_reloc_type_class): Likewise.
387 * elf.c (_bfd_elf_reloc_type_class): Likewise.
388 * elflink.c (elf_link_sort_cmp2): Sort first on reloc class.
389 (elf_link_sort_relocs): Update elf_backed_reloc_type_class call.
390 * elf32-ppc.c (ppc_elf_reloc_type_class): Return reloc_class_ifunc
391 for any reliplt reloc. Don't return reloc_class_plt for
392 R_PPC_REL24 and R_PPC_ADDR24.
393 * elf64-ppc.c (allocate_got): Formatting.
394 (ppc64_elf_reloc_type_class): Return reloc_class_ifunc for any
395 reliplt reloc.
396 * elf-m10300.c, * elf32-arm.c, * elf32-bfin.c, * elf32-cr16.c,
397 * elf32-cris.c, * elf32-hppa.c, * elf32-i386.c, * elf32-lm32.c,
398 * elf32-m32r.c, * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c,
399 * elf32-s390.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilepro.c,
400 * elf32-vax.c, * elf32-xtensa.c, * elf64-aarch64.c, * elf64-alpha.c,
401 * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-s390.c, * elf64-sparc.c,
402 * elf64-x86-64.c, * elfnn-ia64.c, * elfxx-tilegx.c, * elfxx-tilegx.h:
403 Add extra params to the various reloc_type_class functions.
404
0bed072f
AM
4052013-03-27 Alan Modra <amodra@gmail.com>
406
407 * elf32-ppc.c (ppc_elf_check_relocs): Set PLT_IFUNC in local got
408 masks for all local ifunc syms.
409 (allocate_dynrelocs): Don't use htab->relgot for ifunc.
410 (ppc_elf_size_dynamic_sections): Likewise.
411 (ppc_elf_relocate_section): Likewise.
412
6f820c85
WN
4132013-03-27 Will Newton <will.newton@linaro.org>
414
415 * elf32-arm.c (elf32_arm_final_link_relocate): Avoid emitting a
416 dynamic reloc for symbols with dynindx == -1.
417 (allocate_dynrelocs_for_symbol): Avoid allocating space for a
418 dynamic reloc for symbols with dynindx == -1.
419
31943882
WN
4202013-03-27 Will Newton <will.newton@linaro.org>
421
422 * elf32-arm.c (elf32_arm_final_link_relocate): Avoid emitting a
423 dynamic reloc for non-default visibility undefined weaks.
424 (allocate_dynrelocs_for_symbol): Avoid allocating space for a
425 dynamic reloc for non-default visibility undefined weaks.
426
ffd65175
AM
4272013-03-26 Alan Modra <amodra@gmail.com>
428
429 * elflink.c (_bfd_elf_add_default_symbol): Preserve section
430 over _bfd_elf_merge_symbol calls.
431
3a81e825
AM
4322013-03-26 Alan Modra <amodra@gmail.com>
433
434 * elflink.c (elf_link_add_object_symbols): Add assertion for
435 common override alignment check code. Formatting.
436
4f3fedcf
AM
4372013-03-25 Alan Modra <amodra@gmail.com>
438
439 * elflink.c (_bfd_elf_merge_symbol): Set old_alignment for
440 usual common symbols as well as for dynamic. Add poldbfd param.
441 Save old bfd. Adjust callers.
442 (_bfd_elf_add_default_symbol): Add poldbfd param. Pass "section"
443 and "value" by value, not pointer. Adjust caller.
444 (elf_link_add_object_symbols): Combine undef_bfd and old_bfd vars.
445 Delete code to set same. Use old_bfd and old_alignment from
446 _bfd_elf_merge_symbol instead. Add default symbol before
447 alignment and size checks. Wrap overlong lines.
448
e3c9d234
AM
4492013-03-25 Alan Modra <amodra@gmail.com>
450
451 * elflink.c (_bfd_elf_add_default_symbol): Delete "override" param.
452 (elf_link_add_object_symbols): Don't call _bfd_elf_add_default_symbol
453 when override is true.
454
6c9b78e6
AM
4552013-03-25 Alan Modra <amodra@gmail.com>
456
457 * elflink.c (_bfd_elf_merge_symbol): Use local var holding value
458 of *sym_hash.
459
191c0c42
AM
4602013-03-25 Alan Modra <amodra@gmail.com>
461
462 * elflink.c (_bfd_elf_merge_symbol): Don't discard TLS symbols here.
463 Wrap long lines.
464 (elf_link_add_object_symbols): Discard TLS symbols for --just-syms
465 early in symbol loop.
466
5d13b3b3
AM
4672013-03-25 Alan Modra <amodra@gmail.com>
468
469 * elf-bfd.h (struct elf_backend_data <merge_symbol>): Update proto.
470 (_bfd_elf_init_reloc_shdr): Delete.
471 * elf.c (_bfd_elf_init_reloc_shdr): Make static.
472 * elf64-x86-64.c (elf_x86_64_merge_symbol): Trim parameters to
473 just what is needed.
474 * elflink.c (_bfd_elf_merge_symbol): Update bed->merge_symbol call.
475
8a56bd02
AM
4762013-03-23 Alan Modra <amodra@gmail.com>
477
478 * elf-bfd.h (_bfd_elf_merge_symbol): Delete declaration.
479 * elflink.c (_bfd_elf_merge_symbol): Make static.
480 * elf32-sh-symbian.c (sh_symbian_relocate_section): Don't call
481 _bfd_elf_merge_symbol, call _bfd_generic_link_add_one_symbol.
482
96f29d96
AM
4832013-03-23 Alan Modra <amodra@gmail.com>
484
485 PR ld/15270
486 * elflink.c (elf_link_add_object_symbols): Don't set def_regular
487 or ref_regular for BFD_PLUGIN owned syms, or have them affect
488 def_dynamic/ref_dynamic.
489 (_bfd_elf_fix_symbol_flags): Don't set def_regular for BFD_PLUGIN
490 owned syms.
491
209be8d2
DM
4922013-03-22 David S. Miller <davem@davemloft.net>
493
494 * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): Set type of
495 hwcaps attribute.
496
5c0df484
NC
4972013-03-22 Achille Fouilleul <achille.fouilleul+binutils@gadz.org>
498
499 PR ld/14902
500 * elf32-h8300.c (elf32_h8_relax_delete_bytes): Fix off by one
501 errors adjusting relocs and symbols.
502
81f5558e
NC
5032013-03-21 Michael Schewe <michael.schewe@gmx.net>
504
505 * elf32-h8300 (h8_relax_section): Add new relaxation of mov
506 @(disp:32,ERx) to mov @(disp:16,ERx).
507 (R_H8_DISP32A16): New reloc.
508 Comments added and corrected.
509 * reloc.c (BFD_RELOC_H8_DISP32A16): New reloc.
510 * bfd-in2.h: Regenerate.
511 * libbfd.h: Regenerate.
512
ce63b7b3
KT
5132013-03-21 Kai Tietz <ktietz@redhat.com>
514
515 * coffgen.c (coff_real_object_p): Make global.
516 * peicode.h (coff_real_object_p): Add prototype.
517 (FILHDR): Defined for COFF_IMAGE_WITH_PE as
518 external_PEI_IMAGE_hdr structure.
519 (coff_swap_filehdr_in): Handle variable header-size.
520 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Just handle amount
521 of directory-entiries as specified in pe-header.
522
088ca6c1
NC
5232013-03-21 Nick Clifton <nickc@redhat.com>
524
525 PR sim/15286
526 * elf32-arm.c (bfd_arm_get_mach_from_attributes): Identify XScale,
527 iWMMXt and iWMMXt2 processors from attributes.
528
8877b5e5
AM
5292013-03-20 Alan Modra <amodra@gmail.com>
530
531 * elflink.c (_bfd_elf_make_dynamic_reloc_section): Override
532 sh_type according to is_rela.
533
ffa9430d
AM
5342013-03-18 Alan Modra <amodra@gmail.com>
535
536 PR ld/12549
537 * elflink.c (elf_link_add_object_symbols): Exclude weak refs when
538 considering whether an --as-needed library is needed.
539
cc0ea93c
TT
5402013-03-14 Tom Tromey <tromey@redhat.com>
541
542 * opncls.c (bfd_get_debug_link_info): Rename from
543 get_debug_link_info. Export. Update comment.
544 (find_separate_debug_file): Update.
545 * bfd-in2.h: Rebuild.
546
59c108f7
NC
5472013-03-08 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
548
a22cd6f6 549 * elf64-aarch64.c (elf_backend_can_gc_sections): Enable gc-section
59c108f7 550 support.
a22cd6f6 551 (elf64_aarch64_gc_sweep_hook): Handle GOT, TLS and PLT related
59c108f7
NC
552 relocs.
553
abb3f6cc
NC
5542013-03-08 Andreas Arnez <arnez@linux.vnet.ibm.com>
555
556 * elf-bfd.h (elfcore_write_s390_tdb): Add prototype.
557 * elf.c (elfcore_write_s390_tdb): New function.
558 (elfcore_write_register_note): Call it.
559 (elfcore_grok_s390_tdb): New function.
560 (elfcore_grok_note): Call it.
561
af924177
MR
5622013-03-08 Maciej W. Rozycki <macro@codesourcery.com>
563
564 * elfxx-mips.c (mips_elf_allocate_lazy_stub): Correct data type.
565
48385e38
CV
5662013-03-05 Corinna Vinschen <vinschen@redhat.com>
567
568 * config.bfd: Add x86_64-*-cygwin to list of supported targets.
569
f75e0e33
AM
5702013-03-04 Alan Modra <amodra@gmail.com>
571
572 * elf32-ppc.c (ppc_elf_relocate_section <R_PPC_PLTREL24>): Adjust
573 non-zero addends when relocatable, rather than addends >= 32768.
574 Always zero "addend" before applying relocation.
575
17e3916e
NC
5762013-03-04 Nick Clifton <nickc@redhat.com>
577
578 * archive64.c (bfd_elf64_archive_write_armap): Fix calculation of
579 file pointer offsets for thin archives.
580
3064e1ff
JB
5812013-02-28 Nathan Sidwell <nathan@codesourcery.com>
582
583 * elf32-arm.c (elf32_arm_size_dynamic_sections): Don't call
584 elf32_arm_allocate_dynrelocs for source reloc for non-dynamic link.
585
4107ae22
DD
5862013-02-27 DJ Delorie <dj@redhat.com>
587
588 * reloc.c (BFD_RELOC_RL78_CODE): Add.
589 * libbfd.h: Regenerate.
590 * bfd-in2.h: Regenerate.
591 * elf32-rl78.c (rl78_elf_relocate_section): Handle weak code
592 references in compuated relocs.
593
730fbaf8
AG
5942013-02-26 Anthony Green <green@moxielogic.com>
595
596 * config.bfd: Extend moxie-rtems target triplet name support.
597
35399224
L
5982013-02-21 H.J. Lu <hongjiu.lu@intel.com>
599
600 PR ld/15167
601 * elf64-ia64-vms.c (elf64_vms_link_add_object_symbols): Set
602 unique_global only for definition.
603 * elflink.c (_bfd_elf_merge_symbol): Don't set unique_global
604 here.
605 (elf_link_add_object_symbols): Set unique_global only
606 for definition.
607
c0355132
AM
6082013-02-21 Alan Modra <amodra@gmail.com>
609
610 * elf-bfd.h (struct elf_build_id): Extracted from..
611 (struct elf_build_id_info): ..here. Delete.
612 (struct output_elf_obj_tdata): New, extracted from..
613 (struct elf_obj_tdata): ..here. Reorganize for better packing.
614 Add "o" field.
615 (elf_program_header_size): Reference tdata->o.
616 (elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
617 elf_stack_flags, elf_shstrtab, elf_strtab_sec, elf_shstrtab_sec,
618 elf_section_syms, elf_num_section_syms, elf_flags_init): Likewise.
619 * elf.c (bfd_elf_allocate_object): Allocate output_elf_obj_tdata
620 when opening bfd in any mode that might write.
621 (_bfd_elf_write_object_contents): Use build_id field in
622 output_elf_obj_tdata.
623 (_bfd_elf_close_and_cleanup): Tweak elf_shstrtab test.
624 (elfobj_grok_gnu_build_id): Adjust for elf_tdata changes.
625
228e534f
AM
6262013-02-21 Alan Modra <amodra@gmail.com>
627
628 * elf-bfd.h (struct core_elf_obj_tdata): New.
629 (struct elf_obj_tdata): Delete core_signal, core_pid, core_lwpid,
630 core_program, and core_command. Add "core".
631 * elf.c (bfd_elf_mkcorefile): Allocate "core" struct.
632 Update all refs to tdata core fields.
633 * elf32-am33lin.c, * elf32-arm.c, * elf32-cris.c, * elf32-frv.c,
634 * elf32-hppa.c, * elf32-i386.c, * elf32-m68k.c, * elf32-mips.c,
635 * elf32-nios2.c, * elf32-ppc.c, * elf32-s390.c, * elf32-score.c,
636 * elf32-score7.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilegx.c,
637 * elf32-tilepro.c, * elf32-xtensa.c, * elf64-aarch64.c,
638 * elf64-hppa.c, * elf64-mips.c, * elf64-ppc.c, * elf64-tilegx.c,
639 * elf64-x86-64.c, * elfcore.h, * elfn32-mips.c: Update all refs
640 to tdata core fields.
641
12bd6957
AM
6422013-02-21 Alan Modra <amodra@gmail.com>
643
644 * elf-bfd.h (struct elf_obj_tdata): Rename segment_map to seg_map.
645 Delete num_locals and num_globals.
646 (elf_num_locals, elf_num_globals): Don't define.
647 (elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
648 elf_stack_flags, elf_strtab_sec, elf_shstrtab_sec): Define.
649 * bfd.c, * elf-eh-frame.c, * elf-nacl.c, * elf-vxworks.c, * elf.c,
650 * elf32-arm.c, * elf32-lm32.c, * elf32-ppc.c, * elf32-rx.c,
651 * elf32-spu.c, * elf64-hppa.c, * elfcode.h, * elflink.c,
652 * elfnn-ia64.c, * elfxx-mips.c: Use newly defined elf_obj_tdata
653 accessor macros.
654 * elf.c (elf_map_symbols): Add pnum_locals param. Return
655 number of locals syms via new param.
656 (swap_out_syms): Adjust to suit elf_map_symbols change.
657
cbf8d970
MR
6582013-02-19 Maciej W. Rozycki <macro@codesourcery.com>
659
660 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Also clear
661 STO_MICROMIPS annotation.
662
30e8ee25
AM
6632013-02-19 Alan Modra <amodra@gmail.com>
664
665 * configure.in: Bump version to 2.23.52.
666 * elf-bfd.h (struct elf_build_id_info): New.
667 (struct elf_obj_tdata): Delete after_write_object_contents,
668 after_write_object_contents_info and build_id_size. Make build_id
669 a pointer to struct elf_build_id_info.
670 * elf.c (_bfd_elf_write_object_contents): Style. Update
671 after_write_ibject_contents invocation.
672 (elfobj_grok_gnu_build_id): Update for new build_id struct. Don't
673 allow zero size notes.
674 * configure: Regenerate.
675
5b175e56
MR
6762013-02-18 Maciej W. Rozycki <macro@codesourcery.com>
677
678 * elf64-mips.c (micromips_elf64_howto_table_rel): Add
679 R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
680 (micromips_elf64_howto_table_rela): Likewise.
681 (micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
682 * elfn32-mips.c (elf_micromips_howto_table_rel): Add
683 R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
684 (elf_micromips_howto_table_rela): Likewise.
685 (micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
686
e8faf7d1
MR
6872013-02-18 Paul Brook <paul@codesourcery.com>
688
689 * elfxx-mips.c (MICROMIPS_P): New macro.
690 (_bfd_mips_elf_symbol_processing): Use it.
691
c164a95d
MR
6922013-02-18 Maciej W. Rozycki <macro@codesourcery.com>
693
694 * elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Clarify
695 comment on _PROCEDURE_LINKAGE_TABLE_ creation.
696
d45f8bda
AM
6972013-02-18 Alan Modra <amodra@gmail.com>
698
699 PR ld/12549
700 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Delete.
701 (_bfd_elf_strtab_clear_all_refs): Declare.
702 (_bfd_elf_strtab_resize): Declare.
703 * elf-strtab.c (_bfd_elf_strtab_clear_refs): Delete.
704 (_bfd_elf_strtab_clear_all_refs): New function.
705 (_bfd_elf_strtab_resize): Likewise.
706 * elflink.c (elf_link_add_object_symbols): Use _bfd_elf_strtab_resize.
707
698600e4
AM
7082013-02-18 Alan Modra <amodra@gmail.com>
709
710 * elf-bfd.h (struct elf_obj_tdata): Move find_line_info, local_stubs,
711 local_call_stubs, elf_data_symbol, elf_text_symbol, elf_data_section,
712 and elf_text_section to..
713 * elfxx-mips.c (struct mips_elf_obj_tdata): ..here. Update all refs.
714 * elf64-alpha.c (struct mips_elf_find_line): Rename to..
715 (struct alpha_elf_find_line): ..this.
716 (struct alpha_elf_obj_tdata): Add find_line_info, update refs.
717
3d5bef4c
L
7182013-02-16 H.J. Lu <hongjiu.lu@intel.com>
719
720 PR ld/15146
721 * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
722 for references from the dummy bfd.
723
313ed4a9
L
7242013-02-16 H.J. Lu <hongjiu.lu@intel.com>
725
726 PR ld/15149
727 * elflink.c (elf_link_add_object_symbols): Also track weak
728 references.
729
989fbeff
L
7302013-02-15 H.J. Lu <hongjiu.lu@intel.com>
731
732 PR binutils/15151
733 * archive.c (_bfd_find_nested_archive): Don't allow a nested
734 archive pointing to itself.
735 (_bfd_get_elt_at_filepos): Revert the last 2 changes.
736
a043396b
NC
7372013-02-15 Nick Clifton <nickc@redhat.com>
738
739 PR binutils/15140
740 * archive.c (_bfd_get_elt_at_filepos): Prevent an infinite loop
741 accessing a corrupt nested archive.
742
13db6b44
RS
7432013-02-13 Richard Sandiford <rdsandiford@googlemail.com>
744
745 * elfxx-mips.c (mips_got_page_ref): New structure.
746 (mips_got_page_entry): Use a section rather than a (bfd, symndx)
747 pair to represent the anchor point.
748 (mips_got_info): Add a got_page_refs field.
749 (mips_elf_link_hash_table): Add a sym_cache field.
750 (mips_got_page_ref_hash, mips_got_page_ref_eq): New functions.
751 (mips_got_page_entry_hash, mips_got_page_entry_eq): Update for
752 new anchor representation.
753 (mips_elf_create_got_info): Create got_page_refs rather than
754 got_page_entries.
755 (mips_elf_record_got_page_ref): New function.
756 (mips_elf_pages_for_range): Move further down file.
757 (mips_elf_record_got_page_entry): Likewise. Take a got as argument.
758 Use a section rather than a (bfd, symndx) pair to represent the
759 anchor point.
760 (mips_elf_resolve_got_page_ref): New function.
761 (mips_elf_resolve_final_got_entries): Use it to populate
762 got_page_entries.
763 (_bfd_mips_elf_check_relocs): Call mips_elf_record_got_page_ref
764 rather than mips_elf_record_got_page_entry. Only nullify h
765 afterwards.
766 (mips_elf_lay_out_got): Call mips_elf_resolve_final_got_entries
767 earlier.
768
57093f5e
RS
7692013-02-12 Richard Sandiford <rdsandiford@googlemail.com>
770
771 * elfxx-mips.c (mips_elf_lay_out_got): Count VxWorks GOT relocs
772 in g->relocs.
773
9c3f90c4
AM
7742013-02-12 Alan Modra <amodra@gmail.com>
775
776 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Provide
777 suitable definition when using generic linker hash table.
778
476366af
RS
7792013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
780
781 * elfxx-mips.c (mips_elf_count_got_entries): Delete.
782 (mips_elf_check_recreate_got, mips_elf_recreate_got): Take a
783 mips_elf_traverse_got_arg. Count GOT entries.
784 (mips_elf_resolve_final_got_entries): Take the bfd_link_info
785 as argument. Update after above changes.
786 (mips_elf_merge_got, mips_elf_lay_out_got): Don't call
787 mips_elf_count_got_entries. Update the calls to
788 mips_elf_resolve_final_got_entries.
789
9ab066b4
RS
7902013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
791
792 * elfxx-mips.c (mips_got_tls_type): New enum.
793 (mips_got_entry): Add tls_initialized.
794 (mips_elf_got_entry_hash, mips_elf_got_entry_eq, mips_tls_got_relocs)
795 (mips_elf_count_got_entry, mips_elf_initialize_tls_index): Remove
796 GOT_TLS_TYPE masks.
797 (mips_elf_reloc_tls_type, mips_tls_got_entries)
798 (mips_elf_record_global_got_symbol, mips_elf_initialize_tls_index)
799 (_bfd_mips_elf_finish_dynamic_symbol): Use GOT_TLS_NONE rather
800 than GOT_NORMAL.
801 (mips_elf_initialize_tls_slots): Replace got_offset and tls_type_p
802 arguments with a GOT entry. Remove GOT_TLS_TYPE masks. Use
803 tls_initialized rather than GOT_TLS_DONE.
804 (mips_tls_got_index): Delete.
805 (mips_elf_local_got_index, mips_elf_global_got_index): Use
806 mips_elf_initialize_tls_slots rather than mips_tls_got_index.
807 (mips_elf_record_got_entry): Initialize tls_initialized.
808
6c42ddb9
RS
8092013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
810
811 * elfxx-mips.c (mips_got_entry): Remove tls_ldm_offset.
812 (mips_elf_link_hash_entry): Remove tls_ie_type, tls_gd_type,
813 tls_ie_got_offset and tls_gd_got_offset.
814 (mips_elf_link_hash_newfunc): Remove initialization.
815 (mips_elf_create_got_info): Likewise.
816 (mips_elf_count_local_got_entries, mips_elf_count_global_tls_entries)
817 (mips_tls_single_got_index): Delete.
818 (mips_elf_local_got_index): Always use the GOT entry to track
819 GOT indices.
820 (mips_elf_global_got_index): Likewise.
821 (mips_elf_create_local_got_entry): Assert that TLS entries have
822 already been allocated.
823 (mips_elf_record_global_got_symbol): Don't initialize
824 tls_ie_type or tls_gd_type.
825 (mips_elf_count_got_symbols): Only count reloc-only GOT entries here.
826 (mips_elf_initialize_tls_index): Allocate a GOT index for every TLS
827 entry.
828 (mips_elf_lay_out_got): Use mips_elf_count_got_entries to count
829 the GOT entries.
830 (_bfd_mips_elf_finish_dynamic_symbol): Assert that TLS GOT offsets
831 have been allocated.
832 (_bfd_mips_elf_copy_indirect_symbol): Remove handling of
833 tls_ie_type and tls_gd_type.
834
ebc53538
RS
8352013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
836
837 * elfxx-mips.c (mips_elf_create_local_got_entry): Tidy. Avoid
838 aliasing violation. Check for htab allocation failures.
839
13fbec83
RS
8402013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
841
842 * elfxx-mips.c (mips_elf_primary_global_got_index): New function,
843 split out from...
844 (mips_elf_global_got_index): ...here. Reorder arguments so that
845 the output bfd and info come first.
846 (mips_elf_calculate_relocation): Update the call to
847 mips_elf_global_got_index accordingly.
848 (_bfd_mips_elf_finish_dynamic_symbol): Use
849 mips_elf_primary_global_got_index rather than
850 mips_elf_global_got_index.
851 (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
852
3dff0dd1
RS
8532013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
854
855 * elfxx-mips.c (mips_got_entry): Update comments.
856 (mips_elf_multi_got_entry_eq): Rename to...
857 (mips_elf_got_entry_eq): ...this, deleting the old definition.
858 (mips_elf_create_got_info): Remove master_got_p argument.
859 Always use mips_elf_got_entry_eq.
860 (mips_elf_bfd_got, mips_elf_multi_got, mips_elf_create_got_section):
861 Update calls accordingly.
862
d7206569
RS
8632013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
864
865 * elfxx-mips.c (mips_got_info): Remove bfd2got.
866 (mips_elf_bfd2got_hash): Delete.
867 (mips_elf_got_per_bfd_arg): Remove bfd2got.
868 (mips_elf_replace_bfd_got, mips_elf_count_got_entries): New functions.
869 (mips_elf_global_got_index, mips_elf_create_local_got_entry): Use
870 g->next to test for the multigot case. Use mips_elf_bfd_got rather
871 than mips_elf_got_for_ibfd.
872 (mips_elf_bfd2got_entry_hash, mips_elf_bfd2got_entry_eq)
873 (mips_elf_got_for_ibfd, mips_elf_get_got_for_bfd): Delete.
874 (mips_elf_make_got_per_bfd): Replace with...
875 (mips_elf_add_got_entry): ...this new function.
876 (mips_elf_make_got_pages_per_bfd): Replace with...
877 (mips_elf_add_got_page_entry): ...this new function.
878 (mips_elf_merge_got_with): Replace bfd2got argument with separate
879 bfd and GOT arguments. Use mips_elf_add_got_entry and
880 mips_elf_add_got_page_entry instead of mips_elf_make_got_per_bfd
881 and mips_elf_make_got_pages_per_bfd. Use mips_elf_replace_bfd_got
882 to set the BFD's GOT and free the old table.
883 (mips_elf_merge_got): Replace bfd2got argument with separate
884 bfd and GOT arguments. Apply mips_elf_resolve_final_got_entries.
885 Use mips_elf_count_got_entries to count the number of entries in
886 each GOT. Update the calls to mips_elf_merge_got_with.
887 (mips_elf_adjust_gp): Use g->next to test for the multigot case.
888 Use mips_elf_bfd_got rather than mips_elf_got_for_ibfd.
889 (mips_elf_multi_got): Don't create the bfd2got hash table.
890 Replace hash table traversal with a walk over the input bfds,
891 updating the call to mips_elf_merge_got. Use mips_elf_replace_bfd_got
892 to set the output bfd's GOT.
893 (mips_elf_lay_out_got): Rename "sub" to "ibfd". Record that all
894 bfds use the master GOT in the single-GOT case.
895 (_bfd_mips_elf_finish_dynamic_sections): Use mips_elf_bfd_got
896 rather than mips_elf_got_for_ibfd.
897
ee227692
RS
8982013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
899
900 * elfxx-mips.c (mips_elf_obj_tdata): Add a got field.
901 (mips_elf_bfd_got, mips_elf_record_got_entry): New functions.
902 (mips_elf_record_global_got_symbol): Update the hash entry before
903 adding the mips_got_entry. Use mips_elf_record_got_entry to do
904 the latter.
905 (mips_elf_record_local_got_symbol): Use mips_elf_record_got_entry.
906 (mips_elf_record_got_page_entry): Record the entry in both the
907 master and bfd GOTs.
908
72e7511a
RS
9092013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
910
911 * elfxx-mips.c (mips_elf_recreate_got): Don't change the entry;
912 create another one if necessary.
913 (mips_elf_set_gotidx): New function.
914 (mips_elf_set_global_gotidx): Use it.
915 (mips_elf_initialize_tls_index): Likewise. Take a
916 mips_elf_traverse_got_arg as argument.
917 (mips_elf_lay_out_got): Update use of mips_elf_initialize_tls_index.
918 (mips_elf_multi_got): Likewise. Cope with error returns from
919 mips_elf_set_global_gotidx.
920
ab361d49
RS
9212013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
922
923 * elfxx-mips.c (mips_got_info): Add relocs field.
924 (mips_elf_set_global_got_offset_arg, mips_elf_count_tls_arg): Replace
925 with...
926 (mips_elf_traverse_got_arg): ...this new structure.
927 (mips_elf_count_local_tls_relocs): Delete.
928 (mips_elf_count_global_tls_relocs): Likewise.
929 (mips_elf_count_got_entry): New function.
930 (mips_elf_count_local_got_entries): Likewise.
931 (mips_elf_count_global_tls_entries): Take a mips_elf_traverse_got_arg
932 rather than a mips_elf_count_tls_arg. Count both relocs and entries.
933 (mips_elf_record_local_got_symbol): Don't count got entries here.
934 (mips_elf_make_got_per_bfd): Use mips_elf_count_got_entry.
935 (mips_elf_set_global_got_offset): Split into...
936 (mips_elf_set_global_got_area, mips_elf_set_global_gotidx): ...these
937 new functions. Take a mips_elf_traverse_got_arg rather than a
938 mips_elf_set_global_got_offset_arg. Don't count TLS relocs here.
939 Use g->relocs to record the number of relocs needed for global GOT
940 entries.
941 (mips_elf_multi_got): Use mips_elf_traverse_got_arg rather than
942 mips_elf_set_global_got_offset_arg. Use the relocs field to count
943 relocations. Update for above function split.
944 (mips_elf_lay_out_got): Use mips_elf_count_local_got_entries
945 to count both the number of GOT entries and the number of TLS
946 relocs required by local entries. Likewise
947 mips_elf_count_global_tls_entries and global entries.
948 Remove uses of mips_elf_count_local_tls_relocs and
949 mips_elf_count_global_tls_relocs.
950
e641e783
RS
9512013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
952
953 * elfxx-mips.c (mips_got_entry): Update comment above tls_type entry
954 to say that each structure represents only one type of TLS reference.
955 (GOT_TLS_TYPE): New define.
956 (mips_elf_link_hash_entry): Temporarily split tls_type and
957 tls_got_offset into two variables each.
958 (mips_elf_link_hash_newfunc): Update accordingly.
959 (mips_elf_got_entry_eq, mips_elf_got_entry_hash)
960 (mips_elf_multi_got_entry_eq): Require the tls_type to be the same.
961 (mips_elf_reloc_tls_type, mips_tls_got_entries): New functions.
962 (mips_tls_got_relocs): Use a switch statement.
963 (mips_elf_count_global_tls_entries): Handle the new hash entry fields.
964 (mips_elf_initialize_tls_slots): Use a switch statement. Avoid
965 local "offset" variable.
966 (mips_tls_got_index): Remove r_type argument and assert. Remove
967 code that handled entries with two TLS types; always use the
968 original got_index instead.
969 (mips_tls_single_got_index): New function.
970 (mips_elf_local_got_index): Use entry->tls_type to check for
971 TLS entries. Use mips_tls_single_got_index. Update call to
972 mips_tls_got_index.
973 (mips_elf_global_got_index): Use mips_elf_reloc_tls_type.
974 Use p->tls_type to check for TLS entries. Update call to
975 mips_tls_got_index. Use mips_tls_single_got_index.
976 (mips_elf_create_local_got_entry): Use mips_elf_reloc_tls_type.
977 Use entry.tls_type to check for TLS entries.
978 (mips_elf_record_global_got_symbol): Replace tls_flag argument
979 with r_type argument. Use mips_elf_reloc_tls_type.
980 Set up the new hash entry fields.
981 (mips_elf_record_local_got_symbol): Replace tls_flag argument
982 with r_type argument. Use mips_elf_reloc_tls_type and
983 mips_tls_got_entries. Remove code that handled entries
984 with multiple TLS types.
985 (mips_elf_make_got_per_bfd): Use mips_tls_got_entries.
986 (mips_elf_initialize_tls_index): Handle new hash entry fields.
987 Use equality rather than masks when checking for specific TLS types.
988 Use mips_tls_got_entries. Remove code that handled entries
989 with multiple TLS types.
990 (mips_elf_calculate_relocation): Use TLS_RELOC_P instead of
991 testing the hash table entry.
992 (_bfd_mips_elf_check_relocs): Update calls to
993 mips_elf_record_global_got_symbol and mips_elf_record_local_got_symbol.
994 (_bfd_mips_elf_finish_dynamic_symbol): Don't check h->type.
995 (_bfd_mips_elf_copy_indirect_symbol): Handle new hash entry fields.
996
d9bf376d
RS
9972013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
998
999 * elfxx-mips.c (mips_elf_multi_got_entry_hash): Rename to...
1000 (mips_elf_got_entry_hash): ...this, deleting the old version.
1001 (mips_elf_create_got_info): Use mips_elf_got_entry_hash for
1002 both types of GOT.
1003
5334aa52
RS
10042013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1005
1006 * elfxx-mips.c (mips_elf_create_got_info): New function.
1007 (mips_elf_get_got_for_bfd, mips_elf_multi_got): Use it.
1008 (mips_elf_create_got_section): Likewise.
1009
946c668d
RS
10102013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1011
1012 * elfxx-mips.c (mips_elf_record_local_got_symbol): Always set
1013 gotidx to -1.
1014
59b08994
RS
10152013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1016
1017 * elfxx-mips.c (mips_elf_multi_got): Simplify size calculation.
1018
d222d210
RS
10192013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1020
1021 * elfxx-mips.c (mips_got_info): Move global_gotsym to...
1022 (mips_elf_link_hash_table): ...here. Update rest of file accordingly.
1023
1fd20d70
RS
10242013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1025
1026 * elfxx-mips.c (mips_elf_count_global_tls_entries)
1027 (mips_elf_count_global_tls_relocs): Don't count indirect or
1028 warning symbols.
1029 (mips_elf_multi_got, mips_elf_lay_out_got): Assert that the right
1030 number of TLS entries were allocated.
1031
7d94b319
RS
10322013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1033
1034 * elfxx-mips.c (mips_elf_sort_hash_table_f): Remove asserts.
1035
17214937
RS
10362013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1037
1038 * elfxx-mips.c (mips_elf_merge_got_with): Only use arg->global_count
1039 if there are TLS relocations.
1040
9efeb38d
RS
10412013-02-11 Richard Sandiford <rdsandiford@googlemail.com>
1042
1043 * elfxx-mips.c (mips_elf_recreate_got): Remove free.
1044 (mips_elf_resolve_final_got_entries): Remove bogus comment.
1045
9c3f90c4
AM
10462013-02-11 Alan Modra <amodra@gmail.com>
1047
1048 * elfcode.h (elf_checksum_contents): Free contents.
1049 * elf-bfd.h (_bfd_elf_link_hash_table_free): Declare.
1050 * elflink.c (_bfd_elf_link_hash_table_free): New function.
1051 (elf_final_link_free): New function, extracted from..
1052 (bfd_elf_final_link): ..here. Always call
1053 _bfd_elf_write_section_eh_frame_hdr.
1054 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Default to
1055 _bfd_elf_link_hash_table_free.
1056 * libbfd-in.h (_bfd_merge_sections_free): Declare.
1057 * libbfd.h: Regenerate.
1058 * merge.c (_bfd_merge_sections_free): New function.
1059 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): Free
1060 hdr_info->array.
1061 * elf-m10300.c (elf32_mn10300_link_hash_table_free): Call
1062 _bfd_elf_link_hash_table_free.
1063 * elf32-arm.c (elf32_arm_link_hash_table_free): Likewise.
1064 * elf32-avr.c (elf32_avr_link_hash_table_free): Likewise.
1065 * elf32-hppa.c (elf32_hppa_link_hash_table_free): Likewise.
1066 * elf32-i386.c (elf_i386_link_hash_table_free): Likewise.
1067 * elf32-m68hc1x.c (m68hc11_elf_hash_table_free): Likewise.
1068 * elf32-m68k.c (elf_m68k_link_hash_table_free): Likewise.
1069 * elf32-metag.c (elf_metag_link_hash_table_free): Likewise.
1070 * elf32-xgate.c (xgate_elf_bfd_link_hash_table_free): Likewise.
1071 * elf64-aarch64.c (elf64_aarch64_link_hash_table_free): Likewise.
1072 * elf64-ia64-vms.c (elf64_ia64_hash_table_free): Likewise.
1073 * elf64-ppc.c (ppc64_elf_link_hash_table_free): Likewise.
1074 * elf64-x86-64.c (elf_x86_64_link_hash_table_free): Likewise.
1075 * elfnn-ia64.c (elfNN_ia64_hash_table_free): Likewise.
1076 * elf32-cr16.c (elf32_cr16_link_hash_table_free): Delete.
1077 (bfd_elf32_bfd_link_hash_table_free): Don't define.
1078 * elf32-tic6x.c (elf32_tic6x_link_hash_table_free): Delete.
1079 (bfd_elf32_bfd_link_hash_table_free): Dont' define.
1080
7bf52ea2
AM
10812013-02-10 Alan Modra <amodra@gmail.com>
1082
1083 * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_zmalloc.
1084 * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
1085 * m68klinux.c (linux_link_hash_table_create): Likewise.
1086 * sparclinux.c (linux_link_hash_table_create): Likewise.
1087 * sunos.c (sunos_link_hash_table_create): Likewise.
1088 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
1089 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
1090 * elf32-arm.c (elf32_arm_link_hash_table_create): Likewise.
1091 * elf32-avr.c (elf32_avr_link_hash_table_create): Likewise.
1092 * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise.
1093 * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
1094 * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
1095 * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
1096 * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise.
1097 * elf32-m32r.c (m32r_elf_link_hash_table_create): Likewise.
1098 * elf32-m68hc1x.c (m68hc11_elf_hash_table_create): Likewise.
1099 * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
1100 * elf32-metag.c (elf_metag_link_hash_table_create): Likewise.
1101 * elf32-nios2.c (nios2_elf32_link_hash_table_create): Likewise.
1102 * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
1103 * elf32-score.c (elf32_score_link_hash_table_create): Likewise.
1104 * elf32-spu.c (spu_elf_link_hash_table_create): Likewise.
1105 * elf32-tic6x.c (elf32_tic6x_link_hash_table_create): Likewise.
1106 * elf32-vax.c (elf_vax_link_hash_table_create): Likewise.
1107 * elf32-xgate.c (xgate_elf_bfd_link_hash_table_create): Likewise.
1108 * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Likewise.
1109 * elf64-aarch64.c (elf64_aarch64_link_hash_table_create): Likewise.
1110 * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
1111 * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
1112 * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Likewise.
1113 * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
1114 * elflink.c (_bfd_elf_link_hash_table_create): Likewise.
1115 (_bfd_elf_link_hash_table_init): Assume zero fill table on entry.
1116
22cdc249
AM
11172013-02-10 Alan Modra <amodra@gmail.com>
1118
1119 * i386linux.c (linux_link_hash_table_create): Allocate table
1120 with bfd_zmalloc, not bfd_alloc.
1121 * pdp11.c (link_hash_table_create): Allocate table with
1122 bfd_malloc, not bfd_alloc.
1123 * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create): Allocate table
1124 with bfd_zmalloc, not bfd_zalloc.
1125 (bfin_link_hash_table_create): Likewise.
1126 * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise.
1127 * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise.
1128
0e5de31a
AM
11292013-02-10 Alan Modra <amodra@gmail.com>
1130
1131 PR ld/15113
1132 * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
1133
ad1fc92a
NC
11342013-02-08 Markos Chandras <markos.chandras@imgtec.com>
1135
1136 * elf32-metag.c: Use bfd_get_linker_section to get SEC_LINKER_CREATED
1137 sections.
34c67f14
NC
1138 (elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss
1139 symbol.
ad1fc92a 1140
170a8295
YZ
11412013-02-08 Yufeng Zhang <yufeng.zhang@arm.com>
1142
1143 * elf64-aarch64.c (elf64_aarch64_grok_prstatus): Change 'size' from
1144 288 to 272.
1145
619a703e
AM
11462013-02-08 Alan Modra <amodra@gmail.com>
1147
1148 PR binutils/15106
1149 * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
1150 * elf.c (elf_find_function): Revert last change. Use new
1151 tdata field rather than static vars for cache.
1152
02acbe22
L
11532013-02-07 H.J. Lu <hongjiu.lu@intel.com>
1154
1155 PR ld/15107
1156 * elflink.c (elf_link_output_extsym): Set STB_GNU_UNIQUE only if
1157 symbol is defined in regular object.
1158
1965d5f2
AM
11592013-02-07 Roberto Agostino Vitillo <ra.vitillo@gmail.com>
1160
1161 PR binutils/15106
1162 * elf.c (elf_find_function): Don't cache if symbols change.
1163
dafbc74d
AM
11642013-02-07 Alan Modra <amodra@gmail.com>
1165
1166 PR binutils/14873
1167 * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
1168 copy attributes from or to non-ELF.
1169
20e52bd2
L
11702013-02-06 H.J. Lu <hongjiu.lu@intel.com>
1171
1172 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
1173 for non-zero TLS symbol.
1174 (elf_i386_relocate_section): Don't resolve size relocation against
1175 non-zero TLS symbol.
1176 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
1177 pc_count for non-zero TLS symbol.
1178 (elf_x86_64_relocate_section): Don't resolve size relocation
1179 against non-zero TLS symbol.
1180
36591ba1 11812013-02-06 Sandra Loosemore <sandra@codesourcery.com>
20e52bd2 1182 Andrew Jenner <andrew@codesourcery.com>
36591ba1
SL
1183
1184 Based on patches from Altera Corporation.
1185
1186 * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
1187 (ALL_MACHINES_CFILES): Add cpu-nios2.c.
1188 (BFD_BACKENDS): Add elf32-nios2.lo.
1189 (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
1190 * Makefile.in: Regenerated.
1191 * configure.in: Add entries for bfd_elf32_bignios2_vec and
1192 bfd_elf32_littlenios2_vec.
1193 * configure: Regenerated.
1194 * config.bfd: Add cases for nios2.
1195 * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
1196 (bfd_mach_nios2): Define.
1197 (bfd_nios2_arch): Declare.
1198 (bfd_archures_list): Add bfd_nios2_arch.
1199 * targets.c (bfd_elf32_bignios2_vec): Declare.
1200 (bfd_elf32_littlenios2_vec): Declare.
1201 (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
1202 bfd_elf32_littlenios2_vec.
1203 * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
1204 * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
1205 * bfd-in2.h: Regenerated.
1206 * libbfd.h: Regenerated.
1207 * cpu-nios2.c: New file.
1208 * elf32-nios2.c: New file.
1209
ca6b5f82
AM
12102013-02-06 Alan Modra <amodra@gmail.com>
1211
1212 * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
1213 stubs in stub_bfd.
1214
37ba9f93
AM
12152013-02-06 Alan Modra <amodra@gmail.com>
1216
1217 * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
1218 * Makefile.in: Regenerate.
1219
70a38d42
SDJ
12202013-02-04 Sergio Durigan Junior <sergiodj@redhat.com>
1221 Pedro Alves <palves@redhat.com>
1222
1223 * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
1224 * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
1225 declaration.
1226 (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
1227 (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
1228 * elf-linux-psinfo.h: New file.
1229 * elf.c: Include elf-linux-psinfo.h.
1230 (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
1231 New functions.
1232 * elf32-ppc.c: Include `elf-linux-psinfo.h'.
1233 (elf_external_ppc_linux_prpsinfo32): New structure declaration.
1234 (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
1235 (elfcore_write_ppc_linux_prpsinfo32): New function.
1236
5ee43bc4
TG
12372013-02-04 Tristan Gingold <gingold@adacore.com>
1238
1239 * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
1240 start address.
1241
0cadb185
AM
12422013-02-04 Alan Modra <amodra@gmail.com>
1243
1244 * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
1245 (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
1246 * Makefile.in: Regenerate.
1247 * po/SRC-POTFILES.in: Regenerate.
1248
5d42dfb5
AM
12492013-02-04 Alan Modra <amodra@gmail.com>
1250
1251 * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
1252 * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
1253
c57da1a7
AM
12542013-02-01 Alan Modra <amodra@gmail.com>
1255
1256 * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
1257 clears def_regular.
1258
c0fd7846
TG
12592013-01-31 Tristan Gingold <gingold@adacore.com>
1260
1261 * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
1262 earlier. Fix status checking of bfd_mach_o_scan_start_address.
1263 (bfd_mach_o_scan_start_address): Handle LC_MAIN.
1264
b45b6908
AM
12652013-01-31 Alan Modra <amodra@gmail.com>
1266 David S. Miller <davem@davemloft.net>
1267
1268 PR ld/15056
1269 * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
1270 references to __tls_get_addr.
1271 * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise. Correct
1272 vtinherit and vtentry reloc handling too.
1273 * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
1274
bcaa2f82
AM
12752013-01-31 Alan Modra <amodra@gmail.com>
1276
1277 * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
1278
22aa0c7e
AM
12792013-01-31 Alan Modra <amodra@gmail.com>
1280
1281 * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
1282
bc30df16
AM
12832013-01-28 Alan Modra <amodra@gmail.com>
1284
1285 * elf64-ppc.c: Use %T to print symbols names and remove redundant
1286 "relocation" in error messages throughout file.
1287 (ppc64_elf_relocate_section): Remove sibling call error message,
1288 replace with "call lacks nop". Specially report errors for
1289 branches to function entry points via OPD lookup and branches
1290 to stubs. Remove NULL symbol handling now done by %T.
1291
89d7b8aa
AM
12922013-01-28 Alan Modra <amodra@gmail.com>
1293
1294 * archive.c (bfd_generic_archive_p): Return target and keep
1295 ardata on partial matches.
1296 * format.c (bfd_check_format_matches): Adjust for above
1297 change. Remove bfd_error_file_ambiguously_recognized dead
1298 code.
1299
c9ba0c87
AM
13002013-01-26 Alan Modra <amodra@gmail.com>
1301
1302 * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
1303 bfd_preserve_finish): Move to..
1304 * format.c: ..here, splitting out..
1305 (bfd_reinit): ..this. New function.
1306 (bfd_check_format_matches): Use bfd_preserve_save/restore to
1307 keep bfd state for a match.
1308 * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
1309 * elfcore.h (elf_core_file_p): Likewise.
1310 * mach-o.c (bfd_mach_o_header_p): Likewise.
1311 * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
1312 * xsym.c (bfd_sym_object_p): Likewise.
1313 * mmo.c (mmo_scan): Clear abfd->symcount.
1314 * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
1315 * section.c (bfd_section_list_clear): Clear section_htab.count.
1316 * bfd-in2.h: Regenerate.
1317
d79dcc73
NC
13182013-01-25 Michael Schewe <michael.schewe@gmx.net>
1319
1320 * elf32-h8300.c (elf32_h8_relax_section): When checking for a
1321 second reloc, make sure that the reloc potentially exists first.
1322
78c8d46c
NC
13232013-01-24 Nick Clifton <nickc@redhat.com>
1324
1325 * archures.c: Add bfd_mach_v850e3v5.
1326 * bfd-in2.h: Regenerate.
1327 * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
1328 * cpu-v850_rh850.c: Likewise.
1329 * elf32-v850.c: Add support for v850e3v5 architecture.
1330
1a18f0ae
NC
13312013-01-23 Markos Chandras <markos.chandras@imgtec.com>
1332
1333 * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
1334
f65a9e53
AM
13352013-01-23 Leif Ekblad <leif@rdos.net>
1336
1337 * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
1338
3bea1fcb
L
13392013-01-18 H.J. Lu <hongjiu.lu@intel.com>
1340
1341 * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
1342 non-zero TLS symbol.
1343 (elf_i386_relocate_section): Resolve size relocation against
1344 non-zero TLS symbol.
1345 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
1346 for non-zero TLS symbol.
1347 (elf_x86_64_relocate_section): Resolve size relocation against
1348 non-zero TLS symbol.
1349
b1b00fcc
MF
13502013-01-18 Mike Frysinger <vapier@gentoo.org>
1351
1352 * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
1353 when new_dtags is false. Only add DT_RUNPATH when new_dtags is
1354 true.
1355
06a6a421
L
13562013-01-17 H.J. Lu <hongjiu.lu@intel.com>
1357
1358 * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
1359 PC-relative relocation.
1360 * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
1361 as PC-relative relocation.
1362
6a3e1bae
L
13632013-01-16 H.J. Lu <hongjiu.lu@intel.com>
1364
1365 * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
1366 check.
1367 (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
1368
1369 * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
1370 and R_X86_64_SIZE64 check.
1371 (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
1372 nor R_X86_64_SIZE64.
1373
1788fc08
L
13742013-01-16 H.J. Lu <hongjiu.lu@intel.com>
1375
1376 * bfd-in2.h: Regenerated.
1377 * libbfd.h: Likewise.
1378
1379 * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
1380 (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
1381 (elf_i386_check_relocs): Handle R_386_SIZE32.
1382 (elf_i386_gc_sweep_hook): Likewise.
1383 (elf_i386_relocate_section): Likewise.
1384
1385 * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
1386 and R_X86_64_SIZE64 entries.
1387 (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
1388 (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
1389 (elf_x86_64_reloc_name_lookup): Likewise.
1390 (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
1391 R_X86_64_SIZE64.
1392 (elf_x86_64_gc_sweep_hook): Likewise.
1393 (elf_x86_64_relocate_section): Likewise.
1394
1395 * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
1396 BFD_RELOC_SIZE64.
1397
1e536451
L
13982013-01-15 H.J. Lu <hongjiu.lu@intel.com>
1399
1400 * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
1401 with R_X86_64_RELATIVE64.
1402
77bf820f
NC
14032013-01-15 Nick Clifton <nickc@redhat.com>
1404
1405 * elf32-msp430.c: Fix spelling typo.
1406
e2458743
AM
14072013-01-15 Alan Modra <amodra@gmail.com>
1408
1409 * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
1410 plt-thread-safe.
1411
405bf443
AM
14122013-01-14 Alan Modra <amodra@gmail.com>
1413
1414 PR binutils/14813
1415 * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
1416 (memory_bclose): Likewise. Return 0 on success.
1417 * cache.c (cache_bclose): Likewise.
1418 * opncls.c (opncls_bclose, bfd_close): Likewise.
1419 * vms-lib.c (vms_lib_bclose): Likewise.
1420 * libbfd.h: Regenerate.
1421
ee659f1f
AM
14222013-01-13 Alan Modra <amodra@gmail.com>
1423
1424 * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
1425 Add ref_dynamic_nonweak.
1426 * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
1427 (_bfd_elf_merge_symbol): Don't call above function. Move
1428 setting of ref_dynamic_nonweak and dynamic_def earlier. Don't
1429 clear dynamic_def.
1430 (elf_link_add_object_symbols): Delete redundant "override" test.
1431 Don't set dynamic_def here.
1432 (elf_link_output_extsym): Update.
1433
68c4a57e
L
14342013-01-12 H.J. Lu <hongjiu.lu@intel.com>
1435
1436 * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
1437 normal and TLS symbol access.
1438 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1439
02be4619
AM
14402013-01-12 Alan Modra <amodra@gmail.com>
1441
1442 * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
1443 * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
1444 * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
1445
a4542f1b
AM
14462013-01-12 Alan Modra <amodra@gmail.com>
1447
1448 PR ld/12549
1449 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
1450 (_bfd_elf_strtab_clear_all_refs): Define.
1451 * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
1452 (_bfd_elf_strtab_clear_all_refs): Delete.
1453 * elflink.c (elf_link_add_object_symbols): Clear out added
1454 strtab refs. Correct handling of warning common symbols.
1455
68ffbac6
L
14562013-01-10 H.J. Lu <hongjiu.lu@intel.com>
1457
1458 * aout0.c: Remove trailing white spaces.
1459 * archive.c: Likewise.
1460 * archures.c: Likewise.
1461 * bfd-in.h: Likewise.
1462 * bfd-in2.h: Likewise.
1463 * coff-alpha.c: Likewise.
1464 * coff-i860.c: Likewise.
1465 * coff-mips.c: Likewise.
1466 * coff-ppc.c: Likewise.
1467 * coff-tic80.c: Likewise.
1468 * coff-x86_64.c: Likewise.
1469 * coff-z80.c: Likewise.
1470 * coffcode.h: Likewise.
1471 * coffgen.c: Likewise.
1472 * cofflink.c: Likewise.
1473 * compress.c: Likewise.
1474 * corefile.c: Likewise.
1475 * cpu-arm.c: Likewise.
1476 * cpu-avr.c: Likewise.
1477 * cpu-bfin.c: Likewise.
1478 * cpu-cr16.c: Likewise.
1479 * cpu-cr16c.c: Likewise.
1480 * cpu-crx.c: Likewise.
1481 * cpu-h8300.c: Likewise.
1482 * cpu-i386.c: Likewise.
1483 * cpu-lm32.c: Likewise.
1484 * cpu-m68k.c: Likewise.
1485 * cpu-moxie.c: Likewise.
1486 * cpu-msp430.c: Likewise.
1487 * cpu-sh.c: Likewise.
1488 * cpu-xc16x.c: Likewise.
1489 * dwarf2.c: Likewise.
1490 * ecofflink.c: Likewise.
1491 * ecoffswap.h: Likewise.
1492 * elf-ifunc.c: Likewise.
1493 * elf-m10300.c: Likewise.
1494 * elf-vxworks.c: Likewise.
1495 * elf32-avr.c: Likewise.
1496 * elf32-avr.h: Likewise.
1497 * elf32-cr16.c: Likewise.
1498 * elf32-cr16c.c: Likewise.
1499 * elf32-cris.c: Likewise.
1500 * elf32-crx.c: Likewise.
1501 * elf32-frv.c: Likewise.
1502 * elf32-hppa.c: Likewise.
1503 * elf32-i860.c: Likewise.
1504 * elf32-ip2k.c: Likewise.
1505 * elf32-iq2000.c: Likewise.
1506 * elf32-m32c.c: Likewise.
1507 * elf32-m68hc1x.c: Likewise.
1508 * elf32-msp430.c: Likewise.
1509 * elf32-mt.c: Likewise.
1510 * elf32-ppc.c: Likewise.
1511 * elf32-rl78.c: Likewise.
1512 * elf32-s390.c: Likewise.
1513 * elf32-score.h: Likewise.
1514 * elf32-sh-symbian.c: Likewise.
1515 * elf32-sh.c: Likewise.
1516 * elf32-spu.c: Likewise.
1517 * elf32-tic6x.c: Likewise.
1518 * elf32-v850.c: Likewise.
1519 * elf32-xc16x.c: Likewise.
1520 * elf32-xtensa.c: Likewise.
1521 * elf64-alpha.c: Likewise.
1522 * elf64-hppa.c: Likewise.
1523 * elf64-ppc.c: Likewise.
1524 * elf64-s390.c: Likewise.
1525 * elfcore.h: Likewise.
1526 * elflink.c: Likewise.
1527 * elfxx-mips.c: Likewise.
1528 * elfxx-sparc.c: Likewise.
1529 * elfxx-tilegx.c: Likewise.
1530 * ieee.c: Likewise.
1531 * libcoff.h: Likewise.
1532 * libpei.h: Likewise.
1533 * libxcoff.h: Likewise.
1534 * linker.c: Likewise.
1535 * mach-o-i386.c: Likewise.
1536 * mach-o-target.c: Likewise.
1537 * mach-o.c: Likewise.
1538 * mach-o.h: Likewise.
1539 * mmo.c: Likewise.
1540 * opncls.c: Likewise.
1541 * pdp11.c: Likewise.
1542 * pe-x86_64.c: Likewise.
1543 * peXXigen.c: Likewise.
1544 * pef-traceback.h: Likewise.
1545 * pei-x86_64.c: Likewise.
1546 * peicode.h: Likewise.
1547 * plugin.c: Likewise.
1548 * reloc.c: Likewise.
1549 * riscix.c: Likewise.
1550 * section.c: Likewise.
1551 * som.c: Likewise.
1552 * syms.c: Likewise.
1553 * tekhex.c: Likewise.
1554 * ticoff.h: Likewise.
1555 * vaxbsd.c: Likewise.
1556 * xcofflink.c: Likewise.
1557 * xtensa-isa.c: Likewise.
1558
a3c62988
NC
15592013-01-10 Will Newton <will.newton@imgtec.com>
1560
1561 * Makefile.am: Add Meta.
1562 * Makefile.in: Regenerate.
1563 * archures.c (bfd_mach_metag): New.
1564 * bfd-in2.h: Regenerate.
1565 * config.bfd: Add Meta.
1566 * configure: Regenerate.
1567 * configure.in: Add Meta.
1568 * cpu-metag.c: New file.
1569 * elf-bfd.h: Add Meta.
1570 * elf32-metag.c: New file.
1571 * elf32-metag.h: New file.
1572 * libbfd.h: Regenerate.
1573 * reloc.c: Add Meta relocations.
1574 * targets.c: Add Meta.
1575
652451f8
YZ
15762013-01-08 Yufeng Zhang <yufeng.zhang@arm.com>
1577
1578 * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
1579 (elfcore_write_aarch_hw_break): Likewise.
1580 (elfcore_write_aarch_hw_watch): Likewise.
1581 * elf.c (elfcore_grok_aarch_tls): New function.
1582 (elfcore_grok_aarch_hw_break): Likewise.
1583 (elfcore_grok_aarch_hw_watch): Likewise.
1584 (elfcore_grok_note): Call the new functions to handle the
1585 corresponding notes.
1586 (elfcore_write_aarch_tls): New function.
1587 (elfcore_write_aarch_hw_break): Likewise.
1588 (elfcore_write_aarch_hw_watch): Likewise.
1589 (elfcore_write_register_note): Call the new functions to handle the
1590 corresponding pseudo sections.
1591
45a466b5
TT
15922013-01-07 Tom Tromey <tromey@redhat.com>
1593
1594 * section.c (_bfd_std_section): Rename from std_section.
f75e0e33
AM
1595 (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
1596 (STD_SECTION): Update.
45a466b5
TT
1597 * bfd-in2.h: Rebuild.
1598
e407c74b
NC
15992013-01-04 Juergen Urban <JuergenUrban@gmx.de>
1600
1601 * archures.c (bfd_mach_mips5900): Define.
1602 * bfd-in2.h: Regenerate.
1603 * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
1604 * cpu-mips.c: Add support for MIPS r5900.
1605 * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
1606
9b239e0e
NC
16072013-01-03 Nickolai Zeldovich <nickolai@csail.mit.edu>
1608 Nick Clifton <nickc@redhat.com>
1609
1610 * elflink.c (get_value): Prevent the use of an undefined shift
1611 operation. Add sanity checks.
1612
bab4becb 16132013-01-02 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
884f2a8d 1614
bab4becb 1615 * config.bfd (cr16*-*-uclinux*): New target support.
884f2a8d 1616
9911c0fc 1617
bab4becb 1618For older changes see ChangeLog-2012
56882138 1619\f
bab4becb 1620Copyright (C) 2013 Free Software Foundation, Inc.
752937aa
NC
1621
1622Copying and distribution of this file, with or without modification,
1623are permitted in any medium without royalty provided the copyright
1624notice and this notice are preserved.
1625
56882138
AM
1626Local Variables:
1627mode: change-log
1628left-margin: 8
1629fill-column: 74
1630version-control: never
1631End:
This page took 0.864948 seconds and 4 git commands to generate.