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