ChangeLog revision 1.5.4.1 1 2013-12-14 Alan Modra <amodra (a] gmail.com>
2
3 * elflink.c (_bfd_elf_merge_symbol): If merging a new weak
4 symbol that will be skipped, we don't have a new definition.
5
6 2013-03-25 Tristan Gingold <gingold (a] adacore.com>
7
8 * configure.in: Bump version to 2.23.2
9 * Makefile.am (RELEASE): Set.
10 * configure, Makefile.in: Regenerate.
11
12 2013-03-04 Alan Modra <amodra (a] gmail.com>
13
14 * elf32-ppc.c (ppc_elf_relocate_section <R_PPC_PLTREL24>): Adjust
15 non-zero addends when relocatable, rather than addends >= 32768.
16 Always zero "addend" before applying relocation.
17
18 2013-02-18 Alan Modra <amodra (a] gmail.com>
19
20 PR ld/12549
21 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Delete.
22 (_bfd_elf_strtab_clear_all_refs): Declare.
23 (_bfd_elf_strtab_resize): Declare.
24 * elf-strtab.c (_bfd_elf_strtab_clear_refs): Delete.
25 (_bfd_elf_strtab_clear_all_refs): New function.
26 (_bfd_elf_strtab_resize): Likewise.
27 * elflink.c (elf_link_add_object_symbols): Use _bfd_elf_strtab_resize.
28
29 2013-02-11 Richard Sandiford <rdsandiford (a] googlemail.com>
30
31 * elfxx-mips.c (mips_elf_recreate_got): Remove free.
32 (mips_elf_resolve_final_got_entries): Remove bogus comment.
33
34 2013-02-10 Alan Modra <amodra (a] gmail.com>
35
36 PR ld/15113
37 * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
38
39 2013-02-08 Alan Modra <amodra (a] gmail.com>
40
41 PR binutils/15106
42 * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
43 * elf.c (elf_find_function): Revert last change. Use new
44 tdata field rather than static vars for cache.
45
46 2013-02-07 Roberto Agostino Vitillo <ra.vitillo (a] gmail.com>
47
48 PR binutils/15106
49 * elf.c (elf_find_function): Don't cache if symbols change.
50
51 2013-02-07 Alan Modra <amodra (a] gmail.com>
52
53 PR binutils/14873
54 * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
55 copy attributes from or to non-ELF.
56
57 2013-02-01 Alan Modra <amodra (a] gmail.com>
58
59 * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
60 clears def_regular.
61
62 2013-01-31 Alan Modra <amodra (a] gmail.com>
63 David S. Miller <davem (a] davemloft.net>
64
65 PR ld/15056
66 * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
67 references to __tls_get_addr.
68 * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise. Correct
69 vtinherit and vtentry reloc handling too.
70 * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
71
72 2013-01-31 Alan Modra <amodra (a] gmail.com>
73
74 * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
75
76 2013-01-28 Alan Modra <amodra (a] gmail.com>
77 * elf64-ppc.c: Use %T to print symbols names and remove redundant
78 "relocation" in error messages throughout file.
79 (ppc64_elf_relocate_section): Remove sibling call error message,
80 replace with "call lacks nop". Specially report errors for
81 branches to function entry points via OPD lookup and branches
82 to stubs. Remove NULL symbol handling now done by %T.
83
84 2013-01-22 Alan Modra <amodra (a] gmail.com>
85
86 Apply mainline patches
87 2013-01-15 Alan Modra <amodra (a] gmail.com>
88 * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
89 plt-thread-safe.
90
91 2013-01-14 Alan Modra <amodra (a] gmail.com>
92 PR binutils/14813
93 * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
94 (memory_bclose): Likewise. Return 0 on success.
95 * cache.c (cache_bclose): Likewise.
96 * opncls.c (opncls_bclose, bfd_close): Likewise.
97 * vms-lib.c (vms_lib_bclose): Likewise.
98 * libbfd.h: Regenerate.
99
100 2013-01-13 Alan Modra <amodra (a] gmail.com>
101 * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
102 Add ref_dynamic_nonweak.
103 * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
104 (_bfd_elf_merge_symbol): Don't call above function. Move
105 setting of ref_dynamic_nonweak and dynamic_def earlier. Don't
106 clear dynamic_def.
107 (elf_link_add_object_symbols): Delete redundant "override" test.
108 Don't set dynamic_def here.
109 (elf_link_output_extsym): Update.
110
111 2013-01-12 Alan Modra <amodra (a] gmail.com>
112 * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
113 * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
114 * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
115
116 2013-01-12 Alan Modra <amodra (a] gmail.com>
117 PR ld/12549
118 * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
119 (_bfd_elf_strtab_clear_all_refs): Define.
120 * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
121 (_bfd_elf_strtab_clear_all_refs): Delete.
122 * elflink.c (elf_link_add_object_symbols): Clear out added
123 strtab refs. Correct handling of warning common symbols.
124
125 2012-12-19 H.J. Lu <hongjiu.lu (a] intel.com>
126 * elf32-i386.c (elf_i386_relocate_section): Replace
127 bfd_elf32_swap_reloc_out with elf_append_rel.
128 (elf_i386_finish_dynamic_symbol): Likewise.
129 * elflink.c (elf_append_rel): Call swap_reloc_out instead of
130 swap_reloca_out.
131
132 2012-12-18 Alan Modra <amodra (a] gmail.com>
133 * elf.c (swap_out_syms): Set shndx to SHN_ABS when not one of
134 the special MAP_* values.
135
136 2012-12-07 Alan Modra <amodra (a] gmail.com>
137 PR ld/14926
138 * elf.c (_bfd_elf_map_sections_to_segments): Include elf header
139 size when determining phdr_in_segment.
140
141 2012-12-05 Alan Modra <amodra (a] gmail.com>
142 * elf64-ppc.c (build_plt_stub): Fix off by one error in branch
143 to glink.
144
145 2012-11-21 H.J. Lu <hongjiu.lu (a] intel.com>
146 PR binutils/14493
147 * elf.c (copy_elf_program_header): When rewriting program
148 header, set the output maxpagesize to the maximum alignment
149 of input PT_LOAD segments.
150
151 2012-11-13 Joe Seymour <jseymour (a] codesourcery.com>
152 * elf.c (rewrite_elf_program_header): Allocate elf_segment_map
153 with bfd_zalloc, instead of bfd_alloc.
154
155 2012-11-06 H.J. Lu <hongjiu.lu (a] intel.com>
156 PR binutils/14813
157 * bfdio.c (bfd_iovec): Change return type of bclose to
158 bfd_boolean.
159 (memory_bclose): Change return type to bfd_boolean.
160 * cache.c (cache_bclose): Likewise.
161 * opncls.c (opncls_bclose): Likewise. Return TRUE on success.
162 * vms-lib.c (vms_lib_bclose): Likewise. Return TRUE.
163 * libbfd.h: Regenerated.
164
165 2012-11-06 Alan Modra <amodra (a] gmail.com>
166 PR binutils/14567
167 * opncls.c (opncls_iovec): Forward declare.
168 (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream
169 to new bfd.
170
171 2012-11-06 Alan Modra <amodra (a] gmail.com>
172 * elf64-ppc.c (maybe_strip_output): Heed SEC_KEEP.
173
174 2012-11-05 Alan Modra <amodra (a] gmail.com>
175 * elf64-ppc.c (ppc64_elf_edit_toc): Clear "repeat" inside
176 loop. Really mark toc entry referring to another toc entry
177 only if the first is used.
178
179 2012-10-29 Alan Modra <amodra (a] gmail.com>
180 * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask in
181 R_PPC_VLE_LO16A, R_PPC_VLE_HI16A, R_PPC_VLE_HA16A,
182 R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_HI16A,
183 R_PPC_VLE_SDAREL_HA16A reloc howtos.
184
185 2012-10-26 Alan Modra <amodra (a] gmail.com>
186 PR gas/14758
187 * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS
188 bfd_reloc values. Map to corresponding D-form relocs.
189 (is_insn_ds_form, is_insn_qs_form): New functions.
190 (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form
191 fields using D-form reloc.
192
193 2012-10-21 Hans-Peter Nilsson <hp (a] bitrange.com>
194 * linker.c (_bfd_generic_link_output_symbols): Handle a
195 no-longer-global symbol entered as a BFD_PLUGIN.
196
197 2012-10-08 Alan Modra <amodra (a] gmail.com>
198 PR binutils/14662
199 * elf.c (_bfd_elf_make_section_from_shdr): Treat .gdb_index as
200 SEC_DEBUGGING.
201
202 2012-09-04 H.J. Lu <hongjiu.lu (a] intel.com>
203 PR binutils/14493
204 * elf.c (ignore_section_sym): Also ignore section symbols without
205 a BFD section.
206
207 2012-12-21 H.J. Lu <hongjiu.lu (a] intel.com>
208
209 * elf64-x86-64.c (elf_x86_64_relocate_section): Check
210 R_X86_64_standard instead of R_X86_64_max for unrecognized
211 relocation.
212
213 2012-12-21 H.J. Lu <hongjiu.lu (a] intel.com>
214
215 PR ld/14980
216 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly
217 adjust h->plt.refcount.
218 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
219
220 2012-12-20 H.J. Lu <hongjiu.lu (a] intel.com>
221
222 PR ld/14968
223 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check
224 local IFUNC references.
225 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
226
227 2012-12-20 H.J. Lu <hongjiu.lu (a] intel.com>
228
229 PR ld/14956
230 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local
231 IFUNC calls.
232 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
233
234 2012-12-17 Roland McGrath <mcgrathr (a] google.com>
235 Alan Modra <amodra (a] gmail.com>
236
237 * elf32-arm.c (elf32_arm_size_stubs): Skip input BFDs that are
238 not ARM ELF.
239
240 2012-12-09 H.J. Lu <hongjiu.lu (a] intel.com>
241
242 PR binutils/14933
243 * archive.c (bsd_write_armap): Properly check indicies bigger than
244 4Gb.
245
246 2012-11-29 Roland McGrath <mcgrathr (a] google.com>
247
248 * elf-nacl.c (segment_eligible_for_headers): Disallow writable segments.
249
250 2012-11-26 Roland McGrath <mcgrathr (a] google.com>
251
252 * elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null.
253
254 2012-11-21 Roland McGrath <mcgrathr (a] google.com>
255
256 * elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ...
257 (segment_eligible_for_headers): ... this. Take new arguments
258 MAXPAGESIZE and SIZEOF_HEADERS. Return false if the first section's
259 start address doesn't leave space for the headers.
260 (nacl_modify_segment_map): Update caller.
261
262 2012-11-19 Joey Ye <joey.ye (a] arm.com>
263
264 * elf32-arm.c (elf32_arm_final_link_relocate,
265 case R_ARM_THM_ALU_PREL_11_0, case R_ARM_THM_PC12): Align address of
266 the place being relocated.
267 (elf32_arm_final_link_relocate, case R_ARM_THM_PC8): Align address
268 of the place being relocated and truncate addend.
269 (Pa): New macro.
270
271 2012-11-14 Roland McGrath <mcgrathr (a] google.com>
272
273 * elf32-arm.c (elf32_arm_nacl_plt0_entry): Use bic rather than bfc
274 instruction for data sandboxing.
275
276 2012-11-13 Tristan Gingold <gingold (a] adacore.com>
277
278 * Makefile.am (RELEASE): Unset.
279 * Makefile.in: Regenerate.
280
281 2012-11-13 Tristan Gingold <gingold (a] adacore.com>
282
283 * configure.in: Bump version to 2.23.1
284 * Makefile.am (RELEASE): Set.
285 * configure, Makefile.in: Regenerate.
286
287 2012-11-05 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
288
289 PR target/14788
290 * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for
291 local ifunc symbols.
292 * elf64-s390.c (elf_s390_relocate_section): Likewise.
293
294 2012-11-05 Alan Modra <amodra (a] gmail.com>
295
296 * configure.in: Apply 2012-09-10 change to config.in here.
297
298 2012-10-29 Sean Keys <skeys (a] ipdatasys.com>
299
300 * elf32-xgate.c(elf_xgate_howto_table): Fix src and dest mask for
301 R_XGATE_16
302
303 2012-10-22 Tristan Gingold <gingold (a] adacore.com>
304
305 * configure.in: Bump version to 2.23.0
306 * Makefile.am (RELEASE): Unset.
307 * configure, Makefile.in: Regenerate.
308
309 2012-10-22 Tristan Gingold <gingold (a] adacore.com>
310
311 * configure.in: Bump version to 2.23
312 * Makefile.am (RELEASE): Set.
313 * configure, Makefile.in: Regenerate.
314
315 2012-10-16 Sofiane Naci <sofiane.naci (a] arm.com>
316
317 * elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for
318 R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, R_AARCH64_TLSLE_MOVW_TPREL_G2,
319 R_AARCH64_TLSLE_MOVW_TPREL_G1, R_AARCH64_TLSLE_MOVW_TPREL_G1_NC,
320 R_AARCH64_TLSLE_ADD_TPREL_HI12.
321 (elf64_aarch64_tlsdesc_howto_table): Fix shift value for
322 R_AARCH64_TLSDESC_LD64_PREL19 and R_AARCH64_TLSDESC_OFF_G1.
323 (elf64_aarch64_final_link_relocate): Add signed_addend when resolving
324 AARCH64_TLSLE_*_TPREL_* relocations.
325
326 2012-09-20 Walter Lee <walt (a] tilera.com>
327
328 * elf32-tilepro.c (tilepro_elf_relocate_section): Adjust got
329 relocations with value of hgot.
330 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
331
332 2012-09-18 H.J. Lu <hongjiu.lu (a] intel.com>
333
334 PR ld/14591
335 * elf-bfd.h (_bfd_elf_merge_symbol): Add an argument to return
336 if the old symbol is weak.
337
338 * elf32-sh-symbian.c (sh_symbian_relocate_section): Update
339 _bfd_elf_merge_symbol call.
340
341 * elflink.c (_bfd_elf_merge_symbol): Add an argument to return
342 if the old symbol is weak.
343 (_bfd_elf_add_default_symbol): Update _bfd_elf_merge_symbol
344 call.
345 (elf_link_add_object_symbols): Don't update symbol type from a
346 weak definition. Update symbol type from a common symbol when
347 overriding a weak symbol.
348
349 2012-09-17 Walter Lee <walt (a] tilera.com>
350
351 * elf32-tilepro.c (tilepro_elf_relocate_section): Remove unused
352 got_base variable.
353 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
354
355 2012-09-17 Walter Lee <walt (a] tilera.com>
356
357 * elf32-tilepro.c (tilepro_elf_relocate_section): Fix computation
358 of got relocations for when .got.plt section is merged with .got.
359 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
360
361 2012-09-13 Doug Kwan <dougkwan (a] google.com>
362
363 * elf64-ppc.c (ppc64_elf_relocate_section): Use pre-adjusted
364 relocation for stub lookup.
365
366 2012-09-10 Matthias Klose <doko (a] ubuntu.com>
367
368 * config.in: Disable sanity check for kfreebsd.
369
370 2012-09-07 Alan Modra <amodra (a] gmail.com>
371
372 PR ld/14464
373 * elf64-ppc.c (ppc64_elf_relocate_section): Map symbols defined
374 by a linker script in .opd to corresponding input .opd section.
375
376 2012-08-09 Maciej W. Rozycki <macro (a] codesourcery.com>
377
378 * elfxx-mips.c (LA25_LUI_MICROMIPS_1, LA25_LUI_MICROMIPS_2):
379 Remove macros, folding them into...
380 (LA25_LUI_MICROMIPS): ... this new macro.
381 (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise into...
382 (LA25_J_MICROMIPS): ... this new macro.
383 (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise
384 into...
385 (LA25_ADDIU_MICROMIPS): ... this new macro.
386 (bfd_put_micromips_32, bfd_get_micromips_32): New functions.
387 (mips_elf_create_la25_stub): Use them.
388 (check_br32_dslot, check_br32, check_relocated_bzc): Likewise.
389 (_bfd_mips_elf_relax_section): Likewise.
390
391 * elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is
392 not minus one.
393 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
394
395 2012-08-28 Maciej W. Rozycki <macro (a] codesourcery.com>
396
397 * elflink.c (_bfd_elf_merge_symbol): Also override the version
398 a dynamic symbol defaulted to if preempted with a hidden or
399 internal definition.
400
401 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Look up
402 the options section in the output rather than input BFD to
403 decide if to add a DT_MIPS_OPTIONS tag.
404
405 2012-08-13 Maciej W. Rozycki <macro (a] codesourcery.com>
406
407 * config.bfd: Wrap mips*el-*-linux* and mips*-*-linux* into
408 #ifdef BFD64.
409
410 2012-08-13 Maciej W. Rozycki <macro (a] codesourcery.com>
411
412 * elfxx-mips.c (mips_elf_calculate_relocation): Fix the handling
413 of protected symbols.
414
415 2012-08-06 Maciej W. Rozycki <macro (a] codesourcery.com>
416
417 * elflink.c (bfd_elf_record_link_assignment): Remove --defsym
418 symbols special case.
419
420 * elf64-mips.c (mips16_elf64_howto_table_rela): Correct src_mask
421 field initializers throughout.
422 * elfn32-mips.c (elf_mips16_howto_table_rela): Likewise.
423
424 2012-08-03 Maciej W. Rozycki <macro (a] codesourcery.com>
425
426 * elfxx-mips.c (mips_elf_perform_relocation): Update the
427 cross-mode jump message.
428
429 2012-09-04 Sergey A. Guriev <sergey.a.guriev (a] intel.com>
430
431 * cpu-ia64-opc.c (ins_cnt6a): New function.
432 (ext_cnt6a): Ditto.
433 (ins_strd5b): Ditto.
434 (ext_strd5b): Ditto.
435 (elf64_ia64_operands): Add new operand types.
436
437 2012-08-05 Maciej W. Rozycki <macro (a] linux-mips.org>
438
439 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Don't allocate
440 PLT slots for local symbols.
441
442 2012-08-28 Matthew Gretton-Dann <matthew.gretton-dann (a] arm.com>
443
444 Apply from mainline
445 2012-08-24 Matthew Gretton-Dann <matthew.gretton-dann (a] arm.com>
446 * elf32-arm.c (v8): New array.
447 (tag_cpu_arch_combine): Add support for ARMv8 attributes.
448 (elf32_arm_merge_eabi_attributes): Likewise.
449 (VFP_VERSION_COUNT): New define.
450
451 2012-08-17 Nick Clifton <nickc (a] redhat.com>
452
453 * po/vi.po: Updated Vietnamese translation.
454
455 2012-08-16 Ian Bolton <ian.bolton (a] arm.com>
456 Laurent Desnogues <laurent.desnogues (a] arm.com>
457 Jim MacArthur <jim.macarthur (a] arm.com>
458 Marcus Shawcroft <marcus.shawcroft (a] arm.com>
459 Nigel Stephens <nigel.stephens (a] arm.com>
460 Ramana Radhakrishnan <ramana.radhakrishnan (a] arm.com>
461 Richard Earnshaw <rearnsha (a] arm.com>
462 Sofiane Naci <sofiane.naci (a] arm.com>
463 Tejas Belagod <tejas.belagod (a] arm.com>
464 Yufeng Zhang <yufeng.zhang (a] arm.com>
465
466 * Makefile.am: Add AArch64 files.
467 * Makefile.in: Regenerate.
468 * archures.c (bfd_aarch64_arch): New declaration.
469 (bfd_archures_list): Use bfd_archures_list.
470 * bfd-in.h (bfd_elf64_aarch64_init_maps): New declaration.
471 (bfd_aarch64_process_before_allocation): New declaration.
472 (bfd_elf64_aarch64_process_before_allocation): New declaration.
473 (bfd_elf64_aarch64_set_options): New declaration.
474 (bfd_elf64_aarch64_add_glue_sections_to_bfd): New declaration.
475 (BFD_AARCH64_SPECIAL_SYM_TYPE_MAP): New definition.
476 (BFD_AARCH64_SPECIAL_SYM_TYPE_TAG): New definition.
477 (BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER): New definition.
478 (BFD_AARCH64_SPECIAL_SYM_TYPE_ANY): New definition.
479 (bfd_is_aarch64_special_symbol_name): New declaration.
480 (bfd_aarch64_merge_machines): New declaration.
481 (bfd_aarch64_update_notes): New declaration.
482 (int bfd_aarch64_get_mach_from_notes): New declaration.
483 (elf64_aarch64_setup_section_lists): New declaration.
484 (elf64_aarch64_next_input_section): New declaration.
485 (elf64_aarch64_size_stubs): New declaration.
486 (elf64_aarch64_build_stubs): New declaration.
487 * config.bfd: Add AArch64.
488 * configure.in: Add AArch64.
489 * configure: Regenerate.
490 * cpu-aarch64.c: New file.
491 * elf-bfd.h: Add AArch64.
492 * bfd-in2.h: Regenerate.
493 * libbfd.h: Regenerate.
494 * elf64-aarch64.c: New file.
495 * reloc.c: Add AArch64 relocations.
496 * targets.c: Add AArch64.
497 * po/SRC-POTFILES.in: Regenerate.
498
499 2012-08-14 Nick Clifton <nickc (a] redhat.com>
500
501 * po/uk.po: Updated Ukranian translation.
502
503 2012-08-09 Nick Clifton <nickc (a] redhat.com>
504
505 * po/vi.po: Updated Vietnamese translation.
506
507 2012-08-07 Nick Clifton <nickc (a] redhat.com>
508
509 * po/uk.po: Updated Ukranian translation.
510
511 2012-07-30 Nick Clifton <nickc (a] redhat.com>
512
513 * po/bfd.pot: Updated template.
514 * po/es.po: Updated Spanish translation.
515 * po/fi.po: Updated Finnish translation.
516 * po/fr.po: Updated French translation.
517 * po/ru.po: Updated Russian translation.
518 * po/uk.po: Updated Ukranian translation.
519
520 2012-07-27 Tristan Gingold <gingold (a] adacore.com>
521
522 * configure.in: Bump version to 2.22.90
523 * configure: Regenerate.
524
525 2012-07-26 Teresa Johnson <tejohnson (a] google.com>
526
527 * bfd/dwarf2.c (find_line): Initialize discriminator_ptr
528 if it is non-NULL.
529
530 2012-07-26 Meador Inge <meadori (a] codesourcery.com>
531 Nick Clifton <nickc (a] redhat.com>
532
533 PR ld/14397
534 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Report an error
535 if a required section is missing from the linker script.
536
537 2012-07-24 Jan Waclawek <konfera (a] efton.sk>
538 PR 13899
539 * elf32-avr.c (elf32_avr_relax_delete_bytes): Call
540 _bfd_elf_link_read_relocs with keep_memory as TRUE.
541
542 2012-07-24 Teresa Johnson <tejohnson (a] google.com>
543
544 * bfd.c (bfd_find_nearest_line_discriminator): New macro.
545 * coff-rs6000.c: Init _bfd_find_nearest_line_discriminator.
546 * coff64-rs6000.c: Likewise.
547 * dwarf2.c (struct line_info): Add discriminator field.
548 (add_line_info): Fill in new discriminator field.
549 (decode_line_info): Record discriminator information instead
550 of ignoring it.
551 (lookup_address_in_line_info_table): Return discriminator field if
552 requested.
553 (comp_unit_find_nearest_line): Add discriminator argument.
554 (find_line): Likewise.
555 (_bfd_dwarf2_find_nearest_line): Likewise.
556 (_bfd_dwarf2_find_line): Likewise.
557 * elf-bfd.h (_bfd_elf_find_nearest_line_discriminator): New.
558 (_bfd_elf_find_line_discriminator): Likewise.
559 (_bfd_generic_find_nearest_line_discriminator): Likewise. Defined.
560 * elf.c (_bfd_elf_find_nearest_line): Change to a wrapper
561 that invokes _bfd_elf_find_nearest_line_discriminator with correct
562 arguments.
563 (_bfd_elf_find_nearest_line_discriminator): New.
564 (_bfd_elf_find_line): Change to a wrapper
565 that invokes _bfd_elf_find_line_discriminator with correct
566 arguments.
567 (_bfd_elf_find_line_discriminator): New.
568 * coffgen.c (coff_find_nearest_line_with_names): Handle
569 new discriminator argument.
570 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
571 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
572 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
573 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
574 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Add discriminator
575 argument.
576 (_bfd_dwarf2_find_line): Likewise.
577 (_bfd_generic_find_nearest_line_discriminator): New.
578 * libbfd.c (_bfd_generic_find_nearest_line_discriminator): New.
579 * bfd-in2.h: Regenerated.
580 * libbfd.h: Likewise.
581 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize
582 _bfd_find_nearest_line_discriminator with
583 _bfd_generic_find_nearest_line_discriminator.
584 (bfd_target): Add _bfd_find_nearest_line_discriminator.
585
586 2012-07-24 Sean Keys <skeys (a] ipdatasys.com>
587
588 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Added code
589 that enables the linker to offset addresses, when linking against
590 symbols from the XGATE processor and vice versa.
591
592 2012-07-23 Nick Clifton <nickc (a] redhat.com>
593
594 * cisco-core.c (cisco_core_file_failing_command): Make static.
595 (cisco_core_file_failing_signal): Make static.
596
597 2012-07-18 H.J. Lu <hongjiu.lu (a] intel.com>
598
599 * bfd-in2.h: Regenerated.
600
601 2012-07-18 Nicols Alejandro Di Risio <sheeva (a] tiscali.it>
602
603 PR binutils/14335
604 * section.c: Fix a typo in comments.
605
606 2012-07-13 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
607
608 * elf64-s390.c: Include elf-s390-common.c.
609 (R_390_IRELATIVE): New reloc.
610 (elf_s390_reloc_type_lookup): Support R_390_IRELATIVE.
611 (RELA_ENTRY_SIZE): New macro.
612 (elf_s390_link_hash_entry): New fields ifunc_resolver_address and
613 *ifunc_resolver_section.
614 (struct plt_entry): New struct.
615 (struct elf_s390_obj_tdata): New field local_plt.
616 (elf_s390_local_plt): New macro.
617 (struct elf_s390_link_hash_table): New field irelifunc.
618 (ELF64): New macro.
619 (link_hash_newfunc): Initialize new fields.
620 (elf_s390_check_relocs): Handle IFUNC symbols.
621 (elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC
622 symbols.
623 (allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for
624 IFUNC symbols.
625 (elf_s390_size_dynamic_sections): Handle IFUNC symbols.
626 (elf_s390_relocate_section): Likewise.
627 (elf_s390_finish_dynamic_symbol): Likewise.
628 (elf_s390_finish_dynamic_sections): Handle local IFUNC symbols.
629 (elf_s390_finish_ifunc_symbol): New function.
630 (elf_s390_gc_sweep_hook): Handle local plt entries.
631 (elf_backend_add_symbol_hook): Define.
632 * elf32-s390.c: See elf64-s390.c changes.
633 * elf-s390-common.c: New file.
634 * bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field.
635 * libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for
636 BFD_RELOC_390_IRELATIVE.
637 * reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation.
638
639 2012-07-13 Nick Clifton <nickc (a] redhat.com>
640
641 * aix386-core.c: Remove use of PTR and PARAMS macros.
642 * archive.c: Likewise.
643 * cache.c: Likewise.
644 * cisco-core.c: Likewise.
645 * coff-alpha.c: Likewise.
646 * coff-apollo.c: Likewise.
647 * coff-aux.c: Likewise.
648 * coff-h8300.c: Likewise.
649 * coff-h8500.c: Likewise.
650 * coff-i386.c: Likewise.
651 * coff-i960.c: Likewise.
652 * coff-ia64.c: Likewise.
653 * coff-m68k.c: Likewise.
654 * coff-m88k.c: Likewise.
655 * coff-mcore.c: Likewise.
656 * coff-mips.c: Likewise.
657 * coff-or32.c: Likewise.
658 * coff-ppc.c: Likewise.
659 * coff-rs6000.c: Likewise.
660 * coff-sh.c: Likewise.
661 * coff-sparc.c: Likewise.
662 * coff-stgo32.c: Likewise.
663 * coff-tic30.c: Likewise.
664 * coff-tic4x.c: Likewise.
665 * coff-tic54x.c: Likewise.
666 * coff-tic80.c: Likewise.
667 * coff-w65.c: Likewise.
668 * cofflink.c: Likewise.
669 * cpu-arc.c: Likewise.
670 * cpu-cris.c: Likewise.
671 * cpu-h8500.c: Likewise.
672 * cpu-i960.c: Likewise.
673 * cpu-msp430.c: Likewise.
674 * cpu-ns32k.c: Likewise.
675 * cpu-powerpc.c: Likewise.
676 * cpu-rs6000.c: Likewise.
677 * cpu-tic4x.c: Likewise.
678 * cpu-w65.c: Likewise.
679 * ecoff.c: Likewise.
680 * ecofflink.c: Likewise.
681 * elf-m10200.c: Likewise.
682 * elf32-bfin.c: Likewise.
683 * elf32-cris.c: Likewise.
684 * elf32-crx.c: Likewise.
685 * elf32-fr30.c: Likewise.
686 * elf32-frv.c: Likewise.
687 * elf32-h8300.c: Likewise.
688 * elf32-i960.c: Likewise.
689 * elf32-m32c.c: Likewise.
690 * elf32-m68hc11.c: Likewise.
691 * elf32-m68hc12.c: Likewise.
692 * elf32-m68hc1x.c: Likewise.
693 * elf32-m68k.c: Likewise.
694 * elf32-mcore.c: Likewise.
695 * elf32-rl78.c: Likewise.
696 * elf32-rx.c: Likewise.
697 * elf32-s390.c: Likewise.
698 * elf32-vax.c: Likewise.
699 * elf64-alpha.c: Likewise.
700 * elf64-mmix.c: Likewise.
701 * elf64-s390.c: Likewise.
702 * elf64-sparc.c: Likewise.
703 * elfnn-ia64.c: Likewise.
704 * elfxx-mips.c: Likewise.
705 * elfxx-sparc.c: Likewise.
706 * hash.c: Likewise.
707 * hp300hpux.c: Likewise.
708 * hppabsd-core.c: Likewise.
709 * hpux-core.c: Likewise.
710 * i386dynix.c: Likewise.
711 * i386linux.c: Likewise.
712 * i386lynx.c: Likewise.
713 * i386mach3.c: Likewise.
714 * i386msdos.c: Likewise.
715 * i386os9k.c: Likewise.
716 * irix-core.c: Likewise.
717 * lynx-core.c: Likewise.
718 * m68klinux.c: Likewise.
719 * mach-o.h: Likewise.
720 * mipsbsd.c: Likewise.
721 * netbsd-core.c: Likewise.
722 * nlm32-i386.c: Likewise.
723 * osf-core.c: Likewise.
724 * pc532-mach.c: Likewise.
725 * pef.c: Likewise.
726 * ppcboot.c: Likewise.
727 * ptrace-core.c: Likewise.
728 * reloc16.c: Likewise.
729 * sco5-core.c: Likewise.
730 * som.h: Likewise.
731 * sparclinux.c: Likewise.
732 * sparclynx.c: Likewise.
733 * ticoff.h: Likewise.
734 * trad-core.c: Likewise.
735 * vms-lib.c: Likewise.
736 * xsym.h: Likewise.
737
738 2012-07-09 Alan Modra <amodra (a] gmail.com>
739
740 PR ld/14323
741 * elflink.c (elf_sort_symbol): Sort by size too.
742 (elf_link_add_object_symbols <weakdefs>): Simplify binary search.
743 Do not depend on ordering of symbol aliases. Match largest size.
744
745 2012-07-03 H.J. Lu <hongjiu.lu (a] intel.com>
746
747 * elf.c (assign_section_numbers): Check if number of sections
748 >= SHN_LORESERVE.
749 * elfcode.h (elf_object_p): Likewise.
750
751 2012-07-03 Nick Clifton <nickc (a] redhat.com>
752
753 * archive.c (bsd_write_armap): Catch attempts to create an archive
754 with indicies bigger than 4Gb.
755 (coff_write_armap): Likewise.
756
757 2012-07-03 H.J. Lu <hongjiu.lu (a] intel.com>
758
759 PR binutils/14319
760 * elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty
761 debug section.
762
763 2012-07-03 H.J. Lu <hongjiu.lu (a] intel.com>
764
765 PR ld/3351
766 * elflink.c (_bfd_elf_update_dynamic_flags): New.
767 (_bfd_elf_merge_symbol): Update both real and indirect symbol
768 dynamic flags.
769 (_bfd_elf_add_default_symbol): Make the real symbol dynamic if
770 the indirect symbol is defined in a shared library.
771 (elf_link_add_object_symbols): Likewise. If the indirect
772 symbol has been forced local, don't make the real symbol
773 dynamic.
774 (elf_link_check_versioned_symbol): Check indirect symbol.
775 (elf_link_output_extsym): Use real symbol definition when
776 reporting indirect symbol error. Check version info for
777 dynamic versioned symbol.
778
779 2012-07-03 Alan Modra <amodra (a] gmail.com>
780
781 PR ld/14207
782 * elf.c (assign_file_positions_for_load_sections): Remove assertions
783 that only PT_LOAD headers include file header and section headers.
784 (assign_file_positions_for_non_load_sections): Similarly don't
785 assert PT_GNU_RELRO header does not include file and section headers.
786 Compare first section vma rather than PT_LOAD p_vaddr against
787 relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace
788 abort with assertion.
789
790 2012-07-02 Alan Modra <amodra (a] gmail.com>
791
792 * elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section
793 "anyway" variant when creating .plt.
794 (m32c_elf_relax_plt_section): Remove redundant test and unused param.
795 (m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling
796 m32c_elf_relax_plt_section.
797 * elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant
798 when creating .got and .got.plt.
799 (_bfd_mips_elf_final_link): Likewise for .rtproc, and use
800 bfd_get_linker_section.
801 * sunos.c: Similarly throughout.
802
803 2012-07-01 Andreas Schwab <schwab (a] linux-m68k.org>
804
805 * elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error
806 message.
807
808 2012-06-29 H.J. Lu <hongjiu.lu (a] intel.com>
809
810 * elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE
811 on unresolvable relocation.
812
813 2012-06-29 H.J. Lu <hongjiu.lu (a] intel.com>
814
815 * archive.c (_bfd_compute_and_write_armap): Simplify global
816 symbol handling.
817
818 2012-06-29 Nick Clifton <nickc (a] redhat.com>
819
820 PR ld/14189
821 * elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount
822 for locally bound symbols.
823
824 2012-06-29 Alan Modra <amodra (a] gmail.com>
825
826 * section.c (bfd_get_linker_section): New function.
827 * elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use
828 the above throughout rather than bfd_get_section_by_name. Use
829 bfd_make_section_anyway rather than bfd_make_section when creating
830 them.
831 * elf32-bfin.c: Likewise.
832 * elf32-cr16.c: Likewise.
833 * elf32-cris.c: Likewise.
834 * elf32-frv.c: Likewise.
835 * elf32-hppa.c: Likewise.
836 * elf32-i370.c: Likewise.
837 * elf32-i386.c: Likewise.
838 * elf32-lm32.c: Likewise.
839 * elf32-m32c.c: Likewise.
840 * elf32-m32r.c: Likewise.
841 * elf32-m68k.c: Likewise.
842 * elf32-microblaze.c: Likewise.
843 * elf32-ppc.c: Likewise.
844 * elf32-rl78.c: Likewise.
845 * elf32-s390.c: Likewise.
846 * elf32-score.c: Likewise.
847 * elf32-score7.c: Likewise.
848 * elf32-sh.c: Likewise.
849 * elf32-tic6x.c: Likewise.
850 * elf32-tilepro.c: Likewise.
851 * elf32-vax.c: Likewise.
852 * elf32-xstormy16.c: Likewise.
853 * elf32-xtensa.c: Likewise.
854 * elf64-alpha.c: Likewise.
855 * elf64-hppa.c: Likewise.
856 * elf64-ia64-vms.c: Likewise.
857 * elf64-ppc.c: Likewise.
858 * elf64-s390.c: Likewise.
859 * elf64-sh64.c: Likewise.
860 * elf64-sparc.c: Likewise.
861 * elf64-x86-64.c: Likewise.
862 * elfnn-ia64.c: Likewise.
863 * elfxx-mips.c: Likewise.
864 * elfxx-sparc.c: Likewise.
865 * elfxx-tilegx.c: Likewise.
866 * elflink.c: Likewise.
867 * elf-vxworks.c: Likewise.
868 * elf-m10300.c: Likewise. Also make use of htab plt, got and
869 gotplt shortcuts.
870 * bfd-in2.h: Regenerate.
871 * elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when
872 calling create_rofixup_section.
873 * elflink.c (bfd_elf_final_link): Simplify test for .dynstr.
874
875 2012-06-29 Alan Modra <amodra (a] gmail.com>
876
877 * elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela
878 section for bss type sections, except for .rela.bss.
879 * elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
880 * elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise.
881 * elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise.
882 * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise.
883 * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise.
884
885 2012-06-28 Roland McGrath <mcgrathr (a] google.com>
886
887 * elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for
888 displacement calculation in nacl_p case.
889
890 2012-06-28 Nick Clifton <nickc (a] redhat.com>
891
892 * po/uk.po: New Ukranian translation.
893 * configure.in (ALL_LINGUAS): Add uk.
894 * configure: Regenerate.
895
896 2012-06-26 Alan Modra <amodra (a] gmail.com>
897
898 * elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input
899 file has multiple .got/.toc sections and all don't fit in
900 current toc group.
901
902 2012-06-22 Roland McGrath <mcgrathr (a] google.com>
903
904 * elf.c (assign_file_positions_for_non_load_sections): Define
905 __ehdr_start symbol if it's referenced and there's a PT_LOAD
906 segment that covers both the file and program headers.
907
908 2012-06-22 Andreas Schwab <schwab (a] linux-m68k.org>
909
910 * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make
911 _GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute.
912
913 2012-06-22 Alan Modra <amodra (a] gmail.com>
914
915 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line
916 save/restore functions when relocatable. Make "funcs" static.
917
918 2012-06-18 Hans-Peter Nilsson <hp (a] axis.com>
919
920 * elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence
921 of merged .got and .got.plt entries.
922
923 2012-06-18 John Szakmeister <john (a] szakmeister.net>
924
925 * elf32-arm.c (elf32_arm_final_link_relocate): Correct return value.
926
927 2012-06-17 Hans-Peter Nilsson <hp (a] axis.com>
928
929 * elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE>
930 <R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to
931 thread common symbols.
932
933 2012-06-13 Nick Clifton <nickc (a] redhat.com>
934
935 * elf32-arm.c (bfd_arm_get_mach_from_attributes): New function.
936 (elf32_arm_object_p): If the machine number could not be deduced
937 from the notes, call bfd_arm_get_mach_from_attributes to get the
938 number from the attributes.
939
940 2012-06-12 H.J. Lu <hongjiu.lu (a] intel.com>
941
942 PR bfd/14207
943 * elf.c (assign_file_positions_for_non_load_sections): Abort if
944 PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
945
946 2012-06-12 Alan Modra <amodra (a] gmail.com>
947
948 PR ld/14207
949 * elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type
950 sections at end of PT_LOAD segment when searching for segment
951 that contains end of relro extent.
952
953 2012-06-11 H.J. Lu <hongjiu.lu (a] intel.com>
954
955 * elf.c (assign_file_positions_for_non_load_sections): Reindent.
956
957 2012-06-11 H.J. Lu <hongjiu.lu (a] intel.com>
958
959 * elf.c (_bfd_elf_map_sections_to_segments): Reindent.
960
961 2012-06-06 Alan Modra <amodra (a] gmail.com>
962
963 * elflink.c (elf_link_input_bfd): Provide a file symbol for
964 each input file with local syms, if the input lacks such.
965 (bfd_elf_final_link): Add a file symbol to mark end of locals
966 for which we can associate with input files.
967 (struct elf_final_link_info): Add filesym_count field.
968 (struct elf_outext_info): Add need_second_pass and second_pass.
969 (elf_link_output_extsym): Detect symbols defined in the output
970 file, emit them on second pass over locals.
971
972 2012-06-04 Jan Kratochvil <jan.kratochvil (a] redhat.com>
973
974 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
975 of target_read_memory as bfd_size_type.
976 * bfd-in2.h: Regenerate.
977 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
978 argument of target_read_memory as bfd_size_type.
979 (_bfd_elf32_bfd_from_remote_memory): Likewise.
980 (_bfd_elf64_bfd_from_remote_memory): Likewise.
981 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
982 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
983
984 2012-06-03 Alan Modra <amodra (a] gmail.com>
985
986 PR binutils/13897
987 * elf.c (elf_find_function): Cache last function sym info.
988 (_bfd_elf_maybe_function_sym): Return function size, pass in
989 section of interest.
990 * elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise.
991 (_bfd_elf_maybe_function_sym): Likewise.
992 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
993 (opd_entry_value): Add in_code_sec param. Revert caching code.
994 Return -1 if in_code_sec and function found in wrong section.
995 Update all calls.
996
997 2012-06-01 Siddhesh Poyarekar <siddhesh (a] redhat.com>
998
999 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
1000 of target_read_memory as size_t.
1001 * bfd-in2.h: Regenerate.
1002 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
1003 argument of target_read_memory as size_t.
1004 (_bfd_elf32_bfd_from_remote_memory): Likewise.
1005 (_bfd_elf64_bfd_from_remote_memory): Likewise.
1006 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
1007 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
1008
1009 2012-06-01 Alan Modra <amodra (a] gmail.com>
1010
1011 PR binutils/13897
1012 * elf64-ppc.c (opd_entry_value): Rewrite cache code.
1013
1014 2012-05-29 Tom Tromey <tromey (a] redhat.com>
1015
1016 * opncls.c (bfd_fopen): Always close fd on failure.
1017 (bfd_fdopenr): Likewise.
1018
1019 2012-05-27 Alan Modra <amodra (a] gmail.com>
1020
1021 PR ld/14170
1022 * elflink.c (_bfd_elf_merge_symbol): When a symbol defined in
1023 a dynamic library finds a new instance with non-default
1024 visibility in a regular object, correctly handle symbols
1025 already on the undefs list and undo dynamic symbol state when
1026 the new symbol is hidden or internal.
1027
1028 2012-05-25 H.J. Lu <hongjiu.lu (a] intel.com>
1029
1030 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't use
1031 dynamic_sec_flags to create PLT .eh_frame section.
1032 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1033
1034 2012-05-25 Alan Modra <amodra (a] gmail.com>
1035
1036 PR ld/13909
1037 * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
1038 (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
1039 * elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
1040 * elflink.c (bfd_elf_size_dynamic_sections): Let the backend
1041 size dynamic sections before stripping eh_frame_hdr.
1042 (bfd_elf_gc_sections): Handle multiple .eh_frame sections.
1043 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
1044 if no other .eh_frame sections exist.
1045 * elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
1046 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
1047 or alloc plt_eh_frame here..
1048 (elf_i386_size_dynamic_sections): ..do it here instead. Don't
1049 specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
1050 (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
1051 before writing plt offset.
1052 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
1053 or alloc plt_eh_frame here..
1054 (elf_x86_64_size_dynamic_sections): ..do it here instead.
1055 (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
1056 before writing plt offset.
1057
1058 2012-05-24 Alan Modra <amodra (a] gmail.com>
1059
1060 PR ld/14158
1061 * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
1062 size to output section alignment.
1063 (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
1064
1065 2012-05-23 Alan Modra <amodra (a] gmail.com>
1066
1067 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
1068 BFDs with multiple .eh_frame sections.
1069
1070 2012-05-23 Alan Modra <amodra (a] gmail.com>
1071
1072 PR ld/13909
1073 * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
1074
1075 2012-05-22 H.J. Lu <hongjiu.lu (a] intel.com>
1076
1077 PR ld/13909
1078 * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
1079 last change.
1080 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1081
1082 2012-05-22 Alan Modra <amodra (a] gmail.com>
1083
1084 * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
1085 first one is zero size or discarded.
1086 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
1087 glink_eh_frame contents here..
1088 (ppc_elf_finish_dynamic_sections): ..rather than here. Just set
1089 offset to .glink.
1090
1091 2012-05-22 H.J. Lu <hongjiu.lu (a] intel.com>
1092
1093 PR ld/13909
1094 * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
1095 eh_frame section if there is an input .eh_frame section.
1096 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1097
1098 2012-05-22 H.J. Lu <hongjiu.lu (a] intel.com>
1099
1100 PR ld/14105
1101 * elf32-i386.c (elf_i386_create_dynamic_sections): Always
1102 create PLT eh_frame section with SEC_LINKER_CREATED.
1103 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1104
1105 2012-05-22 Alan Modra <amodra (a] gmail.com>
1106
1107 * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
1108 sections attached to a BFD.
1109 * section.c (bfd_get_section_by_name): Rewrite description.
1110 (bfd_get_next_section_by_name): New function.
1111 * bfd-in2.h: Regenerate.
1112
1113 2012-05-21 Andreas Schwab <schwab (a] linux-m68k.org>
1114
1115 * elf32-m68k.c (elf_m68k_grok_prstatus): New function.
1116 (elf_m68k_grok_psinfo): New function.
1117 (elf_backend_grok_prstatus): Define.
1118 (elf_backend_grok_psinfo): Define.
1119
1120 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org>
1121
1122 * elf64-mips.c (elf_backend_got_header_size): Correct definition.
1123 * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF
1124 backend's GOT header size instead of hardcoding it.
1125
1126 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org>
1127
1128 * elf32-vax.c (elf_vax_relocate_section)
1129 <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again.
1130
1131 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org>
1132
1133 * elf32-vax.c (elf_vax_relocate_section)
1134 <R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than
1135 its name as the check for text sections.
1136
1137 2012-05-19 Maciej W. Rozycki <macro (a] linux-mips.org>
1138
1139 * elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure
1140 the third reloc offset is the same as the first.
1141
1142 2012-05-19 Alan Modra <amodra (a] gmail.com>
1143
1144 * elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete.
1145 (has_tls_reloc, has_tls_get_addr_call): Move back to..
1146 * elf32-ppc.c: ..here.
1147 (ppc_elf_section_flags, elf_backend_section_flags): Delete.
1148 (ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections.
1149
1150 2012-05-18 H.J. Lu <hongjiu.lu (a] intel.com>
1151
1152 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make
1153 _DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute.
1154 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
1155
1156 2012-05-18 Roland McGrath <mcgrathr (a] google.com>
1157
1158 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as
1159 not to clobber the ar_fmag field stored in ARED->arch_header.
1160
1161 2012-05-18 Pedro Alves <palves (a] redhat.com>
1162
1163 * mach-o.h: Don't include sysdep.h.
1164
1165 2012-05-18 Nick Clifton <nickc (a] redhat.com>
1166
1167 PR 14072
1168 * bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before
1169 complaining about config.h not having been included.
1170 * bfd-in2.h: Regenerate.
1171
1172 2012-05-18 Andreas Schwab <schwab (a] linux-m68k.org>
1173
1174 * aclocal.m4: Regenerate.
1175 * Makefile.in: Regenerate.
1176
1177 2012-05-17 Daniel Richard G. <skunk (a] iskunk.org>
1178 Nick Clifton <nickc (a] redhat.com>
1179
1180 PR 14072
1181 * configure.in: Add check that sysdep.h has been included before
1182 any system header files.
1183 * configure: Regenerate.
1184 * config.in: Regenerate.
1185 * aclocal.m4: Regenerate.
1186 * bfd-in.h: Generate an error if included before config.h.
1187 * sysdep.h: Likewise.
1188 * bfd-in2.h: Regenerate.
1189 * compress.c: Remove #include "config.h".
1190 * plugin.c: Likewise.
1191 * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h.
1192 * elf64-hppa.c: Likewise.
1193 * som.c: Likewise.
1194 * xsymc.c: Likewise.
1195
1196 2012-05-17 Maciej W. Rozycki <macro (a] linux-mips.org>
1197 Alan Modra <amodra (a] gmail.com>
1198
1199 * elf.c (ignore_section_sym): Correct comment. Don't return
1200 true for absolute section.
1201 (elf_map_symbols): Move stray comment. Adjust for above change.
1202 Don't discard global section symbols.
1203
1204 2012-05-17 Alan Modra <amodra (a] gmail.com>
1205
1206 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC,
1207 _GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute.
1208 * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC
1209 absolute.
1210
1211 2012-05-17 Alan Modra <amodra (a] gmail.com>
1212
1213 * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns,
1214 is_ppc_vle): Move to..
1215 * elf32-ppc.h: ..here, making is_ppc_vle a macro.
1216
1217 2012-05-16 Sergio Durigan Junior <sergiodj (a] redhat.com>
1218
1219 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
1220 bfd_get_section_lma, bfd_get_section_alignment,
1221 bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
1222 in order to use the `bfd' argument.
1223 * bfd-in2.h: Regenerate.
1224 * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
1225 as the first argument for `bfd_get_section_alignment'.
1226 * elf32-arm.c (create_ifunc_sections): Likewise, for
1227 `bfd_set_section_alignment'.
1228 * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
1229 `bfd_get_section_name'.
1230 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1231 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1232 (ppc_elf_relocate_section): Likewise.
1233 * elf64-mmix.c (mmix_final_link_relocate): Likewise, for
1234 `bfd_get_section_vma'.
1235 * elf64-ppc.c (create_linkage_sections): Likewise, for
1236 `bfd_set_section_alignment'.
1237
1238 2012-05-16 Georg-Johann Lay <avr (a] gjlay.de>
1239
1240 PR target/13503
1241 * reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
1242 * bfd-in2.h: Regenerate.
1243 * libbfd.h: Regenrate.
1244 * elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to
1245 R_AVR_8_HLO8.
1246 (avr_reloc_map): Likewise.
1247
1248 2012-05-16 Daniel Richard G. <skunk (a] iskunk.org>
1249
1250 PR binutils/13558
1251 * bfd/aout-cris.c: Include sysdep.h before bfd.h.
1252 * bfd/aout-ns32k.c: Likewise.
1253 * bfd/aout-sparcle.c: Likewise.
1254 * bfd/aout0.c: Likewise.
1255 * bfd/bfd-in2.h: Likewise.
1256 * bfd/coff-stgo32.c: Likewise.
1257 * bfd/cpu-lm32.c: Likewise.
1258 * bfd/cpu-microblaze.c: Likewise.
1259 * bfd/cpu-score.c: Likewise.
1260 * bfd/cpu-tilegx.c: Likewise.
1261 * bfd/cpu-tilepro.c: Likewise.
1262 * bfd/elf32-lm32.c: Likewise.
1263 * bfd/elf32-microblaze.c: Likewise.
1264 * bfd/elf32-score7.c: Likewise.
1265 * bfd/elf32-tilepro.c: Likewise.
1266 * bfd/elfxx-tilegx.c: Likewise.
1267 * bfd/mach-o.h: Likewise.
1268 * bfd/nlm32-ppc.c: Likewise.
1269 * bfd/ns32knetbsd.c: Likewise.
1270 * bfd/pef.h: Likewise.
1271 * bfd/plugin.c: Likewise.
1272 * bfd/stab-syms.c: Likewise.
1273 * bfd/sunos.c: Likewise.
1274 * bfd/syms.c: Likewise.
1275 * bfd/xsym.h: Likewise.
1276
1277 2012-05-16 Alan Modra <amodra (a] gmail.com>
1278
1279 * elflink.c: Rename flaginfo to flinfo throughout, except..
1280 (bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo.
1281 Formatting, style. Simplify flag match.
1282
1283 2012-05-16 Alan Modra <amodra (a] gmail.com>
1284
1285 * dwarf2.c: Formatting.
1286 (arange_add): Pass in unit rather than bfd. Update callers.
1287 Ignore empty ranges. Don't ask for cleared memory.
1288 (parse_comp_unit): Only set unit->base_address if processing
1289 DW_TAG_compile_unit.
1290 (find_debug_info): Optimise section lookup.
1291 (place_sections): Use bfd_alloc for stash->adjusted_sections.
1292 (find_line): Match previously parsed comp unit addresses as we
1293 do for newly parsed comp units.
1294
1295 2012-05-16 Alan Modra <amodra (a] gmail.com>
1296
1297 * archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf
1298 stops at end of ar_size field.
1299
1300 2012-05-16 Alan Modra <amodra (a] gmail.com>
1301
1302 PR ld/13962
1303 PR ld/7023
1304 * elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is
1305 out of range. As a special case, fix sh_info for zero sh_size.
1306 Do the same for .symtab.
1307
1308 2012-05-15 James Murray <jsm (a] jsm-net.demon.co.uk>
1309 Stephane Carrez <stcarrez (a] nerim.fr>
1310
1311 * archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg.
1312 * config.bfd: Likewise.
1313 * cpu-m9s12x.c: New.
1314 * cpu-m9s12xg.c: New.
1315 * elf32-m68hc12.c: Add S12X and XGATE co-processor support.
1316 Add option to offset S12 addresses into XGATE memory space.
1317 Fix carry bug in IMM16 (IMM8 low/high) relocate.
1318 * Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg.
1319 (ALL_MACHINES_CFILES): Likewise.
1320 * reloc.c: Add S12X relocs.
1321 * Makefile.in: Regenerate.
1322 * bfd-in2.h: Regenerate.
1323 * libbfd.h: Regenerate.
1324
1325 2012-05-14 James Lemke <jwlemke (a] codesourcery.com>
1326 Catherine Moore <clm (a] codesourcery.com>
1327
1328 * bfd.c (bfd_lookup_section_flags): Add section parm.
1329 * ecoff.c (bfd_debug_section): Remove flag_info initializer.
1330 * elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
1331 (bfd_elf_lookup_section_flags): Add section parm.
1332 * elf32-ppc.c (is_ppc_vle): New function.
1333 (ppc_elf_modify_segment_map): New function.
1334 (elf_backend_modify_segment_map): Define.
1335 (has_vle_insns): New define.
1336 * elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
1337 * elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
1338 Move in logic to omit / include a section.
1339 * libbfd-in.h (bfd_link_info): Add section parm.
1340 (bfd_generic_lookup_section_flags): Likewise.
1341 * reloc.c (bfd_generic_lookup_section_flags): Likewise.
1342 * section.c (bfd_section): Move out section_flag_info.
1343 (BFD_FAKE_SECTION): Remove flag_info initializer.
1344 * targets.c (_bfd_lookup_section_flags): Add section parm.
1345
1346 2012-05-14 Catherine Moore <clm (a] codesourcery.com>
1347
1348 * archures.c (bfd_mach_ppc_vle): New.
1349 * bfd-in2.h: Regenerated.
1350 * cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
1351 * elf32-ppc.c (split16_format_type): New enumeration.
1352 (ppc_elf_vle_split16): New function.
1353 (HOWTO): Add entries for R_PPC_VLE relocations.
1354 (ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
1355 (ppc_elf_section_flags): New function.
1356 (ppc_elf_lookup_section_flags): New function.
1357 (ppc_elf_section_processing): New function.
1358 (ppc_elf_check_relocs): Handle PPC_VLE relocations.
1359 (ppc_elf_relocation_section): Likewise.
1360 (elf_backend_lookup_section_flags_hook): Define.
1361 (elf_backend_section_flags): Define.
1362 (elf_backend_section_processing): Define.
1363 * elf32-ppc.h (ppc_elf_section_processing): Declare.
1364 * libbfd.h: Regenerated.
1365 * reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
1366 BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
1367 BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
1368 BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
1369 BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
1370 BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
1371 BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
1372 BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
1373 BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
1374
1375 2012-05-11 Georg-Johann Lay <avr (a] gjlay.de>
1376
1377 PR target/13503
1378 * reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
1379 BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
1380 * bfd-in2.h: Regenerate.
1381 * libbfd.h: Regenrate.
1382 * elf32-avr.c (elf_avr_howto_table): Add entries for
1383 R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
1384 (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
1385 R_AVR_8_HHI8.
1386
1387 2012-05-10 H.J. Lu <hongjiu.lu (a] intel.com>
1388
1389 * elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32
1390 addend overflow check.
1391
1392 2012-05-10 DJ Delorie <dj (a] redhat.com>
1393
1394 * elf32-rx.c (rx_elf_object_p): Ignore empty segments.
1395
1396 2012-05-10 H.J. Lu <hongjiu.lu (a] intel.com>
1397
1398 * elf64-x86-64.c (elf_x86_64_relocate_section): Display signed
1399 hex number in x32 addend overflow check.
1400
1401 2012-05-10 H.J. Lu <hongjiu.lu (a] intel.com>
1402
1403 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
1404 R_X86_64_RELATIVE64.
1405
1406 2012-05-09 H.J. Lu <hongjiu.lu (a] intel.com>
1407
1408 * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
1409 overflow for R_X86_64_RELATIVE64.
1410
1411 2012-05-08 Ben Cheng <bccheng (a] google.com>
1412
1413 * elf.c: Preserve the original p_align and p_flags if they are
1414 valid.
1415
1416 2012-05-07 Alan Modra <amodra (a] gmail.com>
1417
1418 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Update
1419 RELOC_AGAINST_DISCARDED_SECTION invocation.
1420
1421 2012-05-07 Hans-Peter Nilsson <hp (a] axis.com>
1422
1423 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use
1424 local variable i_ instead of assuming and using a variable i.
1425
1426 2012-05-07 Maciej W. Rozycki <macro (a] linux-mips.org>
1427
1428 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound
1429 relocations.
1430 * elfxx-mips.c (mips_reloc_against_discarded_section): New
1431 function.
1432 (_bfd_mips_elf_relocate_section): Call it, in place of
1433 RELOC_AGAINST_DISCARDED_SECTION.
1434 * elf-m10200.c (mn10200_elf_relocate_section): Update arguments
1435 to RELOC_AGAINST_DISCARDED_SECTION.
1436 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1437 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1438 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1439 * elf32-bfin.c (bfin_relocate_section): Likewise.
1440 (bfinfdpic_relocate_section): Likewise.
1441 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
1442 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1443 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1444 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1445 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1446 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
1447 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1448 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1449 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1450 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1451 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1452 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1453 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1454 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1455 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1456 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
1457 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1458 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1459 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
1460 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1461 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1462 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1463 * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
1464 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1465 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1466 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1467 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1468 * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
1469 * elf32-rx.c (rx_elf_relocate_section): Likewise.
1470 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1471 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1472 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1473 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1474 * elf32-spu.c (spu_elf_relocate_section): Likewise.
1475 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
1476 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
1477 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1478 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1479 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1480 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1481 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1482 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1483 (elf64_alpha_relocate_section): Likewise.
1484 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1485 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1486 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1487 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1488 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1489 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
1490 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
1491 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1492 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
1493
1494 2012-05-05 Alan Modra <amodra (a] gmail.com>
1495
1496 PR ld/14052
1497 PR ld/13621
1498 * linker.c (_bfd_nearby_section): Revert 2012-02-13 change.
1499
1500 2012-05-05 Alan Modra <amodra (a] gmail.com>
1501
1502 * aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section,
1503 bfd_und_section and bfd_ind_section with their _ptr variants, or
1504 use corresponding bfd_is_* macros.
1505 * aout-ns32k.c: Likewise.
1506 * aout-tic30.c: Likewise.
1507 * coff-arm.c: Likewise.
1508 * coff-tic54x.c: Likewise.
1509 * cpu-ns32k.c: Likewise.
1510 * elf-attrs.c: Likewise.
1511 * elfcode.h: Likewise.
1512 * peicode.h: Likewise.
1513 * reloc.c: Likewise.
1514 * riscix.c: Likewise.
1515 * versados.c: Likewise.
1516 * section.c: Likewise.
1517 (bfd_abs_section, bfd_ind_section, bfd_com_section,
1518 bfd_ind_section): Delete.
1519 (std_section): New array replacing above.
1520 (bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr,
1521 bfd_ind_section_ptr, STD_SECTION): Update.
1522 (BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts.
1523 * bfd-in2.h: Regenerate.
1524
1525 2012-05-03 Sean Keys <skeys (a] ipdatasys.com>
1526
1527 * cpu-xgate.c: New file. Added XGATE support.
1528 * archures.c (bfd_architecture): Add XGATE architecture.
1529 (bfd_archures_list): Add reference to XGATE architecture info.
1530 * elf-bfd.h (prep_headers): Handle bfd_arch_xgate.
1531 * reloc.c: Add various XGATE relocation enums.
1532 * targets.c (bfd_elf32_xgate_vec): Declare and add to target vector
1533 list.
1534 * Makefile.am: Add support for XGATE elf.
1535 * configure.in: Ditto.
1536 * config.bfd: Ditto.
1537 * Makefile.in: Regenerate.
1538 * configure: Ditto.
1539 * bfd-in2.h: Ditto.
1540 * libbfd.h: Ditto.
1541 Added files for XGATE relocations.
1542 * elf32-xgate.c: Created minimal relocation file.
1543 * elf32-xgate.h: Created minimal header file for elf32-xgate.
1544
1545 2012-05-03 Tristan Gingold <gingold (a] adacore.com>
1546
1547 * dwarf2.c (decode_line_info): Ignore
1548 DW_LNE_HP_source_file_correlation.
1549
1550 2012-05-01 Nick Clifton <nickc (a] redhat.com>
1551
1552 PR binutils/13121
1553 * aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with
1554 AIX system headers.
1555 * coff-ppc.c: Likewise.
1556 * cofflink.c: Likewise.
1557 * elf32-arm.c: Likewise.
1558 * elf64-sparc.c: Likewise.
1559 * elflink.c: Likewise.
1560 * pdp11.c: Likewise.
1561 * rescoff.c: Likewise.
1562
1563 2012-04-26 Mark Wielaard <mjw (a] redhat.com>
1564
1565 * dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc
1566 possibly being relative to DW_AT_low_pc.
1567 (parse_comp_unit): Likewise.
1568
1569 2012-04-26 Andreas Schwab <schwab (a] linux-m68k.org>
1570
1571 * elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references
1572 also when generating PIE.
1573 (elf_m68k_discard_copies): Mark undefined weak symbols referenced
1574 by relocations as dynamic.
1575
1576 2012-04-26 Hans-Peter Nilsson <hp (a] axis.com>
1577
1578 Provide a way for programs to recognize BFD_ASSERT calls.
1579 * bfd.c (bfd_assert_handler_type): New API type.
1580 (bfd_set_assert_handler, bfd_get_assert_handler): New API functions.
1581 (_bfd_assert_handler): New variable.
1582 (_bfd_default_assert_handler): New function.
1583 (bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler.
1584 * libbfd-in.h (_bfd_assert_handler): Declare.
1585 * libbfd.h, bfd-in2.h: Regenerate.
1586
1587 2012-04-24 Hans-Peter Nilsson <hp (a] axis.com>
1588
1589 PR ld/13990
1590 * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
1591 symbol, where PLT refcount is set to -1.
1592
1593 2012-04-24 Alan Modra <amodra (a] gmail.com>
1594
1595 PR ld/13991
1596 * elf-bfd.h (_bfd_elf_link_just_syms): Define as
1597 _bfd_generic_link_just_syms.
1598 * elflink.c (_bfd_elf_link_just_syms): Delete.
1599 * linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
1600
1601 * bfd-in.h (discarded_section): Renamed from elf_discarded_section.
1602 * section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
1603 SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
1604 SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
1605 * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
1606 * elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
1607 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c,
1608 * elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c,
1609 * elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c,
1610 * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c,
1611 * elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c,
1612 * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c,
1613 * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
1614 * elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c,
1615 * elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c,
1616 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c,
1617 * elf32-score.c, * elf32-score7.c, * elf32-sh.c,
1618 * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
1619 * elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c,
1620 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
1621 * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
1622 * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c,
1623 * elf64-x86-64.c, * elflink.c, * elfnn-ia64.c,
1624 * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c,
1625 * reloc.c: Update all references.
1626 * bfd-in2.h: Regenerate.
1627
1628 2012-04-20 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
1629
1630 * elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
1631 * elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
1632
1633 2012-04-19 Thomas Schwinge <thomas (a] codesourcery.com>
1634
1635 * elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
1636 got_type.
1637 (allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
1638 it.
1639
1640 2012-04-17 Kaz Kojima <kkojima (a] rr.iij4u.or.jp>
1641
1642 * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
1643 relocations when LE conversion happens on the IE tls symbol.
1644
1645 2012-04-17 Roland McGrath <mcgrathr (a] google.com>
1646
1647 * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
1648 so that 32-byte boundary is a proper instruction boundary.
1649
1650 2012-04-17 Tristan Gingold <gingold (a] adacore.com>
1651
1652 * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
1653 member of an object archive.<
1654
1655 2012-04-17 Tristan Gingold <gingold (a] adacore.com>
1656
1657 * vms-lib.c (MAX_EKEYLEN): Define.
1658 (MAX_KEYLEN): Fix value.
1659 (vms_write_index): Add comments and fix indentation.
1660 Adjust comparaison. Add assertions. Free kbn_blk.
1661 (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
1662 Compense MAX_KEYLEN adjustment.
1663
1664 2012-04-16 Maciej W. Rozycki <macro (a] linux-mips.org>
1665
1666 * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
1667 (_bfd_mips_elf_check_relocs): Update accordingly.
1668
1669 2012-04-13 Alan Modra <amodra (a] gmail.com>
1670
1671 PR ld/13947
1672 * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
1673 reloc sections.
1674
1675 2012-04-12 David S. Miller <davem (a] davemloft.net>
1676
1677 * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
1678 BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
1679 * libbfd.h: Regenerate.
1680 * bfd-in2.h: Likewise.
1681 * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
1682 (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
1683 R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
1684 (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
1685 (_bfd_sparc_elf_check_relocs): Likewise.
1686 (_bfd_sparc_elf_gc_sweep_hook): Likewise.
1687 (_bfd_sparc_elf_relocate_section): Likewise.
1688
1689 2012-04-12 Roland McGrath <mcgrathr (a] google.com>
1690
1691 * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
1692 New variables.
1693 (struct elf32_arm_link_hash_table): New member `nacl_p'.
1694 (elf32_arm_link_hash_table_create): Initialize it.
1695 (elf32_arm_nacl_link_hash_table_create): New function.
1696 (arm_movw_immediate, arm_movt_immediate): New functions.
1697 (elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
1698 (elf32_arm_finish_dynamic_sections): Likewise.
1699 (elf32_arm_output_plt_map_1): Likewise.
1700 (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
1701 New backend vector stanza.
1702 (elf32_arm_nacl_modify_segment_map): New function.
1703 * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
1704 * targets.c: Support bfd_elf32_{big,little}_nacl_vec.
1705 * configure.in: Likewise.
1706 (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
1707 (bfd_elf32_littlearm_nacl_vec): Likewise.
1708 (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
1709 (bfd_elf32_bigarm_symbian_vec): Likewise.
1710 (bfd_elf32_littlearm_symbian_vec): Likewise.
1711 (bfd_elf32_bigarm_vxworks_vec): Likewise.
1712 (bfd_elf32_littlearm_vxworks_vec): Likewise.
1713 * configure: Regenerated.
1714
1715 2012-04-12 Tristan Gingold <gingold (a] adacore.com>
1716
1717 * elflink.c (elf_link_output_extsym): Add a guard.
1718 (bfd_elf_final_link): Remove assertion.
1719 (bfd_elf_final_link): Add a guard.
1720 * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
1721 (elfNN_vms_section_from_shdr, elfNN_vms_object_p)
1722 (elfNN_vms_post_process_headers, elfNN_vms_section_processing)
1723 (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
1724 Remove.
1725 (elfNN-ia64-vms target): Move to ...
1726 * elf64-ia64-vms.c: New file.
1727 * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
1728 * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
1729 (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
1730 * configure: Regenerate.
1731 * Makefile.in: Regenerate.
1732
1733 2012-04-11 Nick Clifton <nickc (a] redhat.com>
1734
1735 PR binutils/13897
1736 * elf64-ppc.c (opd_entry_value): When dealing with sections
1737 without relocs, keep the last section loaded in order to avoid
1738 unnecessary reloads.
1739
1740 2012-04-09 Roland McGrath <mcgrathr (a] google.com>
1741
1742 * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs.
1743 * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs.
1744 (nacl_modify_program_headers): Likewise.
1745
1746 2012-04-03 Roland McGrath <mcgrathr (a] google.com>
1747
1748 * elf-nacl.c: New file.
1749 * elf-nacl.h: New file.
1750 * elf32-i386.c (elf_backend_modify_segment_map): Define for
1751 bfd_elf32_i386_nacl_vec.
1752 (elf_backend_modify_program_headers): Likewise.
1753 * elf64-x86-64.c (elf_backend_modify_segment_map): Define for
1754 bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
1755 (elf_backend_modify_program_headers): Likewise.
1756 * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
1757 (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
1758 * Makefile.in: Regenerated.
1759 * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
1760 (bfd_elf32_x86_64_nacl_vec): Likewise.
1761 (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
1762 (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
1763 (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
1764 (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
1765 (bfd_elf32_i386_nacl_vec): Likewise.
1766 (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
1767 (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
1768 * configure: Regenerated.
1769
1770 2012-03-31 Andreas Schwab <schwab (a] linux-m68k.org>
1771
1772 * elf32-m68k.c (elf_m68k_relocate_section): Allow
1773 R_68K_TLS_LE{8,16,32} for PIE.
1774
1775 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
1776
1777 * elf64-s390.c: Fix several comments regarding PLT entry
1778 description.
1779 * elf32-s390.c: Likewise.
1780
1781 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
1782
1783 * elf64-s390.c: Use the section pointer shortcuts in
1784 elf_link_hash_table and remove them from the target specific
1785 variant.
1786 * elf32-s390.c: Likewise.
1787
1788 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
1789
1790 * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry):
1791 New definitions.
1792 (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove.
1793 (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32.
1794 (elf_s390_finish_dynamic_sections): Likewise.
1795 * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry)
1796 (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry)
1797 (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions.
1798 (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*)
1799 (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove.
1800
1801 2012-03-30 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
1802
1803 * elf32-s390.c (struct elf_s390_dyn_relocs): Remove.
1804 Rename all occurrences in the file to elf_dyn_relocs.
1805 * elf64-s390.c: Likewise.
1806
1807 2012-03-30 Alan Modra <amodra (a] gmail.com>
1808
1809 * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic
1810 libraries.
1811
1812 2012-03-29 Alan Modra <amodra (a] gmail.com>
1813
1814 * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete.
1815 * bfd-in2.h: Regenerate.
1816
1817 2012-03-23 Alan Modra <amodra (a] gmail.com>
1818
1819 * elf.c (assign_file_positions_for_non_load_sections): Don't warn
1820 on empty alloc sections.
1821
1822 2012-03-23 Alan Modra <amodra (a] gmail.com>
1823
1824 * linker.c (_bfd_nearby_section): New function, split out from..
1825 (fix_syms): ..here.
1826 * bfd-in.h (_bfd_nearby_section): Declare.
1827 * bfd-in2.h: Regenerate.
1828 * elflink.c (elf_link_input_bfd): Don't use text_index_section or
1829 data_index_section with ld -q or ld -r output relocs against
1830 stripped output sections. Instead use _bfd_nearby_section.
1831
1832 2012-03-23 Alan Modra <amodra (a] gmail.com>
1833
1834 PR binutils/13894
1835 * elf64-ppc.c (opd_entry_value): Read full symbol table when
1836 sym hashes unavailable.
1837
1838 2012-03-21 Eliot Dresselhaus <eliot (a] sonic.net>
1839
1840 * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
1841 for non-C6X objects.
1842
1843 2012-03-20 Kai Tietz <ktietz (a] redhat.com>
1844
1845 PR ld/12742
1846 * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
1847 * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
1848 Add windows.h header include if HAVE_WINDOWS_H is defined.
1849 (dlerror): New static function if windows variant is used instead
1850 of dlfcn.h.
1851 (dlclose): Likewise.
1852 (dlopen): Likewise.
1853 (dlsym): Likewise.
1854 * configure: Regenerated.
1855 * config.in: Regenerated.
1856
1857 2012-03-20 H.J. Lu <hongjiu.lu (a] intel.com>
1858
1859 PR ld/13880
1860 * elf32-i386.c (elf_i386_relocate_section): Don't issue an error
1861 for R_386_GOTOFF relocation against protected function if
1862 SYMBOLIC_BIND is true.
1863
1864 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
1865 error for R_X86_64_GOTOFF64 relocation against protected function
1866 when building executable or SYMBOLIC_BIND is true.
1867
1868 2012-03-16 Roland McGrath <mcgrathr (a] google.com>
1869
1870 * config.bfd: Handle x86_64-*-nacl*.
1871 * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
1872 (bfd_elf32_x86_64_nacl_vec): Likewise.
1873 * targets.c: Support them.
1874 * configure.in: Likewise.
1875 * configure: Regenerated.
1876
1877 2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann (a] arm.com>
1878
1879 * elf32-arm.c (elf32_arm_attributes_accept_div): New function.
1880 (elf32_arm_attributes_forbid_div): Likewise.
1881 (elf32_arm_merge_eabi_attributes): Correct handling of
1882 Tag_DIV_use.
1883
1884 2012-03-15 Roland McGrath <mcgrathr (a] google.com>
1885
1886 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use
1887 elf_x86_64_backend_data parameters for plt_eh_frame.
1888
1889 * elf64-x86-64.c (struct elf_x86_64_backend_data): New type.
1890 (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros.
1891 (elf_x86_64_arch_bed): New variable.
1892 (elf_backend_arch_data): New macro.
1893 (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE.
1894 (elf_x86_64_allocate_dynrelocs): Likewise.
1895 (elf_x86_64_relocate_section): Likewise.
1896 (elf_x86_64_plt_sym_val): Likewise.
1897 (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data
1898 parameters for PLT details.
1899 (elf_x86_64_finish_dynamic_sections): Likewise.
1900
1901 2012-03-14 Roland McGrath <mcgrathr (a] google.com>
1902
1903 * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
1904 to the full size, padding out with nop instructions.
1905
1906 2012-03-12 Alan Modra <amodra (a] gmail.com>
1907
1908 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
1909 on zero size dynbss symbol.
1910 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
1911 * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
1912 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
1913 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
1914 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
1915 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
1916 * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
1917 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
1918 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1919 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1920 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1921 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
1922 * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
1923 * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
1924 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
1925 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1926 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1927 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
1928 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
1929 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1930 * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
1931
1932 2012-03-10 Edmar Wienskoski <edmar (a] freescale.com>
1933
1934 * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
1935 * bfd-in2.h: Regenerate.
1936 * cpu-powerpc.c (bfd_powerpc_archs): Add entries for
1937 bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
1938
1939 2012-03-09 H.J. Lu <hongjiu.lu (a] intel.com>
1940
1941 PR ld/13817
1942 * elf32-i386.c (elf_i386_relocate_section): Restore
1943 R_386_IRELATIVE.
1944
1945 * elf64-x86-64.c (elf_x86_64_relocate_section): Restore
1946 R_X86_64_IRELATIVE.
1947
1948 2012-03-08 Tristan Gingold <gingold (a] adacore.com>
1949
1950 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum
1951 keylen according to archive kind. Set nextvbn and nextrfa lhd
1952 fields. Add comments.
1953
1954 2012-03-07 Nick Clifton <nickc (a] redhat.com>
1955
1956 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
1957 field.
1958 (elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
1959 (elf_mn10300_tdata): Define.
1960 (elf_mn10300_local_got_tls_type): Define.
1961 (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
1962 R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
1963 R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
1964 R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
1965 (mn10300_reloc_map): Likewise.
1966 (elf_mn10300_tls_transition): New function.
1967 (dtpoff, tpoff, mn10300_do_tls_transition): New functions.
1968 (mn10300_elf_check_relocs): Add TLS support.
1969 (mn10300_elf_final_link_relocate): Likewise.
1970 (mn10300_elf_relocate_section): Likewise.
1971 (mn10300_elf_relax_section): Likewise.
1972 (elf32_mn10300_link_hash_newfunc): Initialise new field.
1973 (_bfd_mn10300_copy_indirect_symbol): New function.
1974 (elf32_mn10300_link_hash_table_create): Initialise new fields.
1975 (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
1976 (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
1977 (_bfd_mn10300_elf_reloc_type_class): Allocate an
1978 elf_mn10300_obj_tdata structure.
1979 (elf_backend_copy_indirect_symbol): Define.
1980 * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
1981 BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
1982 BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
1983 BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
1984 (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
1985 alongside other MN10300 relocations.
1986 * bfd-in2.h: Regenerate.
1987 * libbfd.h: Regenerate.
1988
1989 2012-03-06 Jakub Jelinek <jakub (a] redhat.com>
1990
1991 * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE
1992 set relocate to TRUE.
1993
1994 2012-03-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1995
1996 PR ld/12152
1997 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
1998 overflows for R_SPARC_UA32 in .stab sections.
1999
2000 2012-03-01 Alan Modra <amodra (a] gmail.com>
2001
2002 * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
2003
2004 2012-02-27 Alan Modra <amodra (a] gmail.com>
2005
2006 * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
2007 before calling elf specific function.
2008 (sh_elf_osec_readonly_p): Test for error return from above.
2009
2010 2012-02-27 Alan Modra <amodra (a] gmail.com>
2011
2012 * elf32-spu.c (build_stub): Fix malloc under-allocation.
2013
2014 2012-02-25 Walter Lee <walt (a] tilera.com>
2015 * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
2016 BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
2017 BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
2018 BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
2019 BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
2020 BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
2021 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
2022 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
2023 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
2024 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
2025 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
2026 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
2027 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
2028 BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
2029 BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
2030 BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
2031 BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
2032 BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
2033 BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
2034 BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
2035 BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
2036 BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
2037 BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
2038 BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
2039 BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
2040 BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
2041 Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
2042 BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
2043 BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
2044 BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
2045 BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
2046 BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
2047 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
2048 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
2049 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
2050 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
2051 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
2052 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
2053 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
2054 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
2055 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
2056 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
2057 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
2058 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
2059 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
2060 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
2061 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
2062 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
2063 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
2064 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
2065 * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
2066 relocations.
2067 (tilepro_reloc_map): Ditto.
2068 (tilepro_info_to_howto_rela): Ditto.
2069 (reloc_to_create_func): Ditto.
2070 (tilepro_tls_translate_to_le): New.
2071 (tilepro_tls_translate_to_ie): New.
2072 (tilepro_elf_tls_transition): New.
2073 (tilepro_elf_check_relocs): Handle new tls relocations.
2074 (tilepro_elf_gc_sweep_hook): Ditto.
2075 (allocate_dynrelocs): Ditto.
2076 (tilepro_elf_relocate_section): Ditto.
2077 (tilepro_replace_insn): New.
2078 (insn_mask_X1): New.
2079 (insn_mask_X0_no_dest_no_srca): New
2080 (insn_mask_X1_no_dest_no_srca): New
2081 (insn_mask_Y0_no_dest_no_srca): New
2082 (insn_mask_Y1_no_dest_no_srca): New
2083 (srca_mask_X0): New
2084 (srca_mask_X1): New
2085 (insn_tls_le_move_X1): New
2086 (insn_tls_le_move_zero_X0X1): New
2087 (insn_tls_ie_lw_X1): New
2088 (insn_tls_ie_add_X0X1): New
2089 (insn_tls_ie_add_Y0Y1): New
2090 (insn_tls_gd_add_X0X1): New
2091 (insn_tls_gd_add_Y0Y1): New
2092 * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
2093 relocations.
2094 (tilegx_reloc_map): Ditto.
2095 (tilegx_info_to_howto_rela): Ditto.
2096 (reloc_to_create_func): Ditto.
2097 (tilegx_elf_link_hash_table): New field disable_le_transition.
2098 (tilegx_tls_translate_to_le): New.
2099 (tilegx_tls_translate_to_ie): New.
2100 (tilegx_elf_tls_transition): New.
2101 (tilegx_elf_check_relocs): Handle new tls relocations.
2102 (tilegx_elf_gc_sweep_hook): Ditto.
2103 (allocate_dynrelocs): Ditto.
2104 (tilegx_elf_relocate_section): Ditto.
2105 (tilegx_copy_bits): New.
2106 (tilegx_replace_insn): New.
2107 (insn_mask_X1): New.
2108 (insn_mask_X0_no_dest_no_srca): New.
2109 (insn_mask_X1_no_dest_no_srca): New.
2110 (insn_mask_Y0_no_dest_no_srca): New.
2111 (insn_mask_Y1_no_dest_no_srca): New.
2112 (insn_mask_X0_no_operand): New.
2113 (insn_mask_X1_no_operand): New.
2114 (insn_mask_Y0_no_operand): New.
2115 (insn_mask_Y1_no_operand): New.
2116 (insn_tls_ie_ld_X1): New.
2117 (insn_tls_ie_ld4s_X1): New.
2118 (insn_tls_ie_add_X0X1): New.
2119 (insn_tls_ie_add_Y0Y1): New.
2120 (insn_tls_ie_addx_X0X1): New.
2121 (insn_tls_ie_addx_Y0Y1): New.
2122 (insn_tls_gd_add_X0X1): New.
2123 (insn_tls_gd_add_Y0Y1): New.
2124 (insn_move_X0X1): New.
2125 (insn_move_Y0Y1): New.
2126 (insn_add_X0X1): New.
2127 (insn_add_Y0Y1): New.
2128 (insn_addx_X0X1): New.
2129 (insn_addx_Y0Y1): New.
2130 * libbfd.h: Regenerate.
2131 * bfd-in2.h: Regenerate.
2132
2133 2012-02-25 Walter Lee <walt (a] tilera.com>
2134
2135 * config.bfd (tilegx-*-*): rename little endian vector; add big
2136 endian vector.
2137 (tilegxbe-*-*): New case.
2138 * configure.in (bfd_elf32_tilegx_vec): Rename...
2139 (bfd_elf32_tilegx_le_vec): ... to this.
2140 (bfd_elf32_tilegx_be_vec): New vector.
2141 (bfd_elf64_tilegx_vec): Rename...
2142 (bfd_elf64_tilegx_le_vec): ... to this.
2143 (bfd_elf64_tilegx_be_vec): New vector.
2144 * configure: Regenerate.
2145 * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
2146 (TARGET_LITTLE_NAME): Ditto.
2147 (TARGET_BIG_SYM): Define.
2148 (TARGET_BIG_NAME): Define.
2149 * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
2150 (TARGET_LITTLE_NAME): Ditto.
2151 (TARGET_BIG_SYM): Define.
2152 (TARGET_BIG_NAME): Define.
2153 * targets.c (bfd_elf32_tilegx_vec): Rename...
2154 (bfd_elf32_tilegx_le_vec): ... to this.
2155 (bfd_elf32_tilegx_be_vec): Declare.
2156 (bfd_elf64_tilegx_vec): Rename...
2157 (bfd_elf64_tilegx_le_vec): ... to this.
2158 (bfd_elf64_tilegx_be_vec): Declare.
2159 (_bfd_target_vector): Add / rename above vectors.
2160 * arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
2161 * bfd-in2.h: Regenerate.
2162 * cpu-tilegx.c (bfd_tilegx32_arch): define.
2163 (bfd_tilegx_arch): link to bfd_tilegx32_arch.
2164
2165 2012-02-24 Nick Clifton <nickc (a] redhat.com>
2166
2167 PR ld/13730
2168 * reloc.c (bfd_generic_get_relocated_section_contents): Issue an
2169 error message instead of aborting, when an outofrange reloc is
2170 encountered.
2171
2172 2012-02-23 Iain Sandoe <idsandoe (a] googlemail.com>
2173
2174 * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
2175 (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc
2176 bit-fields when target and host differ in endian-ness. When
2177 PAIRs are non-scattered find the 'symbol' from the preceding
2178 reloc. Add FIXME re. reloc symbols on section boundaries.
2179 (bfd_mach_o_swap_out_non_scattered_reloc): New.
2180 (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc.
2181
2182 2012-02-17 Iain Sandoe <idsandoe (a] googlemail.com>
2183
2184 * mach-o-i386.c (i386_howto_table): Add support for 16 bit
2185 sect-diffs.
2186 (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs.
2187 (bfd_mach_o_i386_swap_reloc_out): Likewise.
2188
2189 2012-02-17 Tristan Gingold <gingold (a] adacore.com>
2190
2191 * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF):
2192 * libbfd.h: Regenerated.
2193 * bfd-in2.h: Likewise.
2194 * mach-o-i386.c (i386_howto_table): Include local sectdiff.
2195 (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff.
2196 (bfd_mach_o_i386_swap_reloc_out): Likewise.
2197
2198 2012-02-17 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
2199
2200 * elf32-s390.c (elf_s390_relocate_section): Support basr in the
2201 GD->LE and LD->LE optimizations.
2202
2203 2012-02-16 Alan Modra <amodra (a] gmail.com>
2204
2205 PR binutils/13355
2206 * elf32-rx.c (elf32_rx_relax_section): Correct width check.
2207
2208 2012-02-13 Richard Henderson <rth (a] redhat.com>
2209
2210 PR ld/13621
2211 * linker.c (fix_syms): Force symbols outside any section into
2212 bfd_abs_section_ptr.
2213
2214 2012-02-13 Alan Modra <amodra (a] gmail.com>
2215
2216 * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
2217 * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
2218 * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
2219 * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
2220
2221 2012-02-11 Jan Kratochvil <jan.kratochvil (a] redhat.com>
2222 Nick Clifton <nickc (a] redhat.com>
2223
2224 * oasys.c (oasys_write_header): Fix compilation warning on zero-sized
2225 memset.
2226
2227 2012-02-10 Iain Sandoe <idsandoe (a] googlemail.com>
2228
2229 * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section
2230 vma additions in their logical, rather than physical order.
2231
2232 2012-02-10 Iain Sandoe <idsandoe (a] googlemail.com>
2233
2234 * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section
2235 parameters.
2236 * mach-o-x86-64.c (text_section_names_xlat): New.
2237 (mach_o_x86_64_segsec_names_xlat): New.
2238 (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat.
2239 * mach-o-i386.c (text_section_names_xlat): Correct section parameters.
2240
2241 2012-02-10 Tristan Gingold <gingold (a] adacore.com>
2242
2243 * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator
2244 to avoid infinite loop. Add comments.
2245
2246 2012-02-09 H.J. Lu <hongjiu.lu (a] intel.com>
2247
2248 PR ld/13675
2249 * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte
2250 nop instructions.
2251 (bfd_arch_i386_short_nop_fill): New.
2252 (bfd_arch_i386_long_nop_fill): Likewise.
2253 Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info
2254 initializers. Use bfd_arch_i386_long_nop_fill on 64bit
2255 bfd_arch_info initializers.
2256
2257 * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ...
2258 (bfd_arch_i386_short_nop_fill): This.
2259 Update bfd_arch_info initializers.
2260 * cpu-l1om.c: Likewise.
2261
2262 2012-02-08 Alan Modra <amodra (a] gmail.com>
2263
2264 * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too.
2265 (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear
2266 the correct h->u.weakdef.
2267
2268 2012-02-07 Alan Modra <amodra (a] gmail.com>
2269
2270 * elf.c (elf_find_function): Don't use internal_elf_sym.
2271 (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type
2272 parameter with asymbol.
2273 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
2274 * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype.
2275 (struct elf_backend_data <maybe_function_sym>): Likewise.
2276
2277 2012-02-02 Vidya Praveen (vidya.praveen (a] atmel.com)
2278
2279 PR bfd/13410
2280 * elf32-avr.c (elf32_avr_relax_section): Correct the
2281 condition that qualifies the candidates for relaxation.
2282
2283 2012-02-02 Tristan Gingold <gingold (a] adacore.com>
2284
2285 * bfdio.c (real_fopen): Remove unused vms_modes variable.
2286
2287 2012-02-02 Tristan Gingold <gingold (a] adacore.com>
2288
2289 * mach-o.c (bfd_mach_o_read_header): Silent uninitialized
2290 variable warning.
2291
2292 2012-02-02 Tristan Gingold <gingold (a] adacore.com>
2293
2294 * archive.c (bfd_slurp_armap): Fix thinko in cast.
2295
2296 2012-01-31 H.J. Lu <hongjiu.lu (a] intel.com>
2297
2298 PR ld/13616
2299 * archures.c (bfd_arch_info): Add fill.
2300 (bfd_default_arch_struct): Add bfd_arch_default_fill.
2301 (bfd_arch_default_fill): New.
2302
2303 * configure.in: Set bfd version to 2.22.52.
2304 * configure: Regenerated.
2305
2306 * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info
2307 initializer.
2308 * cpu-arc.c: Likewise.
2309 * cpu-arm.c: Likewise.
2310 * cpu-avr.c: Likewise.
2311 * cpu-bfin.c: Likewise.
2312 * cpu-cr16.c: Likewise.
2313 * cpu-cr16c.c: Likewise.
2314 * cpu-cris.c: Likewise.
2315 * cpu-crx.c: Likewise.
2316 * cpu-d10v.c: Likewise.
2317 * cpu-d30v.c: Likewise.
2318 * cpu-dlx.c: Likewise.
2319 * cpu-epiphany.c: Likewise.
2320 * cpu-fr30.c: Likewise.
2321 * cpu-frv.c: Likewise.
2322 * cpu-h8300.c: Likewise.
2323 * cpu-h8500.c: Likewise.
2324 * cpu-hppa.c: Likewise.
2325 * cpu-i370.c: Likewise.
2326 * cpu-i860.c: Likewise.
2327 * cpu-i960.c: Likewise.
2328 * cpu-ia64.c: Likewise.
2329 * cpu-ip2k.c: Likewise.
2330 * cpu-iq2000.c: Likewise.
2331 * cpu-lm32.c: Likewise.
2332 * cpu-m10200.c: Likewise.
2333 * cpu-m10300.c: Likewise.
2334 * cpu-m32c.c: Likewise.
2335 * cpu-m32r.c: Likewise.
2336 * cpu-m68hc11.c: Likewise.
2337 * cpu-m68hc12.c: Likewise.
2338 * cpu-m68k.c: Likewise.
2339 * cpu-m88k.c: Likewise.
2340 * cpu-mcore.c: Likewise.
2341 * cpu-mep.c: Likewise.
2342 * cpu-microblaze.c: Likewise.
2343 * cpu-mips.c: Likewise.
2344 * cpu-mmix.c: Likewise.
2345 * cpu-moxie.c: Likewise.
2346 * cpu-msp430.c: Likewise.
2347 * cpu-mt.c: Likewise.
2348 * cpu-ns32k.c: Likewise.
2349 * cpu-openrisc.c: Likewise.
2350 * cpu-or32.c: Likewise.
2351 * cpu-pdp11.c: Likewise.
2352 * cpu-pj.c: Likewise.
2353 * cpu-plugin.c: Likewise.
2354 * cpu-powerpc.c: Likewise.
2355 * cpu-rl78.c: Likewise.
2356 * cpu-rs6000.c: Likewise.
2357 * cpu-rx.c: Likewise.
2358 * cpu-s390.c: Likewise.
2359 * cpu-score.c: Likewise.
2360 * cpu-sh.c: Likewise.
2361 * cpu-sparc.c: Likewise.
2362 * cpu-spu.c: Likewise.
2363 * cpu-tic30.c: Likewise.
2364 * cpu-tic4x.c: Likewise.
2365 * cpu-tic54x.c: Likewise.
2366 * cpu-tic6x.c: Likewise.
2367 * cpu-tic80.c: Likewise.
2368 * cpu-tilegx.c: Likewise.
2369 * cpu-tilepro.c: Likewise.
2370 * cpu-v850.c: Likewise.
2371 * cpu-vax.c: Likewise.
2372 * cpu-w65.c: Likewise.
2373 * cpu-we32k.c: Likewise.
2374 * cpu-xc16x.c: Likewise.
2375 * cpu-xstormy16.c: Likewise.
2376 * cpu-xtensa.c: Likewise.
2377 * cpu-z80.c: Likewise.
2378 * cpu-z8k.c: Likewise.
2379
2380 * cpu-i386.c: Include "libiberty.h".
2381 (bfd_arch_i386_fill): New.
2382 Add bfd_arch_i386_fill to bfd_arch_info initializer.
2383
2384 * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer.
2385 * cpu-l1om.c: Likewise.
2386
2387 * linker.c (default_data_link_order): Call abfd->arch_info->fill
2388 if fill size is 0.
2389
2390 * bfd-in2.h: Regenerated.
2391
2392 2012-01-27 Michael Eager <eager (a] eagercon.com>
2393
2394 * elf32-microblaze.c (create_got_section):
2395 Reuse existing .rela.got section.
2396
2397 2012-01-23 Alan Modra <amodra (a] gmail.com>
2398
2399 * elf-bfd.h: Formatting.
2400 (struct elf_backend_data): Add "maybe_function_sym".
2401 (_bfd_elf_maybe_function_sym): Declare.
2402 * elfxx-target.h (elf_backend_maybe_function_sym): Define.
2403 (elfNN_bed): Init new field.
2404 * elf.c (elf_find_function): Use maybe_function_sym.
2405 (_bfd_elf_maybe_function_sym): New function.
2406 * elf64-ppc.c (elf_backend_maybe_function_sym): Define.
2407 (ppc64_elf_maybe_function_sym): New function.
2408
2409 2012-01-20 Francois Gouget <fgouget (a] codeweavers.com>
2410
2411 PR binutils/13534
2412 * archive.c (_bfd_ar_sizepad): New function. Correctly install and
2413 pad the size field in an archive header.
2414 (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
2415 function for the archive size field.
2416 (bfd_generic_openr_next_archived_file): Likewise.
2417 (do_slurp_coff_armap): Likewise.
2418 (_bfd_write_archive_contents): Likewise.
2419 (_bfd_bsd44_write_ar_hdr): Use the new function.
2420 (bfd_ar_hdr_from_filesystem): Likewise.
2421 (_bfd_write_archive_contents): Likewise.
2422 (bsd_write_armap): Likewise.
2423 (coff_write_armap): Likewise.
2424 * archive64.c (bfd_elf64_archive_write_armap): Likewise.
2425 * bfdio.c (bfd_bread): Use correct type for archive element
2426 sizes.
2427 * ar.c (open_inarch): Likewise.
2428 (extract_file): Likewise.
2429 * libbfd-in.h (struct areltdata): Use correct types for
2430 parsed_size and extra_size fields.
2431 Prototype _bfd_ar_sizepad function.
2432 * libbfd.h: Regenerate.
2433
2434 2012-01-20 Ulrich Weigand <ulrich.weigand (a] linaro.org>
2435
2436 * elf.c (elfcore_write_prpsinfo): Provide unconditionally.
2437 Return NULL if core file generation is unsupported.
2438 (elfcore_write_prstatus): Likewise.
2439 * elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
2440 (elf_backend_write_core_note): Define.
2441
2442 2012-01-19 Tristan Gingold <gingold (a] adacore.com>
2443
2444 * pef.c: Add a comment.
2445 * xsym.c: Likewise.
2446
2447 2012-01-17 Alan Modra <amodra (a] gmail.com>
2448
2449 * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
2450 trailing garbage in the note.
2451 * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
2452
2453 2012-01-16 Daniel Green <venix1 (a] gmail.com>
2454
2455 PR ld/13491
2456 * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
2457 h->root.type not h->type.
2458 * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
2459
2460 2012-01-13 Iain Sandoe <idsandoe (a] googlemail.com>
2461
2462 * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
2463 indirect symbols.
2464
2465 2012-01-13 Iain Sandoe <idsandoe (a] googlemail.com>
2466
2467 * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
2468 position from here... to (bfd_mach_o_build_seg_command): Here.
2469
2470 2012-01-12 Iain Sandoe <idsandoe (a] googlemail.com>
2471
2472 * mach-o.c (bfd_mach_o_count_indirect_symbols): New.
2473 (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
2474 * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
2475 file. (bfd_mach_o_section): Add indirect_syms field.
2476
2477 2012-01-11 Iain Sandoe <idsandoe (a] googlemail.com>
2478
2479 * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
2480 vmsize from filesize. Don't compute offsets or file sizes for
2481 zerofill sections.
2482
2483 2012-01-11 Iain Sandoe <idsandoe (a] googlemail.com>
2484
2485 * mach-o.c (bfd_mach_o_build_commands): Make the building of each
2486 command type independent.
2487
2488 2012-01-11 Alan Modra <amodra (a] gmail.com>
2489
2490 * elf64-ppc.c: Define more insns used in plt call stubs.
2491 (ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
2492 (ppc64_elf_relocate_section): Likewise.
2493 (enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
2494 (struct ppc_link_hash_table): Increase size of stub_count array.
2495 Add plt_stub_align and plt_thread_safe.
2496 (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
2497 (plt_stub_size, plt_stub_pad): New functions.
2498 (build_plt_stub): Emit barriers for power7 thread safety. Don't
2499 emit needless save of r2.
2500 (build_tls_get_addr_stub): Adjust params.
2501 (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
2502 plt stubs. Adjust build_*plt_stub calls.
2503 (ppc_size_one_stub): Similarly.
2504 (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
2505 params. Choose default for plt_thread_safe based on existence of
2506 calls to thread creation functions. Modify plt_call to
2507 plt_call_r2save when no tocsave reloc found. Align tail of stub
2508 sections.
2509 (ppc64_elf_build_stubs): Align tail of stub sections. Adjust
2510 output of stub statistics.
2511 (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
2512 * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
2513
2514 2012-01-10 H.J. Lu <hongjiu.lu (a] intel.com>
2515
2516 PR ld/13581
2517 * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
2518 check on R_X86_64_PCXX.
2519
2520 2012-01-10 Tristan Gingold <gingold (a] adacore.com>
2521
2522 * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
2523 warning.
2524
2525 2012-01-10 Tristan Gingold <gingold (a] adacore.com>
2526
2527 * bfdio.c (bfd_tell): Handle nested archives.
2528 (bfd_seek): Ditto.
2529 * cache.c (bfd_cache_lookup_worker): Ditto.
2530 * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
2531 nested archives.
2532 (bfd_generic_openr_next_archived_file): Likewise.
2533
2534 2012-01-09 Iain Sandoe <idsandoe (a] googlemail.com>
2535
2536 * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
2537 (bfd_mach_o_write_symtab): Remove handling for indirect syms.
2538 (bfd_mach_o_primary_symbol_sort_key): Likewise.
2539 (bfd_mach_o_cf_symbols): Likewise.
2540 (bfd_mach_o_sort_symbol_table): Remove.
2541 (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
2542 for indirect and dysymtab counts. Do the symbol sorting here.
2543 (bfd_mach_o_build_dysymtab_command): Count the symbol types here.
2544 Make the indirect symbols a TODO.
2545 (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
2546 (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
2547 a non-zero value.
2548 (bfd_mach_o_read_symtab_symbol): Record the symbol index.
2549 (bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
2550 * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
2551 (IS_MACHO_INDIRECT): Remove.
2552 (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
2553
2554 2012-01-06 Nick Clifton <nickc (a] redhat.com>
2555
2556 PR binutils/13121
2557 * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
2558 'flaginfo' to avoid conflicts with AIX system headers.
2559
2560 2012-01-06 Tristan Gingold <gingold (a] adacore.com>
2561
2562 * bfdio.c (bfd_bread): Use arelt_size macro.
2563
2564 2012-01-06 Tristan Gingold <gingold (a] adacore.com>
2565
2566 * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
2567
2568 2012-01-05 Nick Clifton <nickc (a] redhat.com>
2569
2570 PR ld/12161
2571 * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
2572 necessary.
2573
2574 2012-01-05 Jan Kratochvil <jan.kratochvil (a] redhat.com>
2575
2576 Fix zero registers core files when built by gcc-4.7.
2577 * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
2578 size. Call elfcore_write_note for the local variables. Remove the
2579 final elfcore_write_note call. Add NOTREACHED comments.
2580
2581 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2582
2583 * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
2584 (bfd_mach_o_generic_stat_arch_elt): Adjust.
2585
2586 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2587
2588 * mach-o.c (bfd_mach_o_fat_member_init): New function.
2589 (bfd_mach_o_openr_next_archived_file): Reindent.
2590 Adjust to call bfd_mach_o_fat_member_init.
2591 (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
2592
2593 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2594
2595 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
2596 BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
2597 BFD_RELOC_MACH_O_X86_64_PCREL32_2,
2598 BFD_RELOC_MACH_O_X86_64_PCREL32_4,
2599 BFD_RELOC_MACH_O_X86_64_BRANCH32,
2600 BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
2601 BFD_RELOC_MACH_O_X86_64_GOT.
2602
2603 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2604
2605 * mach-o.h (bfd_mach_o_fvmlib_command): New structure.
2606 (bfd_mach_o_load_command): Add fvmlib field.
2607
2608 * mach-o.c (bfd_mach_o_read_fvmlib): New function.
2609 (bfd_mach_o_read_command): Handle fvmlib.
2610
2611 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2612
2613 * mach-o.c (bfd_mach_o_convert_architecture): Reindent.
2614 Decode msubtype for ARM.
2615
2616 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2617
2618 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
2619
2620 2012-01-04 Tristan Gingold <gingold (a] adacore.com>
2621
2622 * mach-o.h: Reindent header.
2623 (bfd_mach_o_encryption_info_command): New structure.
2624 (bfd_mach_o_load_command): Add encryption_info field.
2625
2626 * mach-o.c (bfd_mach_o_read_encryption_info): New function.
2627 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
2628 (bfd_mach_o_read_command): Adjust error message.
2629
2630 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji (a] gmail.com>
2631
2632 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
2633 which reads DWARF2 and stores in stash from find_line.
2634 (find_line) Call _bfd_dwarf2_slurp_debug_info.
2635 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
2636 * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
2637 * mach-o.c (dsym_subdir): The name of subdir where debug
2638 information may be stored.
2639 (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
2640 type is UUID.
2641 (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
2642 corresponding to the executable.
2643 (bfd_mach_o_find_dsym): New. Find a debug information BFD in the
2644 specified binary file.
2645 (bfd_mach_o_follow_dsym): New. Find a debug information BFD for
2646 the original BFD.
2647 (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
2648 executables, dylibs, and bundles.
2649 (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
2650 * mach-o.h (dsym_bfd): The BFD of the dSYM file.
2651
2652 2012-01-03 Iain Sandoe <idsandoe (a] googlemail.com>
2653
2654 * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
2655 for stabd symbols.
2656 (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
2657 (bfd_mach_o_cf_symbols): Likewise.
2658
2659 2012-01-03 Iain Sandoe <idsandoe (a] googlemail.com>
2660
2661 * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
2662
2663 2012-01-03 Iain Sandoe <idsandoe (a] googlemail.com>
2664
2665 * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
2666 as the value of an indirect symbol. Keep the string table index in
2667 non-indirect syms for reference.
2668 (bfd_mach_o_write_dysymtab): New.
2669 (bfd_mach_o_primary_symbol_sort_key): New.
2670 (bfd_mach_o_cf_symbols): New.
2671 (bfd_mach_o_sort_symbol_table): New.
2672 (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
2673 If we are emitting a dysymtab, process indirect symbols and count the
2674 number of each other kind.
2675 (bfd_mach_o_mangle_sections): New.
2676 (bfd_mach_o_write_contents): Split out some pre-requisite code into
2677 the command builder. Write dysymtab if the command is present.
2678 (bfd_mach_o_count_sections_for_seg): New.
2679 (bfd_mach_o_build_seg_command): New.
2680 (bfd_mach_o_build_dysymtab_command): New.
2681 (bfd_mach_o_build_commands): Reorganize to support the fact that some
2682 commands are optional and should not be emitted if there are no
2683 sections or symbols.
2684 (bfd_mach_o_set_section_contents): Amend comment.
2685 * mach-o.h: Amend and add to comments.
2686 (mach_o_data_struct): Add fields for dysymtab symbols counts and a
2687 pointer to the indirects, when present.
2688 (bfd_mach_o_should_emit_dysymtab): New macro.
2689 (IS_MACHO_INDIRECT): Likewise.
2690
2691 For older changes see ChangeLog-2011
2692
2694 Local Variables:
2695 mode: change-log
2696 left-margin: 8
2697 fill-column: 74
2698 version-control: never
2699 End:
2700