Properly adjust h->plt.refcount
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
a5479e5f
L
12012-12-21 H.J. Lu <hongjiu.lu@intel.com>
2
3 PR ld/14980
4 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly
5 adjust h->plt.refcount.
6 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
7
59d6ffb2
L
82012-12-19 H.J. Lu <hongjiu.lu@intel.com>
9
10 * elf32-i386.c (elf_i386_relocate_section): Replace
11 bfd_elf32_swap_reloc_out with elf_append_rel.
12 (elf_i386_finish_dynamic_symbol): Likewise.
13
14 * elflink.c (elf_append_rel): Call swap_reloc_out instead of
15 swap_reloca_out.
16
13ca3149
L
172012-12-18 H.J. Lu <hongjiu.lu@intel.com>
18
19 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Reindent.
20
886e427f
ME
212012-12-18 Edgar E. Iglesias <edgar.iglesias@gmail.com>
22
23 PR ld/14736
24 * elf32-microblaze.c (calc_fixup): Add end range.
25
15bc576a
AM
262012-12-18 Alan Modra <amodra@gmail.com>
27
28 * elf.c (swap_out_syms): Set shndx to SHN_ABS when not one of
29 the special MAP_* values.
30
adbcc655
RM
312012-12-17 Roland McGrath <mcgrathr@google.com>
32 Alan Modra <amodra@gmail.com>
33
34 * elf32-arm.c (elf32_arm_size_stubs): Skip input BFDs that are
35 not ARM ELF.
36
5bf135a7
NC
372012-12-17 Nick Clifton <nickc@redhat.com>
38
39 * MAINTAINERS: Add copyright notice.
40 * Makefile.am: Likewise.
41 * PORTING: Likewise.
42 * README: Likewise.
43 * TODO: Likewise.
44 * acinclude.m4: Likewise.
45 * bfd.m4: Likewise.
46 * config.bfd: Likewise.
47 * configure.com: Likewise.
48 * configure.host: Likewise.
49 * configure.in: Likewise.
50 * makefile.vms: Likewise.
51 * warning.m4: Likewise.
52 * elf64-hppa.c: Fix copyright notice.
53 * Makefile.in: Regenerate.
54
ad1e85de
L
552012-12-16 H.J. Lu <hongjiu.lu@intel.com>
56
57 * elf32-i386.c (elf_i386_check_relocs): Don't check IFUNC
58 relocations here.
59 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
60
73bcf233
L
612012-12-16 H.J. Lu <hongjiu.lu@intel.com>
62
63 PR ld/14968
64 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check
65 local IFUNC references.
66 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
67
451b7c33
TT
682012-12-14 Tom Tromey <tromey@redhat.com>
69
73bcf233 70 * elf.c (elfcore_grok_note) <NT_FILE>: New case.
451b7c33 71
5ca5bb35
L
722012-12-13 H.J. Lu <hongjiu.lu@intel.com>
73
74 PR ld/14956
75 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local
76 IFUNC calls.
77 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
78
69b06cc8
ME
792012-12-10 Edgar E. Iglesias <edgar.iglesias@gmail.com>
80
81 * reloc.c (MICROBLAZE): Document new relocations
82 * bfd-in2.h: Regenerated
83 * libbfd.h: Regenerated
84 * elf32-microblaze.c (microblaze_elf_howto_raw): Add TLS relocations
85 (microblaze_elf_reloc_type_lookup): Likewise
86 (elf32_mb_link_hash_entry): define TLS reference types
87 (elf32_mb_link_hash_table): add TLS Local dynamic GOT entry
88 #define has_tls_reloc if section has TLS relocs
89 (dtprel_base), (check_unique_offset): New
90 (microblaze_elf_output_dynamic_relocation): output simple
91 dynamic relocation into SRELOC.
92 (microblaze_elf_relocate_section): Accommodate TLS relocations.
93 (microblaze_elf_check_relocs): Likewise
94 (update_local_sym_info): New
95 (microblaze_elf_copy_indirect_symbol): Add tls_mask.
96 (allocate_dynrelocs): Handle TLS symbol
97 (microblaze_elf_size_dynamic_sections): Set size and offset
98 (microblaze_elf_finish_dynamic_symbol): Use
99 microblaze_elf_output_dynamic_relocation
100
35f0d396
L
1012012-12-09 H.J. Lu <hongjiu.lu@intel.com>
102
103 PR binutils/14933
104 * archive.c (bsd_write_armap): Properly check indicies bigger
105 than 4Gb.
106
d2bcb0d1
AM
1072012-12-07 Alan Modra <amodra@gmail.com>
108
109 PR ld/14926
110 * elf.c (_bfd_elf_map_sections_to_segments): Include elf header
111 size when determining phdr_in_segment.
112
cd6fa7fd
YZ
1132012-12-06 Yufeng Zhang <yufeng.zhang@arm.com>
114
115 * elf64-aarch64.c (elf64_aarch64_grok_prstatus): New function.
116 (elf_backend_grok_prstatus): Define to elf64_aarch64_grok_prstatus.
117
625ef6dc
AM
1182012-12-06 Alan Modra <amodra@gmail.com>
119
120 * elfxx-mips.c (allocate_dynrelocs): Correct test for symbol
121 defined in a regular file to include common symbols.
122
79056107
AM
1232012-12-05 Leif Ekblad <leif@rdos.net>
124
125 * config.bfd: Add x86_64-*-rdos.
126
68d62958
AM
1272012-12-05 Alan Modra <amodra@gmail.com>
128
129 * elf64-ppc.c (build_plt_stub): Fix off by one error in branch
130 to glink.
131
e6aea42d
MR
1322012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
133
134 PR ld/10629
135 * elfxx-mips.c (mips_elf_link_hash_table): Update comment for
136 use_rld_obj_head.
137 (_bfd_mips_elf_create_dynamic_sections): Always create a
138 .rld_map section if no __rld_obj_head symbol has been seen.
139
dd2bed3a
MR
1402012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
141
142 * elf32-mips.c (mips_elf32_object_p): Return right away when the
143 ABI is not compatible.
144 * elfn32-mips.c (mips_elf_n32_object_p): Likewise.
145
a412bee5
MR
1462012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
147
148 * elf32-tilepro.c (tilepro_elf_mkobject): New function.
149 (bfd_elf32_mkobject): New macro.
150
6ae68ba3
MR
1512012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
152
153 * elf32-mips.c (bfd_elf32_mkobject): New macro.
154 * elf64-mips.c (bfd_elf64_mkobject): Likewise.
155 * elfn32-mips.c (bfd_elf32_mkobject): Likewise.
156 * elfxx-mips.h (_bfd_mips_elf_mkobject): New prototype.
157 * elfxx-mips.c (mips_elf_obj_tdata): New struct.
158 (mips_elf_tdata): New macro.
159 (_bfd_mips_elf_mkobject): New function.
160 (mips_elf_merge_obj_attributes): Report the originating input BFD
161 on attribute conflicts.
162
20696ded
MR
1632012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
164
165 * elfxx-mips.c (mips_elf_merge_obj_attributes): Correct messages
166 for the -mdouble-float and -msingle-float cases throughout; make
167 all the messages report the output file consistently on the
168 left-hand side.
169
a0c82a2b
RM
1702012-11-29 Roland McGrath <mcgrathr@google.com>
171
172 * elf-nacl.c (segment_eligible_for_headers): Disallow writable segments.
173
aa6407c6
RM
1742012-11-26 Roland McGrath <mcgrathr@google.com>
175
176 * elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null.
177
f1d85785
L
1782012-11-21 H.J. Lu <hongjiu.lu@intel.com>
179
180 PR binutils/14493
181 * elf.c (copy_elf_program_header): When rewriting program
182 header, set the output maxpagesize to the maximum alignment
183 of input PT_LOAD segments.
184
a3f548ed
RM
1852012-11-21 Roland McGrath <mcgrathr@google.com>
186
187 * elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ...
188 (segment_eligible_for_headers): ... this. Take new arguments
189 MAXPAGESIZE and SIZEOF_HEADERS. Return false if the first section's
190 start address doesn't leave space for the headers.
191 (nacl_modify_segment_map): Update caller.
192
dda8ddc5
L
1932012-11-20 H.J. Lu <hongjiu.lu@intel.com>
194
195 PR ld/14862
196 * elf-bfd.h (elf_link_hash_entry): Remove ref_dynamic_nonweak
197 added by accident.
198 (elf_link_add_object_symbols): Don't set nor check
199 ref_dynamic_nonweak.
200
6d8a3ede
AM
2012012-11-20 Alan Modra <amodra@gmail.com>
202
203 * elf32-rx.c (rx_elf_print_private_bfd_data): Warning fix.
204
79f08007
YZ
2052012-11-16 Joey Ye <joey.ye@arm.com>
206
6d8a3ede
AM
207 * elf32-arm.c (elf32_arm_final_link_relocate
208 <case R_ARM_THM_ALU_PREL_11_0, case R_ARM_THM_PC12>): Align address of
79f08007
YZ
209 the place being relocated.
210 (elf32_arm_final_link_relocate, case R_ARM_THM_PC8): Align address
211 of the place being relocated and truncate addend.
212 (Pa): New macro.
213
edccdf7c
RM
2142012-11-14 Roland McGrath <mcgrathr@google.com>
215
216 * elf32-arm.c (elf32_arm_nacl_plt0_entry): Use bic rather than bfc
217 instruction for data sandboxing.
218
1778ad74
TG
2192012-11-14 Tristan Gingold <gingold@adacore.com>
220
221 * mach-o.c (bfd_mach_o_read_main)
222 (bfd_mach_o_read_source_version): New functions.
223 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DATA_IN_CODE,
224 BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS, BFD_MACH_O_LC_MAIN,
225 BFD_MACH_O_LC_SOURCE_VERSION.
226 * mach-o.h (bfd_mach_o_main_command)
227 (bfd_mach_o_source_version_command): New types.
228 (bfd_mach_o_load_command): Add fields for these new types.
229
f4716ee2
TG
2302012-11-14 Tristan Gingold <gingold@adacore.com>
231
232 * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Add a special
233 handling for non-scattered pairs. Update comments.
234
5964fc3a
L
2352012-11-13 Joe Seymour <jseymour@codesourcery.com>
236
237 * elf.c (rewrite_elf_program_header): Allocate elf_segment_map
238 with bfd_zalloc, instead of bfd_alloc.
239
708e2187
NC
2402012-11-09 Nick Clifton <nickc@redhat.com>
241
de863c74
NC
242 * Makefile.am (ALL_MACHINES): Add cpu-v850-rh850.lo.
243 (ALL_MACHINES_CFILES): Add cpu-v850-rh850.c.
244 * archures.c (bfd_arch_info): Add bfd_v850_rh850_arch.
245 * config.bfd: Likewise.
246 * configure.in: Add bfd_elf32_v850_rh850_vec.
247 * cpu-v850.c: Update printed description.
248 * cpu-v850_rh850.c: New file.
249 * elf32-v850.c (v850_elf_check_relocs): Add support for RH850 ABI
250 relocs.
251 (v850_elf_perform_relocation): Likewise.
252 (v850_elf_final_link_relocate): Likewise.
253 (v850_elf_relocate_section): Likewise.
254 (v850_elf_relax_section): Likewise.
255 (v800_elf_howto_table): New.
256 (v850_elf_object_p): Add support for RH850 ABI values.
257 (v850_elf_final_write_processing): Likewise.
258 (v850_elf_merge_private_bfd_data): Likewise.
259 (v850_elf_print_private_bfd_data): Likewise.
260 (v800_elf_reloc_map): New.
261 (v800_elf_reloc_type_lookup): New.
262 (v800_elf_reloc_name_lookup): New.
263 (v800_elf_info_to_howto): New.
264 (bfd_elf32_v850_rh850_vec): New.
265 (bfd_arch_v850_rh850): New.
266 * targets.c (_bfd_targets): Add bfd_elf32_v850_rh850_vec.
267 * Makefile.in: Regenerate.
268 * bfd-in2.h: Regenerate.
269 * configure: Regenerate.
270
708e2187
NC
271 * elf32-rx.c (describe_flags): New function. Returns a buffer
272 containing a description of the E_FLAG_RX_... values set.
273 (rx_elf_merge_private_bfd_data): Use it.
274 (rx_elf_print_private_bfd_data): Likewise.
275 (elf32_rx_machine): Skip EF_RX_CPU_RX check.
276 (elf32_rx_special_sections): Define.
277 (elf_backend_special_sections): Define.
278
f23200ad
ME
2792012-11-09 Edgar E. Iglesias <edgar.iglesias@gmail.com>
280
281 * config.bfd: Add microblazeel-*-*
282 * configure.in: Likewise.
283 * configure: Regenerate.
284 * elf32-microblaze.c (microblaze_elf_relocate_section): Add endian awareness.
285 (microblaze_elf_merge_private_bfd_data): New.
286 (microblaze_bfd_write_imm_value_32): New.
287 (microblaze_bfd_write_imm_value_64): New.
288 (microblaze_elf_relax_section): Add endian awareness.
289 (microblaze_elf_add_symbol_hook): Define TARGET_LITTLE_NAME,
290 TARGET_LITTLE_SYM and bfd_elf32_bfd_merge_private_bfd_data.
291 * targets.c: Add bfd target bfd_elf32_microblazeel_vec.
292
5bb3703f
L
2932012-11-09 H.J. Lu <hongjiu.lu@intel.com>
294
295 * aout-tic30.c (MY_final_link_callback): Remove trailing
296 redundant `;'.
297 * coff-h8500.c (extra_case): Likewise.
298 (bfd_coff_reloc16_get_value): Likewise.
299 * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Likewise.
300 * elf.c (_bfd_elf_slurp_version_tables): Likewise.
301 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
302 * elf32-v850.c (v850_elf_perform_relocation): Likewise.
303 * opncls.c (bfd_calc_gnu_debuglink_crc32): Likewise.
304 * plugin.c (add_symbols): Likewise.
305 * reloc.c (bfd_check_overflow): Likewise.
306 * vms-lib.c (_bfd_vms_lib_archive_p): Likewise.
307
9015683b
TT
3082012-11-08 Tom Tromey <tromey@redhat.com>
309
310 * elf.c (elfcore_grok_note) <NT_SIGINFO>: New case; make
311 pseudosection.
312
6febeb74
AM
3132012-11-08 Alan Modra <amodra@gmail.com>
314
315 * aclocal.m4: Regenerate.
316 * Makefile.in: Regenerate.
317 * po/SRC-POTFILES.in: Regenerate.
318
ddda4adc
L
3192012-11-07 H.J. Lu <hongjiu.lu@intel.com>
320
321 * section.c (bfd_get_section_contents): Replace memcpy
322 with memmove.
323
75344f2a
HPN
3242012-11-07 Hans-Peter Nilsson <hp@axis.com>
325
326 PR binutils/14481
327 * aout-target.h (MY_close_and_cleanup): Make local function
328 instead of alias of MY_bfd_free_cached_info. Also call
329 _bfd_generic_close_and_cleanup.
330
9053b70e
L
3312012-11-06 H.J. Lu <hongjiu.lu@intel.com>
332
333 PR binutils/14813
334 * bfdio.c (bfd_iovec): Change return type of bclose to
335 bfd_boolean.
336 (memory_bclose): Change return type to bfd_boolean.
337 * cache.c (cache_bclose): Likewise.
338 * opncls.c (opncls_bclose): Likewise. Return TRUE on success.
339 * vms-lib.c (vms_lib_bclose): Likewise. Return TRUE.
340 * libbfd.h: Regenerated.
341
4bea9418
TG
3422012-11-06 Tristan Gingold <gingold@adacore.com>
343
344 * coff-x86_64.c (_bfd_generic_find_nearest_line_discriminator):
345 Define as coff_find_nearest_line_discriminator.
346
b374d0f8
AM
3472012-11-06 Alan Modra <amodra@gmail.com>
348
349 PR binutils/14567
350 * opncls.c (opncls_iovec): Forward declare.
351 (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream
352 to new bfd.
353
8c746b96
AM
3542012-11-06 Alan Modra <amodra@gmail.com>
355
356 * mach-o.c (bfd_mach_o_close_and_cleanup): Don't call
357 _bfd_generic_close_and_cleanup for mach_o_fat archives.
358
18498503
AM
3592012-11-06 Alan Modra <amodra@gmail.com>
360
361 * coff-tic4x.c (tic4x_coff0_vec, tic4x_coff0_beh_vec,
362 tic4x_coff1_vec, tic4x_coff1_beh_vec, tic4x_coff2_vec,
363 tic4x_coff2_beh_vec): Allow SEC_CODE and SEC_READONLY in
364 section flags.
0df8acde
AM
365 * coff-ppc.c (TARGET_LITTLE_SYM): Likewise.
366 (TARGET_BIG_SYM): Likewise.
18498503 367
a38a07e0
AM
3682012-11-06 Alan Modra <amodra@gmail.com>
369
370 * elf64-ppc.c (struct ppc_link_hash_table): Add dot_toc_dot.
371 (ppc64_elf_size_stubs): Lookup ".TOC.".
372 (ppc64_elf_relocate_section): Resolve special symbol ".TOC.".
373
53d8967a
AM
3742012-11-06 Alan Modra <amodra@gmail.com>
375
376 * elf64-ppc.c (maybe_strip_output): Heed SEC_KEEP.
377
0cb79d69
AK
3782012-11-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
379
380 PR target/14788
381 * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for
382 local ifunc symbols.
383 * elf64-s390.c (elf_s390_relocate_section): Likewise.
384
d17dce55
AM
3852012-11-05 Alan Modra <amodra@gmail.com>
386
387 * configure.in: Apply 2012-09-10 change to config.in here.
388
d4f1ee75
AM
3892012-11-05 Alan Modra <amodra@gmail.com>
390
391 * elf64-ppc.c (ppc64_elf_edit_toc): Clear "repeat" inside
392 loop. Really mark toc entry referring to another toc entry
393 only if the first is used.
394
680db949
L
3952012-10-30 H.J. Lu <hongjiu.lu@intel.com>
396
397 * configure.in: Also handle --enable-64-bit-bfd when setting
398 CORE_HEADER for 'i[3-7]86-*-linux-*'.
399
3bfcb652
NC
4002012-10-30 Steve McIntyre <steve.mcintyre@linaro.org>
401
402 * elf32-arm.c (elf32_arm_print_private_bfd_data): Recognise and
403 display the new ARM hard-float/soft-float ABI flags for EABI_VER5
404 (elf32_arm_post_process_headers): Add the hard-float/soft-float
405 ABI flag as appropriate for ET_DYN/ET_EXEC in EABI_VER5.
406
b1bd052d
L
4072012-10-30 Yao Qi <yao@codesourcery.com>
408 H.J. Lu <hongjiu.lu@intel.com>
409
3bfcb652 410 * configure.in: Set CORE_HEADER to hosts/x86-64linux.h for
b1bd052d
L
411 'i[3-7]86-*-linux-*' if x86_64-*linux is enabled.
412 * configure: Regenerated.
413
414 * elf64-x86-64.c (elf_x86_64_write_core_note): Replace type
415 'prpsinfo_t' and 'prstatus_t' with 'prpsinfo64_t' and
416 'prstatus64_t' respectively.
417
418 * hosts/x86-64linux.h (a8_uint64_t): New.
419 (user_regsx32_struct): Renamed to ...
420 (user_regs64_struct): This. Replace uint64_t with a8_uint64_t.
421 (elf_gregx32_t): Renamed to ...
422 (elf_greg64_t): This. Replace uint64_t with a8_uint64_t.
423 (ELF_NGREGX32): Removed.
424 (ELF_NGREG64): New.
425 (elf_gregx32_t): Removed.
426 (elf_greg64_t): New.
427 (struct prstatus64_timeval): New.
428 (elf_prstatusx32): Replace elf_gregsetx32_t with elf_gregset64_t.
429 (elf_prstatus64): New.
430 (elf_prpsinfo64): New.
431 (prstatus64_t, prpsinfo64_t): New typedef.
432
d6273433
SK
4332012-10-29 Sean Keys <skeys@ipdatasys.com>
434
435 * elf32-xgate.c(elf_xgate_howto_table): Fix src and dest mask for
436 R_XGATE_16
437
bdaacd3a
AM
4382012-10-29 Alan Modra <amodra@gmail.com>
439
440 * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask in
441 R_PPC_VLE_LO16A, R_PPC_VLE_HI16A, R_PPC_VLE_HA16A,
442 R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_HI16A,
443 R_PPC_VLE_SDAREL_HA16A reloc howtos.
444
31f7d8fd
NC
4452012-10-26 Nick Clifton <nickc@redhat.com>
446
447 * po/uk.po: Updated Ukranian translation.
448
1fe532cf
AM
4492012-10-26 Alan Modra <amodra@gmail.com>
450
451 PR target/14758
452 * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS
453 bfd_reloc values. Map to corresponding D-form relocs.
454 (is_insn_ds_form, is_insn_qs_form): New functions.
455 (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form
456 fields using D-form reloc.
457
9d4b2dba
L
4582012-10-25 H.J. Lu <hongjiu.lu@intel.com>
459
460 * elf32-i386.c (elf_i386_size_dynamic_sections): Replace
461 _GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot.
462 * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
463
64f40162
L
4642012-10-24 H.J. Lu <hongjiu.lu@intel.com>
465
466 * compress.c (bfd_is_section_compressed): Don't decompress the
467 section.
468
04c3a755
NS
4692012-10-23 Nathan Sidwell <nathan@codesourcery.com>
470
471 * bfd-in.h (bfd_elf_stack_segment_size): Declare.
472 * bfd-in2.h: Rebuilt.
473 * elfxx-target.h (elf_backend_stack_align): New.
474 (elfNN_bed): Add it.
475 * elf-bfd.h (struct elf_backend_data): Add stack_align field.
476 * elf.c (bfd_elf_map_sections_to_segments): Pay attention to
477 stack_align and stacksize for PT_GNU_STACK segment.
478 (assign_file_positions_for_non_load_sections): Set p_memsz for
479 PT_GNU_STACK segment.
480 (copy_elf_program_header): Copy PT_GNU_STACK size.
481 * elflink.c (bfd_elf_stack_segment_size): New function, taken from
482 uclinux backends.
483 (bfd_elf_size_dynamic_sections): Determine
484 PT_GNU_STACK requirements after calling backend. Pay attention to
485 stacksize.
486 * elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Call
487 bfd_elf_stack_segment_size.
488 (elf32_bfinfdpic_modify_program_headers): Delete.
489 (elf32_bfingfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
490 here.
491 (elf_backend_stack_align): Override.
492 (elf_backend_modify_program_headers): Don't override.
493 * elf32-frv.c (frvfdpic_always_size_sections): Call
494 bfd_elf_stack_segment_size.
495 (elf32_frvfdpic_modify_program_headers): Delete.
496 (elf32_frvfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
497 here.
498 (elf_backend_stack_align): Override.
499 (elf_backend_modify_program_headers): Don't override.
500 * elf32-lm32.c (lm32_elf_always_size_sections): Leave
501 PT_GNU_STACK creation to underlying elf support. Check
502 __stacksize here for backwards compatibility, and set it if
503 needed.
504 (lm32_elf_modify_segment_map): Delete.
505 (lm32_elf_modify_program_headers): Delete.
506 (elf_backend_stack_align): Override.
507 (elf_backend_modify_segment_map): Don't override.
508 (elf_backend_modify_program_headers): Don't override.
509 * elf32-sh.c (sh_elf_always_size_sections): Call
510 bfd_elf_stack_segment_size.
511 (sh_elf_modify_program_headers): Delete.
512 (sh_elf_copy_private_data): Don't copy PT_GNU_STACK
513 here.
514 (elf_backend_stack_align): Override.
515 (elf_backend_modify_program_headers): Don't override.
516 * elf32-tic6x.c (elf32_tic6x_always_size_sections): Call
517 bfd_elf_stack_segment_size.
518 (elf32_tic6x_modify_program_headers): Delete.
519 (elf32_tic6x_copy_private_data): Delete.
520 (elf_backend_stack_align): Override.
521 (bfd_elf32_bfd_copy_private_bfd_data): Don't override.
522 (elf_backend_modify_program_headers): Don't override.
523
eac3aa9e
AM
5242012-10-22 Alan Modra <amodra@gmail.com>
525
526 * cache.c (cache_bmmap): Don't use void* arithmetic.
527
8a72cc6e
AM
5282012-10-21 Alan Modra <amodra@gmail.com>
529
530 * compress.c (bfd_cache_section_contents): New function.
531 * bfd-in2.h: Regenerate.
532
d3a65d4d
HPN
5332012-10-21 Hans-Peter Nilsson <hp@bitrange.com>
534
535 * linker.c (_bfd_generic_link_output_symbols): Handle a
1e9d6fc2 536 no-longer-global symbol entered through a plugin.
d3a65d4d 537
38b774d2
AM
5382012-10-20 Alan Modra <amodra@gmail.com>
539
540 * compress.c: Reinstate 2012-10-19 change.
541 (bfd_get_full_section_contents): Don't free unless we alloc.
542 Use proper decompress size. Delete some vars, rename others.
543
67d004eb
TT
5442012-10-19 Tom Tromey <tromey@redhat.com>
545
546 * compress.c: Revert previous patch.
547
06c2e2c1
TT
5482012-10-19 Tom Tromey <tromey@redhat.com>
549
550 * compress.c (bfd_get_full_section_contents): Don't cache
551 decompressed contents.
552
a29a8af8
KT
5532012-10-18 Kai Tietz <ktietz@redhat.com>
554
555 PR binutils/14067
556 * coff-i386.c (bfd_target): Add section flag SEC_EXCLUDE.
557 Allow BFD_COMPRESS and BFD_DECOMPRESS flags.
558 * coff-x86_64.c: Likewise.
559 * coffcode.h (DOT_ZDEBUG): New define.
560 (sec_to_styp_flags): Check for .zdebug.
561 (styp_to_sec_flags): Likewise.
562 * coffgen.c (make_a_section): Handle .debug_* section
563 compression/decompression flags.
564 * cofflink.c (mark_relocs): Ignore relocations
565 for a section, which isn't marked as used.
566 (_bfd_coff_link_input_bfd): Add support of compressed
567 debug sections.
568 * compress.c (decompress_contents): Loop as long
569 as there is input available and there is room for
570 output.
571 * bfd/pe-arm.c: Add .zdebug_ partial match entry.
572 * pe-i386.c: Likewise.
573 * pe-x86_64.c: Likewise.
574 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't clear all
575 data-directories as this might destroy content.
576
577 * coff-i386.c (_bfd_generic_find_nearest_line_discriminator):
578 define as coff_find_nearest_line_discriminator.
579 * libcoff-in.h (coff_find_nearest_line_discriminator): New
580 * libcoff.h: Regenerated.
581 * coff-x86_64.c: Likewise.
582 * coffgen.c (coff_find_nearest_line_discriminator): New function.
583 prototype.
584
1239a68a
JB
5852012-10-16 Joel Brobecker <brobecker@adacore.com>
586
587 * coff64-rs6000.c (rs6000coff64_vec): Set _close_and_cleanup
588 field to _bfd_archive_close_and_cleanup.
589 (aix5coff64_vec): Likewise.
590
e3f9f6d8
JB
5912012-10-16 Joel Brobecker <brobecker@adacore.com>
592
593 * coff-rs6000.c (rs6000coff_vec): Set _close_and_cleanup
594 field to _bfd_archive_close_and_cleanup.
595 (pmac_xcoff_vec): Likewise.
596
bb3f9ed8
YZ
5972012-10-16 Sofiane Naci <sofiane.naci@arm.com>
598
599 * elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for
600 R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, R_AARCH64_TLSLE_MOVW_TPREL_G2,
601 R_AARCH64_TLSLE_MOVW_TPREL_G1, R_AARCH64_TLSLE_MOVW_TPREL_G1_NC,
602 R_AARCH64_TLSLE_ADD_TPREL_HI12.
603 (elf64_aarch64_tlsdesc_howto_table): Fix shift value for
604 R_AARCH64_TLSDESC_LD64_PREL19 and R_AARCH64_TLSDESC_OFF_G1.
605 (elf64_aarch64_final_link_relocate): Add signed_addend when resolving
606 AARCH64_TLSLE_*_TPREL_* relocations.
607
65e911f9
AM
6082012-10-16 Alan Modra <amodra@gmail.com>
609
610 * elf32-xtensa.c (free_section_cache): Renamed from
611 clear_section_cache. Don't zero cache.
612 (section_cache_section): Remove ineffectual zero of cache.
613 Call init_section_cache instead.
614
a9a72a65
DE
6152012-10-15 Doug Evans <dje@google.com>
616
617 * elf.c (special_sections_d): Add comment.
618
3cf9e6c4
L
6192012-10-13 H.J. Lu <hongjiu.lu@intel.com>
620
621 * Makefile.am (LIBDL): Replace -ldl with @lt_cv_dlopen_libs@.
622 * configure.in (lt_cv_dlopen_libs): AC_SUBST.
623 * Makefile.in: Regenerated.
624 * configure: Likewise.
625
f073ced3
AM
6262012-10-08 Alan Modra <amodra@gmail.com>
627
628 PR binutils/14662
629 * elf.c (_bfd_elf_make_section_from_shdr): Treat .gdb_index as
630 SEC_DEBUGGING.
631
535127d2
WL
6322012-09-20 Walter Lee <walt@tilera.com>
633
634 * elf32-tilepro.c (tilepro_elf_relocate_section): Adjust got
635 relocations with value of hgot.
636 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
637
795e8513
SE
6382012-09-19 Steve Ellcey <sellcey@mips.com>
639
640 * config.bfd: Add mips*-mti-elf* target.
641
37a9e49a
L
6422012-09-18 H.J. Lu <hongjiu.lu@intel.com>
643
644 PR ld/14591
f073ced3 645 * elf-bfd.h (_bfd_elf_merge_symbol): Add an argument to return
37a9e49a
L
646 if the old symbol is weak.
647
648 * elf32-sh-symbian.c (sh_symbian_relocate_section): Update
649 _bfd_elf_merge_symbol call.
650
651 * elflink.c (_bfd_elf_merge_symbol): Add an argument to return
652 if the old symbol is weak.
653 (_bfd_elf_add_default_symbol): Update _bfd_elf_merge_symbol
654 call.
655 (elf_link_add_object_symbols): Don't update symbol type from a
656 weak definition. Update symbol type from a common symbol when
657 overriding a weak symbol.
658
fbdc86d9
L
6592012-09-17 H.J. Lu <hongjiu.lu@intel.com>
660
661 * elf32-i386.c (elf_i386_convert_mov_to_lea): Ignore discarded
662 section.
663 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
664
cec7f46a
L
6652012-09-17 H.J. Lu <hongjiu.lu@intel.com>
666
667 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Replace return
668 FALSE with abort.
669 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
670
5ec61378
WL
6712012-09-17 Walter Lee <walt@tilera.com>
672
673 * elf32-tilepro.c (tilepro_elf_relocate_section): Remove unused
674 got_base variable.
675 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
676
901e60ca
WL
6772012-09-17 Walter Lee <walt@tilera.com>
678
679 * elf32-tilepro.c (tilepro_elf_relocate_section): Fix computation
680 of got relocations for when .got.plt section is merged with .got.
681 * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
682
6c9c0a50
DE
6832012-09-14 David Edelsohn <dje.gcc@gmail.com>
684
685 * configure: Regenerate.
686
e202fa84
AG
6872012-09-13 Anthony Green <green@moxielogic.com>
688
689 * targets.c (bfd_elf32_bigmoxie_vec, bfd_elf32_littlemoxie_vec):
690 Define.
691 (bfd_elf32_moxie_vec): Remove.
692 * config.bfd, configure.in: Add bi-endian support for moxie.
693 * configure: Rebuilt.
694 * elf32-moxie.c (TARGET_LITTLE_NAME, TARGET_LITTLE_SYM): Define.
695 (TARGET_BIG_NAME, TARGET_BIG_SYM): Update for bi-endian support.
696
31c76678
DK
6972012-09-12 Doug Kwan <dougkwan@google.com>
698
699 * elf64-ppc.c (ppc64_elf_relocate_section): Use pre-adjusted
700 relocation for stub lookup.
701
f41aef5f
RE
7022012-09-12 Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
703
704 * bfd-in2.h: Regenerated.
705 * elf64-aarch64.c
706 (elf64_aarch64_howto_table): Add R_AARCH64_GOT_LD_PREL19 reloc to HOWTO.
707 (elf64_aarch64_reloc_map): Add reloc entry.
708 (aarch64_resolve_relocation): Likewise.
709 (bfd_elf_aarch64_put_addend): Likewise.
710 (aarch64_reloc_got_type): Likewise.
711 (elf64_aarch64_final_link_relocate): Likewise.
712 (lf64_aarch64_check_relocs): Likewise.
713 (elf64_aarch64_check_relocs): New case for R_AARCH64_ADR_PREL_LO21
714 reloc.
715 * libbfd.h: Regenerated.
716 * reloc.c (R_AARCH64_GOT_LD_PREL19): New reloc.
717
00716ab1
AM
7182012-09-10 Matthias Klose <doko@ubuntu.com>
719
720 * config.in: Disable sanity check for kfreebsd.
721
6d2920c8
L
7222012-09-10 H.J. Lu <hongjiu.lu@intel.com>
723
724 * configure: Regenerated.
725
b3e14eda
L
7262012-09-04 Sergey A. Guriev <sergey.a.guriev@intel.com>
727
728 * cpu-ia64-opc.c (ins_cnt6a): New function.
729 (ext_cnt6a): Ditto.
730 (ins_strd5b): Ditto.
731 (ext_strd5b): Ditto.
732 (elf64_ia64_operands): Add new operand types.
733
c6d8cab4
L
7342012-09-04 H.J. Lu <hongjiu.lu@intel.com>
735
736 PR binutils/14493
737 * elf.c (ignore_section_sym): Also ignore section symbols without
738 a BFD section.
739
31db78f6
AK
7402012-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
741
742 * elf32-s390.c (elf_s390_relocate_section): Handle PLTOFF for
743 local and global ifunc symbols.
744 * elf64-s390.c (elf_s390_relocate_section): Likewise.
745
9637f6ef
L
7462012-09-02 H.J. Lu <hongjiu.lu@intel.com>
747
748 * elf-bfd.h (elf_link_hash_table): Add hdynamic for the
749 _DYNAMIC symbol.
750
751 * elflink.c (_bfd_elf_link_create_dynamic_sections): Set
752 hdynamic.
753
754 * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_symbol): Check
755 hdynamic instead of "_DYNAMIC".
756 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Likewise.
757 * elf32-cr16.c (elf32_arm_finish_dynamic_symbol): Likewise.
758 * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise.
759 * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise.
760 * elf32-i386.c (elf_i386_convert_mov_to_lea): Likewise.
761 * elf32-lm32.c (lm32_elf_finish_dynamic_symbol): Likewise.
762 * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise.
763 * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
764 * elf32-sh.c (sh_elf_finish_dynamic_symbol): Likewise.
765 * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise.
766 * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise.
767 * elf32-vax.c (elf_vax_finish_dynamic_symbol): Likewise.
768 * elf32-xtensa.c (elf_xtensa_finish_dynamic_symbol): Likewise.
769 * elf64-aarch64.c elf64_aarch64_finish_dynamic_symbol(): Likewise.
770 * elf64-alpha.c (elf64_alpha_finish_dynamic_symbol): Likewise.
771 * elf64-ia64-vms.c (elf64_ia64_finish_dynamic_symbol): Likewise.
772 * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
773 * elf64-sh64.c (sh64_elf64_finish_dynamic_symbol): Likewise.
774 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
775 * elfnn-ia64.c (elfNN_ia64_finish_dynamic_symbol): Likewise.
776 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
777 * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise.
778 * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise.
779
780 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Check
781 hdynamic, hgot, hplt instead of _DYNAMIC, _GLOBAL_OFFSET_TABLE_,
782 _PROCEDURE_LINKAGE_TABLE_.
783 * elf32-score.c (s3_bfd_score_elf_finish_dynamic_symbol): Likewise.
784 * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_symbol): Likewise.
785
3f65f599
L
7862012-08-31 H.J. Lu <hongjiu.lu@intel.com>
787
788 * elf32-i386.c (elf_i386_convert_mov_to_lea): Don't optimize
789 _DYNAMIC.
790 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
791
daa67607
L
7922012-08-31 H.J. Lu <hongjiu.lu@intel.com>
793
794 * elf32-i386.c (elf_i386_convert_mov_to_lea): New.
795 (elf_i386_size_dynamic_sections): Use it on input sections.
796 (elf_i386_relocate_section): Don't convert
797 "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg"
798 for local symbols here.
799
800 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): New.
801 (elf_x86_64_size_dynamic_sections): Use it on input sections.
802 (elf_x86_64_relocate_section): Don't convert
803 "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg"
804 for local symbols here.
805
80d87326
L
8062012-08-30 H.J. Lu <hongjiu.lu@intel.com>
807
808 * elf32-i386.c (elf_i386_relocate_section): Convert
809 "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg"
810 for local symbols.
811
812 * elf64-x86-64.c (elf_x86_64_relocate_section): Convert
813 "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg"
814 for local symbols.
815
b69fdb4e
AM
8162012-08-31 Alan Modra <amodra@gmail.com>
817
818 PR ld/14464
819 * elf64-ppc.c (ppc64_elf_relocate_section): Map symbols defined
820 by a linker script in .opd to corresponding input .opd section.
821
14acf4dc
MR
8222012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
823
824 * elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is
825 not minus one.
826 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
827
aed81c4e
MR
8282012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
829
830 * elflink.c (_bfd_elf_merge_symbol): Also override the version
831 a dynamic symbol defaulted to if preempted with a hidden or
832 internal definition.
833
663b5850
WL
8342012-08-28 Walter Lee <walt@tilera.com>
835
836 * elf32-tilepro.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size
837 of header.
838 (tilepro_plt_entry_build): Account for new header size.
839 (tilepro_elf_finish_dynamic_sections): Ditto.
840 (tilepro_elf_plt_sym_val): Ditto.
841 * elfxx-tilegx.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size
842 of header + tail.
843 (tilegx_elf_finish_dynamic_sections): Account for new padding.
844
e5b95258
WL
8452012-08-27 Walter Lee <walt@tilera.com>
846
847 * reloc.c (Add BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL,
848 BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL,
849 BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL,
850 BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL,
851 BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL,
852 BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL,
853 BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL,
854 BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL,
855 BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL,
856 BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL,
857 BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL,
858 BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL,
859 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL,
860 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL): new relocations.
861 * elfxx-tilegx.c (tilegx_elf_howto_table): Handle new relocations.
862 (tilegx_reloc_map): Ditto.
863 (reloc_to_create_func): Ditto.
864 (tilegx_elf_check_relocs): Ditto.
865 (tilegx_elf_gc_sweep_hook): Ditto.
866 (tilegx_elf_relocate_section): Ditto.
867 * libbfd.h: Regenerate.
868 * bfd-in2.h: Regenerate.
869
bca38921
MGD
8702012-08-24 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
871
872 * elf32-arm.c (v8): New array.
873 (tag_cpu_arch_combine): Add support for ARMv8 attributes.
874 (elf32_arm_merge_eabi_attributes): Likewise.
875 (VFP_VERSION_COUNT): New define.
876
06e7acd7
TT
8772012-08-20 Tom Tromey <tromey@redhat.com>
878
879 * vms-lib.c (_bfd_vms_lib_get_module): Use bfd_zmalloc for
880 areltdata.
881 * opncls.c (_bfd_delete_bfd): Free arelt_data.
882 * mach-o.c (bfd_mach_o_fat_member_init): Use bfd_zmalloc for
883 areltdata.
884 * ecoff.c (_bfd_ecoff_slurp_armap): Use free for mapdata.
885 * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Use bfd_zmalloc for
886 areltdata.
887 (xcoff_write_archive_contents_old): Likewise.
888 (xcoff_write_archive_contents_big): Likewise.
889 * archive64.c (bfd_elf64_archive_slurp_armap): Use free for
890 areltdata.
891 * archive.c (_bfd_generic_read_ar_hdr_mag): Use bfd_zmalloc and
892 free for areltdata.
893 (_bfd_get_elt_at_filepos): Likewise. Clear n_nfd->arelt_data on
894 failure.
895 (do_slurp_bsd_armap): Use bfd_zmalloc and free for areltdata.
896 (do_slurp_coff_armap): Likewise.
897 (_bfd_slurp_extended_name_table): Likewise.
898 (bfd_slurp_bsd_armap_f2): Likewise. Don't leak 'mapdata'.
899
eb80cb87
NC
9002012-08-17 Nick Clifton <nickc@redhat.com>
901
902 * po/vi.po: Updated Vietnamese translation.
903
a8685210
AM
9042012-08-17 Yuri Chornoivan <yurchor@ukr.net>
905
906 * elf-bfd.h, * elf32-ppc.c, * elf64-ia64-vms.c, * elfnn-ia64.c,
907 * elfxx-mips.c, * vms-alpha.c: Typo fixes.
908
ed668b34
AM
9092012-08-17 Alan Modra <amodra@gmail.com>
910
911 PR binutils/14475:
912 * archive.c (bfd_ar_hdr_from_filesystem): Revert last change.
913 Instead malloc areltdata.
914
a3074307
TT
9152012-08-16 Tom Tromey <tromey@redhat.com>
916
917 PR binutils/14475:
918 * archive.c (bfd_ar_hdr_from_filesystem): Allocate areltdata on
919 'member' BFD. Don't try to free 'ared'.
920
63a79b61
NC
9212012-08-14 Nick Clifton <nickc@redhat.com>
922
923 * po/uk.po: Updated Ukranian translation.
924
af0edeb8
MR
9252012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
926
927 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Look up
928 the options section in the output rather than input BFD to
929 decide if to add a DT_MIPS_OPTIONS tag.
930
9edaacb3
MR
9312012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
932
933 * config.bfd: Wrap mips*el-*-linux* and mips*-*-linux* into
934 #ifdef BFD64.
935
a06ea964
NC
9362012-08-13 Ian Bolton <ian.bolton@arm.com>
937 Laurent Desnogues <laurent.desnogues@arm.com>
938 Jim MacArthur <jim.macarthur@arm.com>
939 Marcus Shawcroft <marcus.shawcroft@arm.com>
940 Nigel Stephens <nigel.stephens@arm.com>
941 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
942 Richard Earnshaw <rearnsha@arm.com>
943 Sofiane Naci <sofiane.naci@arm.com>
944 Tejas Belagod <tejas.belagod@arm.com>
945 Yufeng Zhang <yufeng.zhang@arm.com>
946
947 * Makefile.am: Add AArch64 files.
948 * Makefile.in: Regenerate.
949 * archures.c (bfd_aarch64_arch): New declaration.
950 (bfd_archures_list): Use bfd_archures_list.
951 * bfd-in.h (bfd_elf64_aarch64_init_maps): New declaration.
952 (bfd_aarch64_process_before_allocation): New declaration.
953 (bfd_elf64_aarch64_process_before_allocation): New declaration.
954 (bfd_elf64_aarch64_set_options): New declaration.
955 (bfd_elf64_aarch64_add_glue_sections_to_bfd): New declaration.
956 (BFD_AARCH64_SPECIAL_SYM_TYPE_MAP): New definition.
957 (BFD_AARCH64_SPECIAL_SYM_TYPE_TAG): New definition.
958 (BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER): New definition.
959 (BFD_AARCH64_SPECIAL_SYM_TYPE_ANY): New definition.
960 (bfd_is_aarch64_special_symbol_name): New declaration.
961 (bfd_aarch64_merge_machines): New declaration.
962 (bfd_aarch64_update_notes): New declaration.
963 (int bfd_aarch64_get_mach_from_notes): New declaration.
964 (elf64_aarch64_setup_section_lists): New declaration.
965 (elf64_aarch64_next_input_section): New declaration.
966 (elf64_aarch64_size_stubs): New declaration.
967 (elf64_aarch64_build_stubs): New declaration.
968 * config.bfd: Add AArch64.
969 * configure.in: Add AArch64.
970 * configure: Regenerate.
971 * cpu-aarch64.c: New file.
972 * elf-bfd.h: Add AArch64.
973 * bfd-in2.h: Regenerate.
974 * libbfd.h: Regenerate.
975 * elf64-aarch64.c: New file.
976 * reloc.c: Add AArch64 relocations.
977 * targets.c: Add AArch64.
978 * po/SRC-POTFILES.in: Regenerate.
979
9f1a453e
MR
9802012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
981
982 * elfxx-mips.c (mips_elf_calculate_relocation): Fix the handling
983 of protected symbols.
984
44534af3
AM
9852012-08-10 Alan Modra <amodra@gmail.com>
986
987 PR binutils/14444
988 * elf.c (IS_VALID_GROUP_SECTION_HEADER) Add minsize param.
989 (setup_group): Adjust uses.
990 (bfd_section_from_shdr): Allow SHT_GROUP sections with just a flag
991 word.
992
3c892704
NC
9932012-08-09 Nick Clifton <nickc@redhat.com>
994
995 * po/vi.po: Updated Vietnamese translation.
996
d21911ea
MR
9972012-08-09 Maciej W. Rozycki <macro@codesourcery.com>
998
999 * elfxx-mips.c (LA25_LUI_MICROMIPS_1, LA25_LUI_MICROMIPS_2):
1000 Remove macros, folding them into...
1001 (LA25_LUI_MICROMIPS): ... this new macro.
1002 (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise into...
1003 (LA25_J_MICROMIPS): ... this new macro.
1004 (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise
1005 into...
1006 (LA25_ADDIU_MICROMIPS): ... this new macro.
1007 (bfd_put_micromips_32, bfd_get_micromips_32): New functions.
1008 (mips_elf_create_la25_stub): Use them.
1009 (check_br32_dslot, check_br32, check_relocated_bzc): Likewise.
1010 (_bfd_mips_elf_relax_section): Likewise.
1011
eeb1f9ae
AM
10122012-08-09 Alan Modra <amodra@gmail.com>
1013 Tom Tromey <tromey@redhat.com>
1014
1015 * archive.c (SECTION Archives): Update documentation.
1016 (_bfd_delete_archive_data): Remove.
1017 (_bfd_add_bfd_to_archive_cache): Set 'parent_cache' and 'key'.
1018 (archive_close_worker, _bfd_archive_close_and_cleanup): New
1019 functions.
1020 * libbfd-in.h (struct areltdata <parent_cache, key>): New fields.
1021 (_bfd_delete_archive_data): Don't declare.
1022 (_bfd_archive_close_and_cleanup): Declare.
1023 (_bfd_generic_close_and_cleanup): Redefine.
1024 * libbfd.h: Rebuild.
1025 * opncls.c (_bfd_delete_bfd): Don't call _bfd_delete_archive_data.
1026 (bfd_close): Don't close nested thin archives here.
1027
a988325c
NC
10282012-08-07 Tom Tromey <tromey@redhat.com>
1029
1030 * archive.c (_bfd_delete_archive_data): New function.
1031 * libbfd-in.h (_bfd_delete_archive_data): Declare.
1032 * libbfd.h: Rebuild.
1033 * opncls.c (_bfd_delete_bfd): Call _bfd_delete_archive_data.
1034
5125d2b0
NC
10352012-08-07 Nick Clifton <nickc@redhat.com>
1036
1037 * po/uk.po: Updated Ukranian translation.
1038
eb8476a6
MR
10392012-08-06 Maciej W. Rozycki <macro@codesourcery.com>
1040
1041 * elflink.c (bfd_elf_record_link_assignment): Remove --defsym
1042 symbols special case.
1043
a22a8039
MR
10442012-08-05 Maciej W. Rozycki <macro@linux-mips.org>
1045
1046 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Don't allocate
1047 PLT slots for local symbols.
1048
1a6c3ca2
MR
10492012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
1050
1051 * elf64-mips.c (mips16_elf64_howto_table_rela): Correct src_mask
1052 field initializers throughout.
1053 * elfn32-mips.c (elf_mips16_howto_table_rela): Likewise.
1054
3bdf9505
MR
10552012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
1056
1057 * elfxx-mips.c (mips_elf_perform_relocation): Update the
1058 cross-mode jump message.
1059
6e6be592
MR
10602012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
1061
1062 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Update the
1063 comment on DT_MIPS_RLD_MAP.
1064
7b84f8da
TT
10652012-08-03 Tom Tromey <tromey@redhat.com>
1066
1067 * opncls.c (_bfd_delete_bfd): Now static.
1068 * libbfd-in.h (_bfd_delete_bfd): Don't declare.
1069 * libbfd.h: Rebuild.
1070
9a92d0ce
SK
10712012-08-02 Sean Keys <skeys@ipdatasys.com>
1072
1073 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Modified
1074 conditional statment to allow suppression of mismatched bank
1075 warning.
1076
1c37913d
AM
10772012-08-01 Alan Modra <amodra@gmail.com>
1078
1079 * dwarf2.c (struct dwarf2_debug): Add close_on_cleanup.
1080 (_bfd_dwarf2_slurp_debug_info): Set close_on_cleanup if we open
1081 gnu_debuglink bfd.
1082 (_bfd_dwarf2_cleanup_debug_info): Act on close_on_cleanup.
1083
a6dc81d2
NC
10842012-07-30 Nick Clifton <nickc@redhat.com>
1085
1086 * po/bfd.pot: Updated template.
1087 * po/es.po: Updated Spanish translation.
1088 * po/fi.po: Updated Finnish translation.
1089 * po/fr.po: Updated French translation.
1090 * po/ru.po: Updated Russian translation.
1091 * po/uk.po: Updated Ukranian translation.
1092
c4dd807e
MF
10932012-07-27 Mike Frysinger <vapier@gentoo.org>
1094
1095 * configure.in (AC_INIT): Call with the args bfd and 2.22.52.
1096 (AM_INIT_AUTOMAKE): Remove args.
1097 * configure: Regenerate.
1098
c92b291c
AK
10992012-07-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1100
1101 * cpu-s390.c (bfd_s390_64_arch, bfd_s390_arch): Pick the default
1102 arch depending on the target size.
1103
ecdf0cbb
TG
11042012-07-27 Tristan Gingold <gingold@adacore.com>
1105
1106 * configure.in: Bump version to 2.23.51
1107 * configure: Regenerate.
1108
f725daa8
CC
11092012-07-26 Teresa Johnson <tejohnson@google.com>
1110
1111 * bfd/dwarf2.c (find_line): Initialize discriminator_ptr
1112 if it is non-NULL.
1113
05456594
NC
11142012-07-26 Meador Inge <meadori@codesourcery.com>
1115 Nick Clifton <nickc@redhat.com>
1116
1117 PR ld/14397
1118 * elf32-arm.c (elf32_arm_finish_dynamic_sections): Report an error
1119 if a required section is missing from the linker script.
1120
6aa82b64
EW
11212012-07-24 Jan Waclawek <konfera@efton.sk>
1122 PR 13899
1123 * elf32-avr.c (elf32_avr_relax_delete_bytes): Call
1124 _bfd_elf_link_read_relocs with keep_memory as TRUE.
1125
9b8d1a36
CC
11262012-07-24 Teresa Johnson <tejohnson@google.com>
1127
1128 * bfd.c (bfd_find_nearest_line_discriminator): New macro.
1129 * coff-rs6000.c: Init _bfd_find_nearest_line_discriminator.
1130 * coff64-rs6000.c: Likewise.
1131 * dwarf2.c (struct line_info): Add discriminator field.
1132 (add_line_info): Fill in new discriminator field.
1133 (decode_line_info): Record discriminator information instead
44534af3 1134 of ignoring it.
9b8d1a36 1135 (lookup_address_in_line_info_table): Return discriminator field if
44534af3 1136 requested.
9b8d1a36
CC
1137 (comp_unit_find_nearest_line): Add discriminator argument.
1138 (find_line): Likewise.
1139 (_bfd_dwarf2_find_nearest_line): Likewise.
1140 (_bfd_dwarf2_find_line): Likewise.
1141 * elf-bfd.h (_bfd_elf_find_nearest_line_discriminator): New.
44534af3
AM
1142 (_bfd_elf_find_line_discriminator): Likewise.
1143 (_bfd_generic_find_nearest_line_discriminator): Likewise. Defined.
9b8d1a36 1144 * elf.c (_bfd_elf_find_nearest_line): Change to a wrapper
44534af3
AM
1145 that invokes _bfd_elf_find_nearest_line_discriminator with correct
1146 arguments.
9b8d1a36
CC
1147 (_bfd_elf_find_nearest_line_discriminator): New.
1148 (_bfd_elf_find_line): Change to a wrapper
44534af3
AM
1149 that invokes _bfd_elf_find_line_discriminator with correct
1150 arguments.
9b8d1a36
CC
1151 (_bfd_elf_find_line_discriminator): New.
1152 * coffgen.c (coff_find_nearest_line_with_names): Handle
44534af3 1153 new discriminator argument.
9b8d1a36
CC
1154 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
1155 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
1156 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
1157 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
1158 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Add discriminator
44534af3
AM
1159 argument.
1160 (_bfd_dwarf2_find_line): Likewise.
1161 (_bfd_generic_find_nearest_line_discriminator): New.
9b8d1a36
CC
1162 * libbfd.c (_bfd_generic_find_nearest_line_discriminator): New.
1163 * bfd-in2.h: Regenerated.
1164 * libbfd.h: Likewise.
1165 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize
44534af3
AM
1166 _bfd_find_nearest_line_discriminator with
1167 _bfd_generic_find_nearest_line_discriminator.
1168 (bfd_target): Add _bfd_find_nearest_line_discriminator.
9b8d1a36 1169
082d1122
NC
11702012-07-24 Sean Keys <skeys@ipdatasys.com>
1171
44534af3 1172 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Added code
082d1122 1173 that enables the linker to offset addresses, when linking against
44534af3 1174 symbols from the XGATE processor and vice versa.
082d1122 1175
d86492f2
NC
11762012-07-23 Nick Clifton <nickc@redhat.com>
1177
1178 * cisco-core.c (cisco_core_file_failing_command): Make static.
1179 (cisco_core_file_failing_signal): Make static.
1180
7c960184
L
11812012-07-18 H.J. Lu <hongjiu.lu@intel.com>
1182
1183 * bfd-in2.h: Regenerated.
1184
c06fc9eb
L
11852012-07-18 Nicolàs Alejandro Di Risio <sheeva@tiscali.it>
1186
1187 PR binutils/14335
1188 * section.c: Fix a typo in comments.
1189
470b557a
AK
11902012-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
1191
1192 * elf64-s390.c: Include elf-s390-common.c.
1193 (R_390_IRELATIVE): New reloc.
1194 (elf_s390_reloc_type_lookup): Support R_390_IRELATIVE.
1195 (RELA_ENTRY_SIZE): New macro.
1196 (elf_s390_link_hash_entry): New fields ifunc_resolver_address and
1197 *ifunc_resolver_section.
1198 (struct plt_entry): New struct.
1199 (struct elf_s390_obj_tdata): New field local_plt.
1200 (elf_s390_local_plt): New macro.
1201 (struct elf_s390_link_hash_table): New field irelifunc.
1202 (ELF64): New macro.
1203 (link_hash_newfunc): Initialize new fields.
1204 (elf_s390_check_relocs): Handle IFUNC symbols.
1205 (elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC
1206 symbols.
1207 (allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for
1208 IFUNC symbols.
1209 (elf_s390_size_dynamic_sections): Handle IFUNC symbols.
1210 (elf_s390_relocate_section): Likewise.
1211 (elf_s390_finish_dynamic_symbol): Likewise.
1212 (elf_s390_finish_dynamic_sections): Handle local IFUNC symbols.
1213 (elf_s390_finish_ifunc_symbol): New function.
1214 (elf_s390_gc_sweep_hook): Handle local plt entries.
1215 (elf_backend_add_symbol_hook): Define.
1216 * elf32-s390.c: See elf64-s390.c changes.
1217 * elf-s390-common.c: New file.
1218 * bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field.
1219 * libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for
1220 BFD_RELOC_390_IRELATIVE.
1221 * reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation.
1222
2c3fc389
NC
12232012-07-13 Nick Clifton <nickc@redhat.com>
1224
1225 * aix386-core.c: Remove use of PTR and PARAMS macros.
1226 * archive.c: Likewise.
1227 * cache.c: Likewise.
1228 * cisco-core.c: Likewise.
1229 * coff-alpha.c: Likewise.
1230 * coff-apollo.c: Likewise.
1231 * coff-aux.c: Likewise.
1232 * coff-h8300.c: Likewise.
1233 * coff-h8500.c: Likewise.
1234 * coff-i386.c: Likewise.
1235 * coff-i960.c: Likewise.
1236 * coff-ia64.c: Likewise.
1237 * coff-m68k.c: Likewise.
1238 * coff-m88k.c: Likewise.
1239 * coff-mcore.c: Likewise.
1240 * coff-mips.c: Likewise.
1241 * coff-or32.c: Likewise.
1242 * coff-ppc.c: Likewise.
1243 * coff-rs6000.c: Likewise.
1244 * coff-sh.c: Likewise.
1245 * coff-sparc.c: Likewise.
1246 * coff-stgo32.c: Likewise.
1247 * coff-tic30.c: Likewise.
1248 * coff-tic4x.c: Likewise.
1249 * coff-tic54x.c: Likewise.
1250 * coff-tic80.c: Likewise.
1251 * coff-w65.c: Likewise.
1252 * cofflink.c: Likewise.
1253 * cpu-arc.c: Likewise.
1254 * cpu-cris.c: Likewise.
1255 * cpu-h8500.c: Likewise.
1256 * cpu-i960.c: Likewise.
1257 * cpu-msp430.c: Likewise.
1258 * cpu-ns32k.c: Likewise.
1259 * cpu-powerpc.c: Likewise.
1260 * cpu-rs6000.c: Likewise.
1261 * cpu-tic4x.c: Likewise.
1262 * cpu-w65.c: Likewise.
1263 * ecoff.c: Likewise.
1264 * ecofflink.c: Likewise.
1265 * elf-m10200.c: Likewise.
1266 * elf32-bfin.c: Likewise.
1267 * elf32-cris.c: Likewise.
1268 * elf32-crx.c: Likewise.
1269 * elf32-fr30.c: Likewise.
1270 * elf32-frv.c: Likewise.
1271 * elf32-h8300.c: Likewise.
1272 * elf32-i960.c: Likewise.
1273 * elf32-m32c.c: Likewise.
1274 * elf32-m68hc11.c: Likewise.
1275 * elf32-m68hc12.c: Likewise.
1276 * elf32-m68hc1x.c: Likewise.
1277 * elf32-m68k.c: Likewise.
1278 * elf32-mcore.c: Likewise.
1279 * elf32-rl78.c: Likewise.
1280 * elf32-rx.c: Likewise.
1281 * elf32-s390.c: Likewise.
1282 * elf32-vax.c: Likewise.
1283 * elf64-alpha.c: Likewise.
1284 * elf64-mmix.c: Likewise.
1285 * elf64-s390.c: Likewise.
1286 * elf64-sparc.c: Likewise.
1287 * elfnn-ia64.c: Likewise.
1288 * elfxx-mips.c: Likewise.
1289 * elfxx-sparc.c: Likewise.
1290 * hash.c: Likewise.
1291 * hp300hpux.c: Likewise.
1292 * hppabsd-core.c: Likewise.
1293 * hpux-core.c: Likewise.
1294 * i386dynix.c: Likewise.
1295 * i386linux.c: Likewise.
1296 * i386lynx.c: Likewise.
1297 * i386mach3.c: Likewise.
1298 * i386msdos.c: Likewise.
1299 * i386os9k.c: Likewise.
1300 * irix-core.c: Likewise.
1301 * lynx-core.c: Likewise.
1302 * m68klinux.c: Likewise.
1303 * mach-o.h: Likewise.
1304 * mipsbsd.c: Likewise.
1305 * netbsd-core.c: Likewise.
1306 * nlm32-i386.c: Likewise.
1307 * osf-core.c: Likewise.
1308 * pc532-mach.c: Likewise.
1309 * pef.c: Likewise.
1310 * ppcboot.c: Likewise.
1311 * ptrace-core.c: Likewise.
1312 * reloc16.c: Likewise.
1313 * sco5-core.c: Likewise.
1314 * som.h: Likewise.
1315 * sparclinux.c: Likewise.
1316 * sparclynx.c: Likewise.
1317 * ticoff.h: Likewise.
1318 * trad-core.c: Likewise.
1319 * vms-lib.c: Likewise.
1320 * xsym.h: Likewise.
1321
14160578
AM
13222012-07-09 Alan Modra <amodra@gmail.com>
1323
1324 PR ld/14323
1325 * elflink.c (elf_sort_symbol): Sort by size too.
1326 (elf_link_add_object_symbols <weakdefs>): Simplify binary search.
1327 Do not depend on ordering of symbol aliases. Match largest size.
1328
1c52a645
L
13292012-07-03 H.J. Lu <hongjiu.lu@intel.com>
1330
1331 * elf.c (assign_section_numbers): Check if number of sections
1332 >= SHN_LORESERVE.
1333 * elfcode.h (elf_object_p): Likewise.
1334
5f8ebec5
NC
13352012-07-03 Nick Clifton <nickc@redhat.com>
1336
1337 * archive.c (bsd_write_armap): Catch attempts to create an archive
1338 with indicies bigger than 4Gb.
1339 (coff_write_armap): Likewise.
1340
5a5ed5b0
L
13412012-07-03 H.J. Lu <hongjiu.lu@intel.com>
1342
1343 PR binutils/14319
1344 * elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty
1345 debug section.
1346
90c984fc
L
13472012-07-03 H.J. Lu <hongjiu.lu@intel.com>
1348
1349 PR ld/3351
1350 * elflink.c (_bfd_elf_update_dynamic_flags): New.
1351 (_bfd_elf_merge_symbol): Update both real and indirect symbol
1352 dynamic flags.
1353 (_bfd_elf_add_default_symbol): Make the real symbol dynamic if
1354 the indirect symbol is defined in a shared library.
1355 (elf_link_add_object_symbols): Likewise. If the indirect
1356 symbol has been forced local, don't make the real symbol
1357 dynamic.
1358 (elf_link_check_versioned_symbol): Check indirect symbol.
1359 (elf_link_output_extsym): Use real symbol definition when
1360 reporting indirect symbol error. Check version info for
1361 dynamic versioned symbol.
1362
3146fac4
AM
13632012-07-03 Alan Modra <amodra@gmail.com>
1364
1365 PR ld/14207
1366 * elf.c (assign_file_positions_for_load_sections): Remove assertions
1367 that only PT_LOAD headers include file header and section headers.
1368 (assign_file_positions_for_non_load_sections): Similarly don't
1369 assert PT_GNU_RELRO header does not include file and section headers.
1370 Compare first section vma rather than PT_LOAD p_vaddr against
1371 relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace
1372 abort with assertion.
1373
87e0a731
AM
13742012-07-02 Alan Modra <amodra@gmail.com>
1375
1376 * elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section
1377 "anyway" variant when creating .plt.
1378 (m32c_elf_relax_plt_section): Remove redundant test and unused param.
1379 (m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling
1380 m32c_elf_relax_plt_section.
1381 * elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant
1382 when creating .got and .got.plt.
1383 (_bfd_mips_elf_final_link): Likewise for .rtproc, and use
1384 bfd_get_linker_section.
1385 * sunos.c: Similarly throughout.
1386
bc823199
AS
13872012-07-01 Andreas Schwab <schwab@linux-m68k.org>
1388
1389 * elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error
1390 message.
1391
a040981f
L
13922012-06-29 H.J. Lu <hongjiu.lu@intel.com>
1393
1394 * elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE
1395 on unresolvable relocation.
1396
d5abbdf3
L
13972012-06-29 H.J. Lu <hongjiu.lu@intel.com>
1398
1399 * archive.c (_bfd_compute_and_write_armap): Simplify global
1400 symbol handling.
1401
a8c887dd
NC
14022012-06-29 Nick Clifton <nickc@redhat.com>
1403
1404 PR ld/14189
1405 * elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount
1406 for locally bound symbols.
1407
3d4d4302
AM
14082012-06-29 Alan Modra <amodra@gmail.com>
1409
1410 * section.c (bfd_get_linker_section): New function.
1411 * elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use
1412 the above throughout rather than bfd_get_section_by_name. Use
1413 bfd_make_section_anyway rather than bfd_make_section when creating
1414 them.
1415 * elf32-bfin.c: Likewise.
1416 * elf32-cr16.c: Likewise.
1417 * elf32-cris.c: Likewise.
1418 * elf32-frv.c: Likewise.
1419 * elf32-hppa.c: Likewise.
1420 * elf32-i370.c: Likewise.
1421 * elf32-i386.c: Likewise.
1422 * elf32-lm32.c: Likewise.
1423 * elf32-m32c.c: Likewise.
1424 * elf32-m32r.c: Likewise.
1425 * elf32-m68k.c: Likewise.
1426 * elf32-microblaze.c: Likewise.
1427 * elf32-ppc.c: Likewise.
1428 * elf32-rl78.c: Likewise.
1429 * elf32-s390.c: Likewise.
1430 * elf32-score.c: Likewise.
1431 * elf32-score7.c: Likewise.
1432 * elf32-sh.c: Likewise.
1433 * elf32-tic6x.c: Likewise.
1434 * elf32-tilepro.c: Likewise.
1435 * elf32-vax.c: Likewise.
1436 * elf32-xstormy16.c: Likewise.
1437 * elf32-xtensa.c: Likewise.
1438 * elf64-alpha.c: Likewise.
1439 * elf64-hppa.c: Likewise.
1440 * elf64-ia64-vms.c: Likewise.
1441 * elf64-ppc.c: Likewise.
1442 * elf64-s390.c: Likewise.
1443 * elf64-sh64.c: Likewise.
1444 * elf64-sparc.c: Likewise.
1445 * elf64-x86-64.c: Likewise.
1446 * elfnn-ia64.c: Likewise.
1447 * elfxx-mips.c: Likewise.
1448 * elfxx-sparc.c: Likewise.
1449 * elfxx-tilegx.c: Likewise.
1450 * elflink.c: Likewise.
1451 * elf-vxworks.c: Likewise.
1452 * elf-m10300.c: Likewise. Also make use of htab plt, got and
1453 gotplt shortcuts.
1454 * bfd-in2.h: Regenerate.
1455 * elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when
1456 calling create_rofixup_section.
1457 * elflink.c (bfd_elf_final_link): Simplify test for .dynstr.
1458
66e17d7f
AM
14592012-06-29 Alan Modra <amodra@gmail.com>
1460
1461 * elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela
1462 section for bss type sections, except for .rela.bss.
1463 * elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
1464 * elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise.
1465 * elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise.
1466 * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise.
1467 * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise.
1468
6034aab8
RM
14692012-06-28 Roland McGrath <mcgrathr@google.com>
1470
1471 * elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for
1472 displacement calculation in nacl_p case.
1473
4c6a93d3
NC
14742012-06-28 Nick Clifton <nickc@redhat.com>
1475
1476 * po/uk.po: New Ukranian translation.
1477 * configure.in (ALL_LINGUAS): Add uk.
1478 * configure: Regenerate.
1479
a4fd3de5
AM
14802012-06-26 Alan Modra <amodra@gmail.com>
1481
1482 * elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input
1483 file has multiple .got/.toc sections and all don't fit in
1484 current toc group.
1485
62655c7b
RM
14862012-06-22 Roland McGrath <mcgrathr@google.com>
1487
1488 * elf.c (assign_file_positions_for_non_load_sections): Define
1489 __ehdr_start symbol if it's referenced and there's a PT_LOAD
1490 segment that covers both the file and program headers.
1491
b70e7a2f
AS
14922012-06-22 Andreas Schwab <schwab@linux-m68k.org>
1493
1494 * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make
1495 _GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute.
1496
27fc25a1
AM
14972012-06-22 Alan Modra <amodra@gmail.com>
1498
1499 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line
1500 save/restore functions when relocatable. Make "funcs" static.
1501
51806b97
HPN
15022012-06-18 Hans-Peter Nilsson <hp@axis.com>
1503
1504 * elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence
1505 of merged .got and .got.plt entries.
1506
46691134
AM
15072012-06-18 John Szakmeister <john@szakmeister.net>
1508
1509 * elf32-arm.c (elf32_arm_final_link_relocate): Correct return value.
1510
26a48bb3
HPN
15112012-06-17 Hans-Peter Nilsson <hp@axis.com>
1512
1513 * elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE>
1514 <R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to
1515 thread common symbols.
1516
5968a7b8
NC
15172012-06-13 Nick Clifton <nickc@redhat.com>
1518
1519 * elf32-arm.c (bfd_arm_get_mach_from_attributes): New function.
1520 (elf32_arm_object_p): If the machine number could not be deduced
1521 from the notes, call bfd_arm_get_mach_from_attributes to get the
1522 number from the attributes.
1523
8981c88a
L
15242012-06-12 H.J. Lu <hongjiu.lu@intel.com>
1525
1526 PR bfd/14207
1527 * elf.c (assign_file_positions_for_non_load_sections): Abort if
1528 PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
1529
3832a4d8
AM
15302012-06-12 Alan Modra <amodra@gmail.com>
1531
1532 PR ld/14207
1533 * elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type
1534 sections at end of PT_LOAD segment when searching for segment
1535 that contains end of relro extent.
1536
f3944f72
L
15372012-06-11 H.J. Lu <hongjiu.lu@intel.com>
1538
1539 * elf.c (assign_file_positions_for_non_load_sections): Reindent.
1540
be01b344
L
15412012-06-11 H.J. Lu <hongjiu.lu@intel.com>
1542
1543 * elf.c (_bfd_elf_map_sections_to_segments): Reindent.
1544
ffbc01cc
AM
15452012-06-06 Alan Modra <amodra@gmail.com>
1546
1547 * elflink.c (elf_link_input_bfd): Provide a file symbol for
1548 each input file with local syms, if the input lacks such.
1549 (bfd_elf_final_link): Add a file symbol to mark end of locals
1550 for which we can associate with input files.
1551 (struct elf_final_link_info): Add filesym_count field.
1552 (struct elf_outext_info): Add need_second_pass and second_pass.
1553 (elf_link_output_extsym): Detect symbols defined in the output
1554 file, emit them on second pass over locals.
1555
fe78531d
JK
15562012-06-04 Jan Kratochvil <jan.kratochvil@redhat.com>
1557
1558 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
1559 of target_read_memory as bfd_size_type.
1560 * bfd-in2.h: Regenerate.
1561 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
1562 argument of target_read_memory as bfd_size_type.
1563 (_bfd_elf32_bfd_from_remote_memory): Likewise.
1564 (_bfd_elf64_bfd_from_remote_memory): Likewise.
1565 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
1566 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
1567
aef36ac1
AM
15682012-06-03 Alan Modra <amodra@gmail.com>
1569
1570 PR binutils/13897
1571 * elf.c (elf_find_function): Cache last function sym info.
1572 (_bfd_elf_maybe_function_sym): Return function size, pass in
1573 section of interest.
1574 * elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise.
1575 (_bfd_elf_maybe_function_sym): Likewise.
1576 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
1577 (opd_entry_value): Add in_code_sec param. Revert caching code.
1578 Return -1 if in_code_sec and function found in wrong section.
1579 Update all calls.
1580
5299c1c4
JK
15812012-06-01 Siddhesh Poyarekar <siddhesh@redhat.com>
1582
1583 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
1584 of target_read_memory as size_t.
1585 * bfd-in2.h: Regenerate.
1586 * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
1587 argument of target_read_memory as size_t.
1588 (_bfd_elf32_bfd_from_remote_memory): Likewise.
1589 (_bfd_elf64_bfd_from_remote_memory): Likewise.
1590 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
1591 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
1592
ee1e4ede
AM
15932012-06-01 Alan Modra <amodra@gmail.com>
1594
1595 PR binutils/13897
1596 * elf64-ppc.c (opd_entry_value): Rewrite cache code.
1597
6f0c7050
TT
15982012-05-29 Tom Tromey <tromey@redhat.com>
1599
1600 * opncls.c (bfd_fopen): Always close fd on failure.
1601 (bfd_fdopenr): Likewise.
1602
f5eda473
AM
16032012-05-27 Alan Modra <amodra@gmail.com>
1604
1605 PR ld/14170
1606 * elflink.c (_bfd_elf_merge_symbol): When a symbol defined in
1607 a dynamic library finds a new instance with non-default
1608 visibility in a regular object, correctly handle symbols
1609 already on the undefs list and undo dynamic symbol state when
1610 the new symbol is hidden or internal.
1611
bbf96e4e
L
16122012-05-25 H.J. Lu <hongjiu.lu@intel.com>
1613
1614 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't use
1615 dynamic_sec_flags to create PLT .eh_frame section.
1616 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1617
9a2a56cc
AM
16182012-05-25 Alan Modra <amodra@gmail.com>
1619
1620 PR ld/13909
1621 * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
1622 (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
1623 * elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
1624 * elflink.c (bfd_elf_size_dynamic_sections): Let the backend
1625 size dynamic sections before stripping eh_frame_hdr.
1626 (bfd_elf_gc_sections): Handle multiple .eh_frame sections.
1627 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
1628 if no other .eh_frame sections exist.
1629 * elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
1630 * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
1631 or alloc plt_eh_frame here..
1632 (elf_i386_size_dynamic_sections): ..do it here instead. Don't
1633 specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
1634 (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
1635 before writing plt offset.
1636 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
1637 or alloc plt_eh_frame here..
1638 (elf_x86_64_size_dynamic_sections): ..do it here instead.
1639 (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
1640 before writing plt offset.
1641
4bbe044a
AM
16422012-05-24 Alan Modra <amodra@gmail.com>
1643
1644 PR ld/14158
1645 * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
1646 size to output section alignment.
1647 (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
1648
89b2bec8
AM
16492012-05-23 Alan Modra <amodra@gmail.com>
1650
1651 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
44534af3 1652 BFDs with multiple .eh_frame sections.
89b2bec8 1653
259b427a
AM
16542012-05-23 Alan Modra <amodra@gmail.com>
1655
1656 PR ld/13909
1657 * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
1658
e4de50d4
L
16592012-05-22 H.J. Lu <hongjiu.lu@intel.com>
1660
1661 PR ld/13909
1662 * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
1663 last change.
1664 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1665
7e01508c
AM
16662012-05-22 Alan Modra <amodra@gmail.com>
1667
1668 * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
1669 first one is zero size or discarded.
1670 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
1671 glink_eh_frame contents here..
1672 (ppc_elf_finish_dynamic_sections): ..rather than here. Just set
1673 offset to .glink.
1674
5d4f7eb2
L
16752012-05-22 H.J. Lu <hongjiu.lu@intel.com>
1676
1677 PR ld/13909
1678 * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
1679 eh_frame section if there is an input .eh_frame section.
1680 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1681
2fe0fd06
L
16822012-05-22 H.J. Lu <hongjiu.lu@intel.com>
1683
1684 PR ld/14105
1685 * elf32-i386.c (elf_i386_create_dynamic_sections): Always
1686 create PLT eh_frame section with SEC_LINKER_CREATED.
1687 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
1688
90061c33
AM
16892012-05-22 Alan Modra <amodra@gmail.com>
1690
1691 * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
1692 sections attached to a BFD.
1693 * section.c (bfd_get_section_by_name): Rewrite description.
1694 (bfd_get_next_section_by_name): New function.
1695 * bfd-in2.h: Regenerate.
1696
8bbeae90
AS
16972012-05-21 Andreas Schwab <schwab@linux-m68k.org>
1698
1699 * elf32-m68k.c (elf_m68k_grok_prstatus): New function.
1700 (elf_m68k_grok_psinfo): New function.
1701 (elf_backend_grok_prstatus): Define.
1702 (elf_backend_grok_psinfo): Define.
1703
a44acb1e
MR
17042012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1705
1706 * elf64-mips.c (elf_backend_got_header_size): Correct definition.
1707 * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF
1708 backend's GOT header size instead of hardcoding it.
1709
751c1fe7
MR
17102012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1711
1712 * elf32-vax.c (elf_vax_relocate_section)
1713 <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again.
1714
ddd74d3c
MR
17152012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1716
1717 * elf32-vax.c (elf_vax_relocate_section)
1718 <R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than
1719 its name as the check for text sections.
1720
b0189df0
MR
17212012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
1722
1723 * elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure
1724 the third reloc offset is the same as the first.
1725
94caa966
AM
17262012-05-19 Alan Modra <amodra@gmail.com>
1727
1728 * elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete.
1729 (has_tls_reloc, has_tls_get_addr_call): Move back to..
1730 * elf32-ppc.c: ..here.
1731 (ppc_elf_section_flags, elf_backend_section_flags): Delete.
1732 (ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections.
1733
220cf809
L
17342012-05-18 H.J. Lu <hongjiu.lu@intel.com>
1735
1736 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make
1737 _DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute.
1738 * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
1739
3a11e31e
RM
17402012-05-18 Roland McGrath <mcgrathr@google.com>
1741
1742 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as
1743 not to clobber the ar_fmag field stored in ARED->arch_header.
1744
2a0bfc8d
PA
17452012-05-18 Pedro Alves <palves@redhat.com>
1746
1747 * mach-o.h: Don't include sysdep.h.
1748
0bee45d9
NC
17492012-05-18 Nick Clifton <nickc@redhat.com>
1750
1751 PR 14072
1752 * bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before
1753 complaining about config.h not having been included.
1754 * bfd-in2.h: Regenerate.
1755
f2c621e4
AS
17562012-05-18 Andreas Schwab <schwab@linux-m68k.org>
1757
1758 * aclocal.m4: Regenerate.
1759 * Makefile.in: Regenerate.
1760
df7b86aa
NC
17612012-05-17 Daniel Richard G. <skunk@iskunk.org>
1762 Nick Clifton <nickc@redhat.com>
1763
1764 PR 14072
1765 * configure.in: Add check that sysdep.h has been included before
1766 any system header files.
1767 * configure: Regenerate.
1768 * config.in: Regenerate.
1769 * aclocal.m4: Regenerate.
1770 * bfd-in.h: Generate an error if included before config.h.
1771 * sysdep.h: Likewise.
1772 * bfd-in2.h: Regenerate.
1773 * compress.c: Remove #include "config.h".
1774 * plugin.c: Likewise.
1775 * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h.
1776 * elf64-hppa.c: Likewise.
1777 * som.c: Likewise.
1778 * xsymc.c: Likewise.
1779
2633a79c
AM
17802012-05-17 Maciej W. Rozycki <macro@linux-mips.org>
1781 Alan Modra <amodra@gmail.com>
1782
1783 * elf.c (ignore_section_sym): Correct comment. Don't return
1784 true for absolute section.
1785 (elf_map_symbols): Move stray comment. Adjust for above change.
1786 Don't discard global section symbols.
1787
ab6dce23
AM
17882012-05-17 Alan Modra <amodra@gmail.com>
1789
1790 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC,
1791 _GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute.
1792 * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC
1793 absolute.
1794
e1dad58d
AM
17952012-05-17 Alan Modra <amodra@gmail.com>
1796
1797 * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns,
1798 is_ppc_vle): Move to..
1799 * elf32-ppc.h: ..here, making is_ppc_vle a macro.
1800
a0f49396
NC
18012012-05-16 Sergio Durigan Junior <sergiodj@redhat.com>
1802
1803 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
1804 bfd_get_section_lma, bfd_get_section_alignment,
1805 bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
1806 in order to use the `bfd' argument.
1807 * bfd-in2.h: Regenerate.
1808 * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
1809 as the first argument for `bfd_get_section_alignment'.
1810 * elf32-arm.c (create_ifunc_sections): Likewise, for
1811 `bfd_set_section_alignment'.
1812 * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
1813 `bfd_get_section_name'.
1814 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
1815 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1816 (ppc_elf_relocate_section): Likewise.
1817 * elf64-mmix.c (mmix_final_link_relocate): Likewise, for
1818 `bfd_get_section_vma'.
1819 * elf64-ppc.c (create_linkage_sections): Likewise, for
1820 `bfd_set_section_alignment'.
1821
40551fb8
NC
18222012-05-16 Georg-Johann Lay <avr@gjlay.de>
1823
1824 PR target/13503
1825 * reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
1826 * bfd-in2.h: Regenerate.
53d8967a 1827 * libbfd.h: Regenerate.
40551fb8
NC
1828 * elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to
1829 R_AVR_8_HLO8.
1830 (avr_reloc_map): Likewise.
1831
691bf19c
NC
18322012-05-16 Daniel Richard G. <skunk@iskunk.org>
1833
1834 PR binutils/13558
1835 * bfd/aout-cris.c: Include sysdep.h before bfd.h.
1836 * bfd/aout-ns32k.c: Likewise.
1837 * bfd/aout-sparcle.c: Likewise.
1838 * bfd/aout0.c: Likewise.
1839 * bfd/bfd-in2.h: Likewise.
1840 * bfd/coff-stgo32.c: Likewise.
1841 * bfd/cpu-lm32.c: Likewise.
1842 * bfd/cpu-microblaze.c: Likewise.
1843 * bfd/cpu-score.c: Likewise.
1844 * bfd/cpu-tilegx.c: Likewise.
1845 * bfd/cpu-tilepro.c: Likewise.
1846 * bfd/elf32-lm32.c: Likewise.
1847 * bfd/elf32-microblaze.c: Likewise.
1848 * bfd/elf32-score7.c: Likewise.
1849 * bfd/elf32-tilepro.c: Likewise.
1850 * bfd/elfxx-tilegx.c: Likewise.
1851 * bfd/mach-o.h: Likewise.
1852 * bfd/nlm32-ppc.c: Likewise.
1853 * bfd/ns32knetbsd.c: Likewise.
1854 * bfd/pef.h: Likewise.
1855 * bfd/plugin.c: Likewise.
1856 * bfd/stab-syms.c: Likewise.
1857 * bfd/sunos.c: Likewise.
1858 * bfd/syms.c: Likewise.
1859 * bfd/xsym.h: Likewise.
1860
8b127cbc
AM
18612012-05-16 Alan Modra <amodra@gmail.com>
1862
1863 * elflink.c: Rename flaginfo to flinfo throughout, except..
1864 (bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo.
1865 Formatting, style. Simplify flag match.
1866
a2a50954
AM
18672012-05-16 Alan Modra <amodra@gmail.com>
1868
1869 * dwarf2.c: Formatting.
1870 (arange_add): Pass in unit rather than bfd. Update callers.
1871 Ignore empty ranges. Don't ask for cleared memory.
1872 (parse_comp_unit): Only set unit->base_address if processing
1873 DW_TAG_compile_unit.
1874 (find_debug_info): Optimise section lookup.
1875 (place_sections): Use bfd_alloc for stash->adjusted_sections.
1876 (find_line): Match previously parsed comp unit addresses as we
1877 do for newly parsed comp units.
1878
df35687a
AM
18792012-05-16 Alan Modra <amodra@gmail.com>
1880
1881 * archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf
1882 stops at end of ar_size field.
1883
eee3b786
AM
18842012-05-16 Alan Modra <amodra@gmail.com>
1885
44534af3
AM
1886 PR ld/13962
1887 PR ld/7023
eee3b786
AM
1888 * elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is
1889 out of range. As a special case, fix sh_info for zero sh_size.
1890 Do the same for .symtab.
1891
6927f982
NC
18922012-05-15 James Murray <jsm@jsm-net.demon.co.uk>
1893 Stephane Carrez <stcarrez@nerim.fr>
1894
1895 * archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg.
1896 * config.bfd: Likewise.
1897 * cpu-m9s12x.c: New.
1898 * cpu-m9s12xg.c: New.
1899 * elf32-m68hc12.c: Add S12X and XGATE co-processor support.
1900 Add option to offset S12 addresses into XGATE memory space.
1901 Fix carry bug in IMM16 (IMM8 low/high) relocate.
1902 * Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg.
1903 (ALL_MACHINES_CFILES): Likewise.
1904 * reloc.c: Add S12X relocs.
1905 * Makefile.in: Regenerate.
1906 * bfd-in2.h: Regenerate.
1907 * libbfd.h: Regenerate.
1908
b9c361e0
JL
19092012-05-14 James Lemke <jwlemke@codesourcery.com>
1910 Catherine Moore <clm@codesourcery.com>
1911
1912 * bfd.c (bfd_lookup_section_flags): Add section parm.
1913 * ecoff.c (bfd_debug_section): Remove flag_info initializer.
1914 * elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
1915 (bfd_elf_lookup_section_flags): Add section parm.
1916 * elf32-ppc.c (is_ppc_vle): New function.
1917 (ppc_elf_modify_segment_map): New function.
1918 (elf_backend_modify_segment_map): Define.
1919 (has_vle_insns): New define.
1920 * elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
1921 * elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
1922 Move in logic to omit / include a section.
1923 * libbfd-in.h (bfd_link_info): Add section parm.
1924 (bfd_generic_lookup_section_flags): Likewise.
1925 * reloc.c (bfd_generic_lookup_section_flags): Likewise.
1926 * section.c (bfd_section): Move out section_flag_info.
1927 (BFD_FAKE_SECTION): Remove flag_info initializer.
1928 * targets.c (_bfd_lookup_section_flags): Add section parm.
1929
19302012-05-14 Catherine Moore <clm@codesourcery.com>
1931
1932 * archures.c (bfd_mach_ppc_vle): New.
1933 * bfd-in2.h: Regenerated.
1934 * cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
1935 * elf32-ppc.c (split16_format_type): New enumeration.
1936 (ppc_elf_vle_split16): New function.
1937 (HOWTO): Add entries for R_PPC_VLE relocations.
1938 (ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
1939 (ppc_elf_section_flags): New function.
1940 (ppc_elf_lookup_section_flags): New function.
1941 (ppc_elf_section_processing): New function.
1942 (ppc_elf_check_relocs): Handle PPC_VLE relocations.
1943 (ppc_elf_relocation_section): Likewise.
1944 (elf_backend_lookup_section_flags_hook): Define.
1945 (elf_backend_section_flags): Define.
1946 (elf_backend_section_processing): Define.
6927f982 1947 * elf32-ppc.h (ppc_elf_section_processing): Declare.
b9c361e0
JL
1948 * libbfd.h: Regenerated.
1949 * reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
1950 BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
1951 BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
1952 BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
1953 BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
1954 BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
1955 BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
1956 BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
1957 BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
1958
8b127cbc 19592012-05-11 Georg-Johann Lay <avr@gjlay.de>
99700d6f
NC
1960
1961 PR target/13503
1962 * reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
1963 BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
1964 * bfd-in2.h: Regenerate.
a38a07e0 1965 * libbfd.h: Regenerate.
99700d6f
NC
1966 * elf32-avr.c (elf_avr_howto_table): Add entries for
1967 R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
1968 (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
1969 R_AVR_8_HHI8.
1970
268a8d3a
L
19712012-05-10 H.J. Lu <hongjiu.lu@intel.com>
1972
1973 * elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32
1974 addend overflow check.
1975
74b1e045
DD
19762012-05-10 DJ Delorie <dj@redhat.com>
1977
1978 * elf32-rx.c (rx_elf_object_p): Ignore empty segments.
1979
6f2c9068
L
19802012-05-10 H.J. Lu <hongjiu.lu@intel.com>
1981
1982 * elf64-x86-64.c (elf_x86_64_relocate_section): Display signed
1983 hex number in x32 addend overflow check.
1984
1da80baa
L
19852012-05-10 H.J. Lu <hongjiu.lu@intel.com>
1986
1987 * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
1988 R_X86_64_RELATIVE64.
1989
8cf0d2dd
L
19902012-05-09 H.J. Lu <hongjiu.lu@intel.com>
1991
1992 * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
1993 overflow for R_X86_64_RELATIVE64.
1994
2d16d28e
DK
19952012-05-08 Ben Cheng <bccheng@google.com>
1996
8b127cbc 1997 * elf.c: Preserve the original p_align and p_flags if they are
2d16d28e
DK
1998 valid.
1999
2de5d135
AM
20002012-05-07 Alan Modra <amodra@gmail.com>
2001
2002 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Update
2003 RELOC_AGAINST_DISCARDED_SECTION invocation.
2004
a134cc9b
HPN
20052012-05-07 Hans-Peter Nilsson <hp@axis.com>
2006
2007 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use
2008 local variable i_ instead of assuming and using a variable i.
2009
545fd46b
MR
20102012-05-07 Maciej W. Rozycki <macro@linux-mips.org>
2011
2012 * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound
2013 relocations.
2014 * elfxx-mips.c (mips_reloc_against_discarded_section): New
2015 function.
2016 (_bfd_mips_elf_relocate_section): Call it, in place of
2017 RELOC_AGAINST_DISCARDED_SECTION.
2018 * elf-m10200.c (mn10200_elf_relocate_section): Update arguments
2019 to RELOC_AGAINST_DISCARDED_SECTION.
2020 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
2021 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
2022 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
2023 * elf32-bfin.c (bfin_relocate_section): Likewise.
2024 (bfinfdpic_relocate_section): Likewise.
2025 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
2026 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
2027 * elf32-cris.c (cris_elf_relocate_section): Likewise.
2028 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
2029 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
2030 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
2031 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
2032 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2033 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
2034 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
2035 * elf32-i370.c (i370_elf_relocate_section): Likewise.
2036 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2037 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
2038 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
2039 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
2040 * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
2041 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
2042 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
2043 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
2044 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2045 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
2046 * elf32-mep.c (mep_elf_relocate_section): Likewise.
2047 * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
2048 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
2049 * elf32-mt.c (mt_elf_relocate_section): Likewise.
2050 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
2051 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2052 * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
2053 * elf32-rx.c (rx_elf_relocate_section): Likewise.
2054 * elf32-s390.c (elf_s390_relocate_section): Likewise.
2055 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
2056 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
2057 * elf32-sh.c (sh_elf_relocate_section): Likewise.
2058 * elf32-spu.c (spu_elf_relocate_section): Likewise.
2059 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
2060 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
2061 * elf32-v850.c (v850_elf_relocate_section): Likewise.
2062 * elf32-vax.c (elf_vax_relocate_section): Likewise.
2063 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
2064 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
2065 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
2066 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
2067 (elf64_alpha_relocate_section): Likewise.
2068 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
2069 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
2070 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2071 * elf64-s390.c (elf_s390_relocate_section): Likewise.
2072 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
2073 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
2074 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
2075 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
2076 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
2077
62ab84ec
AM
20782012-05-05 Alan Modra <amodra@gmail.com>
2079
2080 PR ld/14052
2081 PR ld/13621
2082 * linker.c (_bfd_nearby_section): Revert 2012-02-13 change.
2083
45dfa85a
AM
20842012-05-05 Alan Modra <amodra@gmail.com>
2085
2086 * aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section,
2087 bfd_und_section and bfd_ind_section with their _ptr variants, or
2088 use corresponding bfd_is_* macros.
2089 * aout-ns32k.c: Likewise.
2090 * aout-tic30.c: Likewise.
2091 * coff-arm.c: Likewise.
2092 * coff-tic54x.c: Likewise.
2093 * cpu-ns32k.c: Likewise.
2094 * elf-attrs.c: Likewise.
2095 * elfcode.h: Likewise.
2096 * peicode.h: Likewise.
2097 * reloc.c: Likewise.
2098 * riscix.c: Likewise.
2099 * versados.c: Likewise.
2100 * section.c: Likewise.
2101 (bfd_abs_section, bfd_ind_section, bfd_com_section,
2102 bfd_ind_section): Delete.
2103 (std_section): New array replacing above.
2104 (bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr,
2105 bfd_ind_section_ptr, STD_SECTION): Update.
2106 (BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts.
36ab465d 2107 * bfd-in2.h: Regenerate.
45dfa85a 2108
f6c1a2d5
NC
21092012-05-03 Sean Keys <skeys@ipdatasys.com>
2110
2111 * cpu-xgate.c: New file. Added XGATE support.
2112 * archures.c (bfd_architecture): Add XGATE architecture.
2113 (bfd_archures_list): Add reference to XGATE architecture info.
2114 * elf-bfd.h (prep_headers): Handle bfd_arch_xgate.
2115 * reloc.c: Add various XGATE relocation enums.
2116 * targets.c (bfd_elf32_xgate_vec): Declare and add to target vector
2117 list.
2118 * Makefile.am: Add support for XGATE elf.
2119 * configure.in: Ditto.
2120 * config.bfd: Ditto.
2121 * Makefile.in: Regenerate.
2122 * configure: Ditto.
2123 * bfd-in2.h: Ditto.
2124 * libbfd.h: Ditto.
2125 Added files for XGATE relocations.
2126 * elf32-xgate.c: Created minimal relocation file.
2127 * elf32-xgate.h: Created minimal header file for elf32-xgate.
2128
fec16237
TG
21292012-05-03 Tristan Gingold <gingold@adacore.com>
2130
2131 * dwarf2.c (decode_line_info): Ignore
2132 DW_LNE_HP_source_file_correlation.
2133
57402f1e
NC
21342012-05-01 Nick Clifton <nickc@redhat.com>
2135
2136 PR binutils/13121
2137 * aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with
2138 AIX system headers.
2139 * coff-ppc.c: Likewise.
2140 * cofflink.c: Likewise.
2141 * elf32-arm.c: Likewise.
2142 * elf64-sparc.c: Likewise.
2143 * elflink.c: Likewise.
2144 * pdp11.c: Likewise.
2145 * rescoff.c: Likewise.
2146
c49ead2f
MW
21472012-04-26 Mark Wielaard <mjw@redhat.com>
2148
2149 * dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc
2150 possibly being relative to DW_AT_low_pc.
2151 (parse_comp_unit): Likewise.
2152
cab0ad83
AS
21532012-04-26 Andreas Schwab <schwab@linux-m68k.org>
2154
2155 * elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references
2156 also when generating PIE.
2157 (elf_m68k_discard_copies): Mark undefined weak symbols referenced
2158 by relocations as dynamic.
2159
2b56b3f3
HPN
21602012-04-26 Hans-Peter Nilsson <hp@axis.com>
2161
2162 Provide a way for programs to recognize BFD_ASSERT calls.
2163 * bfd.c (bfd_assert_handler_type): New API type.
2164 (bfd_set_assert_handler, bfd_get_assert_handler): New API functions.
2165 (_bfd_assert_handler): New variable.
2166 (_bfd_default_assert_handler): New function.
2167 (bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler.
2168 * libbfd-in.h (_bfd_assert_handler): Declare.
2169 * libbfd.h, bfd-in2.h: Regenerate.
2170
27586251
HPN
21712012-04-24 Hans-Peter Nilsson <hp@axis.com>
2172
2173 PR ld/13990
2174 * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
2175 symbol, where PLT refcount is set to -1.
2176
dbaa2011
AM
21772012-04-24 Alan Modra <amodra@gmail.com>
2178
2179 PR ld/13991
8b127cbc 2180 * elf-bfd.h (_bfd_elf_link_just_syms): Define as
dbaa2011 2181 _bfd_generic_link_just_syms.
8b127cbc
AM
2182 * elflink.c (_bfd_elf_link_just_syms): Delete.
2183 * linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
dbaa2011 2184
8b127cbc
AM
2185 * bfd-in.h (discarded_section): Renamed from elf_discarded_section.
2186 * section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
dbaa2011
AM
2187 SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
2188 SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
8b127cbc
AM
2189 * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
2190 * elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
2191 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c,
2192 * elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c,
2193 * elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c,
2194 * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c,
2195 * elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c,
2196 * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c,
2197 * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
2198 * elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c,
2199 * elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c,
2200 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c,
2201 * elf32-score.c, * elf32-score7.c, * elf32-sh.c,
2202 * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
2203 * elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c,
2204 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
2205 * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
2206 * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c,
2207 * elf64-x86-64.c, * elflink.c, * elfnn-ia64.c,
2208 * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c,
2209 * reloc.c: Update all references.
2210 * bfd-in2.h: Regenerate.
dbaa2011 2211
87049b0d
AK
22122012-04-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2213
2214 * elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
2215 * elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
2216
85e02784
TS
22172012-04-19 Thomas Schwinge <thomas@codesourcery.com>
2218
2219 * elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
2220 got_type.
2221 (allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
2222 it.
2223
87458ed2
KK
22242012-04-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
2225
2226 * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
2227 relocations when LE conversion happens on the IE tls symbol.
2228
ea2d813e
RM
22292012-04-17 Roland McGrath <mcgrathr@google.com>
2230
2231 * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
2232 so that 32-byte boundary is a proper instruction boundary.
2233
da03bf4d
TG
22342012-04-17 Tristan Gingold <gingold@adacore.com>
2235
2236 * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
2237 member of an object archive.<
2238
d2226024
TG
22392012-04-17 Tristan Gingold <gingold@adacore.com>
2240
2241 * vms-lib.c (MAX_EKEYLEN): Define.
2242 (MAX_KEYLEN): Fix value.
2243 (vms_write_index): Add comments and fix indentation.
2244 Adjust comparaison. Add assertions. Free kbn_blk.
2245 (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
2246 Compense MAX_KEYLEN adjustment.
2247
cb4437b8
MR
22482012-04-16 Maciej W. Rozycki <macro@linux-mips.org>
2249
2250 * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
2251 (_bfd_mips_elf_check_relocs): Update accordingly.
2252
aed64b35
L
22532012-04-13 Alan Modra <amodra@gmail.com>
2254
2255 PR ld/13947
2256 * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
2257 reloc sections.
2258
2615994e
DM
22592012-04-12 David S. Miller <davem@davemloft.net>
2260
2261 * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
2262 BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
2263 * libbfd.h: Regenerate.
2264 * bfd-in2.h: Likewise.
2265 * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
2266 (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
2267 R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
2268 (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
2269 (_bfd_sparc_elf_check_relocs): Likewise.
2270 (_bfd_sparc_elf_gc_sweep_hook): Likewise.
2271 (_bfd_sparc_elf_relocate_section): Likewise.
2272
b38cadfb
NC
22732012-04-12 Roland McGrath <mcgrathr@google.com>
2274
2275 * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
2276 New variables.
2277 (struct elf32_arm_link_hash_table): New member `nacl_p'.
2278 (elf32_arm_link_hash_table_create): Initialize it.
2279 (elf32_arm_nacl_link_hash_table_create): New function.
2280 (arm_movw_immediate, arm_movt_immediate): New functions.
2281 (elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
2282 (elf32_arm_finish_dynamic_sections): Likewise.
2283 (elf32_arm_output_plt_map_1): Likewise.
2284 (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
2285 New backend vector stanza.
2286 (elf32_arm_nacl_modify_segment_map): New function.
2287 * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
2288 * targets.c: Support bfd_elf32_{big,little}_nacl_vec.
2289 * configure.in: Likewise.
2290 (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
2291 (bfd_elf32_littlearm_nacl_vec): Likewise.
2292 (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
2293 (bfd_elf32_bigarm_symbian_vec): Likewise.
2294 (bfd_elf32_littlearm_symbian_vec): Likewise.
2295 (bfd_elf32_bigarm_vxworks_vec): Likewise.
2296 (bfd_elf32_littlearm_vxworks_vec): Likewise.
2297 * configure: Regenerated.
2298
202e2356
NC
22992012-04-12 Tristan Gingold <gingold@adacore.com>
2300
2301 * elflink.c (elf_link_output_extsym): Add a guard.
2302 (bfd_elf_final_link): Remove assertion.
2303 (bfd_elf_final_link): Add a guard.
2304 * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
2305 (elfNN_vms_section_from_shdr, elfNN_vms_object_p)
2306 (elfNN_vms_post_process_headers, elfNN_vms_section_processing)
2307 (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
2308 Remove.
2309 (elfNN-ia64-vms target): Move to ...
2310 * elf64-ia64-vms.c: New file.
2311 * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
2312 * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
2313 (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
2314 * configure: Regenerate.
2315 * Makefile.in: Regenerate.
2316
4841cf0c
NC
23172012-04-11 Nick Clifton <nickc@redhat.com>
2318
2319 PR binutils/13897
2320 * elf64-ppc.c (opd_entry_value): When dealing with sections
2321 without relocs, keep the last section loaded in order to avoid
2322 unnecessary reloads.
2323
d324f6d6
RM
23242012-04-09 Roland McGrath <mcgrathr@google.com>
2325
2326 * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs.
2327 * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs.
2328 (nacl_modify_program_headers): Likewise.
2329
5a68afcf
RM
23302012-04-03 Roland McGrath <mcgrathr@google.com>
2331
2332 * elf-nacl.c: New file.
2333 * elf-nacl.h: New file.
2334 * elf32-i386.c (elf_backend_modify_segment_map): Define for
2335 bfd_elf32_i386_nacl_vec.
2336 (elf_backend_modify_program_headers): Likewise.
2337 * elf64-x86-64.c (elf_backend_modify_segment_map): Define for
2338 bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
2339 (elf_backend_modify_program_headers): Likewise.
2340 * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
2341 (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
2342 * Makefile.in: Regenerated.
2343 * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
2344 (bfd_elf32_x86_64_nacl_vec): Likewise.
2345 (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
2346 (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
2347 (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
2348 (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
2349 (bfd_elf32_i386_nacl_vec): Likewise.
2350 (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
2351 (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
2352 * configure: Regenerated.
2353
3a4ae681
AS
23542012-03-31 Andreas Schwab <schwab@linux-m68k.org>
2355
2356 * elf32-m68k.c (elf_m68k_relocate_section): Allow
2357 R_68K_TLS_LE{8,16,32} for PIE.
2358
a7e28bbe
AK
23592012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2360
2361 * elf64-s390.c: Fix several comments regarding PLT entry
2362 description.
2363 * elf32-s390.c: Likewise.
2364
f41345a7
AK
23652012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2366
2367 * elf64-s390.c: Use the section pointer shortcuts in
2368 elf_link_hash_table and remove them from the target specific
2369 variant.
2370 * elf32-s390.c: Likewise.
2371
9aa17453
AK
23722012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2373
2374 * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry):
2375 New definitions.
2376 (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove.
2377 (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32.
2378 (elf_s390_finish_dynamic_sections): Likewise.
2379 * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry)
2380 (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry)
2381 (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions.
2382 (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*)
2383 (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove.
2384
00d8c7a9
AK
23852012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2386
2387 * elf32-s390.c (struct elf_s390_dyn_relocs): Remove.
2388 Rename all occurrences in the file to elf_dyn_relocs.
2389 * elf64-s390.c: Likewise.
2390
a66eed7a
AM
23912012-03-30 Alan Modra <amodra@gmail.com>
2392
2393 * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic
2394 libraries.
2395
f67f98b5
AM
23962012-03-29 Alan Modra <amodra@gmail.com>
2397
2398 * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete.
2399 * bfd-in2.h: Regenerate.
2400
e8d2ba53
AM
24012012-03-23 Alan Modra <amodra@gmail.com>
2402
2403 * elf.c (assign_file_positions_for_non_load_sections): Don't warn
2404 on empty alloc sections.
2405
051d833a
AM
24062012-03-23 Alan Modra <amodra@gmail.com>
2407
2408 * linker.c (_bfd_nearby_section): New function, split out from..
2409 (fix_syms): ..here.
2410 * bfd-in.h (_bfd_nearby_section): Declare.
2411 * bfd-in2.h: Regenerate.
2412 * elflink.c (elf_link_input_bfd): Don't use text_index_section or
2413 data_index_section with ld -q or ld -r output relocs against
2414 stripped output sections. Instead use _bfd_nearby_section.
2415
62599110
AM
24162012-03-23 Alan Modra <amodra@gmail.com>
2417
2418 PR binutils/13894
2419 * elf64-ppc.c (opd_entry_value): Read full symbol table when
2420 sym hashes unavailable.
2421
b781d74f
JM
24222012-03-21 Eliot Dresselhaus <eliot@sonic.net>
2423
2424 * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
2425 for non-C6X objects.
2426
17d5dae2
KT
24272012-03-20 Kai Tietz <ktietz@redhat.com>
2428
2429 PR ld/12742
2430 * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
2431 * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
2432 Add windows.h header include if HAVE_WINDOWS_H is defined.
2433 (dlerror): New static function if windows variant is used instead
2434 of dlfcn.h.
2435 (dlclose): Likewise.
2436 (dlopen): Likewise.
2437 (dlsym): Likewise.
2438 * configure: Regenerated.
2439 * config.in: Regenerated.
2440
bdb892b9
L
24412012-03-20 H.J. Lu <hongjiu.lu@intel.com>
2442
2443 PR ld/13880
2444 * elf32-i386.c (elf_i386_relocate_section): Don't issue an error
2445 for R_386_GOTOFF relocation against protected function if
2446 SYMBOLIC_BIND is true.
2447
2448 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
2449 error for R_X86_64_GOTOFF64 relocation against protected function
2450 when building executable or SYMBOLIC_BIND is true.
2451
8059fb19
RM
24522012-03-16 Roland McGrath <mcgrathr@google.com>
2453
2454 * config.bfd: Handle x86_64-*-nacl*.
2455 * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
2456 (bfd_elf32_x86_64_nacl_vec): Likewise.
2457 * targets.c: Support them.
2458 * configure.in: Likewise.
2459 * configure: Regenerated.
2460
ac56ee8f
MGD
24612012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
2462
2463 * elf32-arm.c (elf32_arm_attributes_accept_div): New function.
2464 (elf32_arm_attributes_forbid_div): Likewise.
2465 (elf32_arm_merge_eabi_attributes): Correct handling of
2466 Tag_DIV_use.
2467
eed180f8
RM
24682012-03-15 Roland McGrath <mcgrathr@google.com>
2469
a4456d24
RM
2470 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use
2471 elf_x86_64_backend_data parameters for plt_eh_frame.
2472
eed180f8
RM
2473 * elf64-x86-64.c (struct elf_x86_64_backend_data): New type.
2474 (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros.
2475 (elf_x86_64_arch_bed): New variable.
2476 (elf_backend_arch_data): New macro.
2477 (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE.
2478 (elf_x86_64_allocate_dynrelocs): Likewise.
2479 (elf_x86_64_relocate_section): Likewise.
2480 (elf_x86_64_plt_sym_val): Likewise.
2481 (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data
2482 parameters for PLT details.
2483 (elf_x86_64_finish_dynamic_sections): Likewise.
2484
caa0075c
RM
24852012-03-14 Roland McGrath <mcgrathr@google.com>
2486
2487 * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
2488 to the full size, padding out with nop instructions.
2489
1d7e9d18
AM
24902012-03-12 Alan Modra <amodra@gmail.com>
2491
2492 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
2493 on zero size dynbss symbol.
2494 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
2495 * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
2496 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
2497 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
2498 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
2499 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
2500 * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
2501 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
2502 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
2503 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
2504 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
2505 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
2506 * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
2507 * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
2508 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
2509 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
2510 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
2511 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
2512 * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
2513 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
2514 * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
2515
aea77599
AM
25162012-03-10 Edmar Wienskoski <edmar@freescale.com>
2517
2518 * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
2519 * bfd-in2.h: Regenerate.
2520 * cpu-powerpc.c (bfd_powerpc_archs): Add entries for
2521 bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
2522
56b8aada
L
25232012-03-09 H.J. Lu <hongjiu.lu@intel.com>
2524
2525 PR ld/13817
8b127cbc 2526 * elf32-i386.c (elf_i386_relocate_section): Restore
56b8aada
L
2527 R_386_IRELATIVE.
2528
8b127cbc 2529 * elf64-x86-64.c (elf_x86_64_relocate_section): Restore
56b8aada
L
2530 R_X86_64_IRELATIVE.
2531
460f1cdc
TG
25322012-03-08 Tristan Gingold <gingold@adacore.com>
2533
2534 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum
2535 keylen according to archive kind. Set nextvbn and nextrfa lhd
2536 fields. Add comments.
2537
0a22ae8e
NC
25382012-03-07 Nick Clifton <nickc@redhat.com>
2539
2540 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
2541 field.
2542 (elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
2543 (elf_mn10300_tdata): Define.
2544 (elf_mn10300_local_got_tls_type): Define.
2545 (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
2546 R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
2547 R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
2548 R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
2549 (mn10300_reloc_map): Likewise.
2550 (elf_mn10300_tls_transition): New function.
2551 (dtpoff, tpoff, mn10300_do_tls_transition): New functions.
2552 (mn10300_elf_check_relocs): Add TLS support.
2553 (mn10300_elf_final_link_relocate): Likewise.
2554 (mn10300_elf_relocate_section): Likewise.
2555 (mn10300_elf_relax_section): Likewise.
2556 (elf32_mn10300_link_hash_newfunc): Initialise new field.
2557 (_bfd_mn10300_copy_indirect_symbol): New function.
2558 (elf32_mn10300_link_hash_table_create): Initialise new fields.
2559 (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
2560 (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
2561 (_bfd_mn10300_elf_reloc_type_class): Allocate an
2562 elf_mn10300_obj_tdata structure.
2563 (elf_backend_copy_indirect_symbol): Define.
2564 * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
2565 BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
2566 BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
2567 BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
2568 (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
2569 alongside other MN10300 relocations.
2570 * bfd-in2.h: Regenerate.
2571 * libbfd.h: Regenerate.
2572
3ce231f8
JJ
25732012-03-06 Jakub Jelinek <jakub@redhat.com>
2574
2575 * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE
2576 set relocate to TRUE.
2577
0bef263a
RO
25782012-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2579
2580 PR ld/12152
2581 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
2582 overflows for R_SPARC_UA32 in .stab sections.
2583
84abc003
AM
25842012-03-01 Alan Modra <amodra@gmail.com>
2585
2586 * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
2587
3d301fdc
AM
25882012-02-27 Alan Modra <amodra@gmail.com>
2589
2590 * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
2591 before calling elf specific function.
2592 (sh_elf_osec_readonly_p): Test for error return from above.
2593
cb83c803
AM
25942012-02-27 Alan Modra <amodra@gmail.com>
2595
2596 * elf32-spu.c (build_stub): Fix malloc under-allocation.
2597
6f7be959
WL
25982012-02-25 Walter Lee <walt@tilera.com>
2599 * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
2600 BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
2601 BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
2602 BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
2603 BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
2604 BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
2605 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
2606 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
2607 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
2608 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
2609 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
2610 BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
2611 BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
2612 BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
2613 BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
2614 BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
2615 BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
2616 BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
2617 BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
2618 BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
2619 BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
2620 BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
2621 BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
2622 BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
2623 BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
2624 BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
2625 Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
2626 BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
2627 BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
2628 BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
2629 BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
2630 BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
2631 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
2632 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
2633 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
2634 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
2635 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
2636 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
2637 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
2638 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
2639 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
2640 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
2641 BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
2642 BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
2643 BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
2644 BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
2645 BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
2646 BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
2647 BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
2648 BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
2649 * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
2650 relocations.
2651 (tilepro_reloc_map): Ditto.
2652 (tilepro_info_to_howto_rela): Ditto.
2653 (reloc_to_create_func): Ditto.
2654 (tilepro_tls_translate_to_le): New.
2655 (tilepro_tls_translate_to_ie): New.
2656 (tilepro_elf_tls_transition): New.
2657 (tilepro_elf_check_relocs): Handle new tls relocations.
2658 (tilepro_elf_gc_sweep_hook): Ditto.
2659 (allocate_dynrelocs): Ditto.
2660 (tilepro_elf_relocate_section): Ditto.
2661 (tilepro_replace_insn): New.
2662 (insn_mask_X1): New.
2663 (insn_mask_X0_no_dest_no_srca): New
2664 (insn_mask_X1_no_dest_no_srca): New
2665 (insn_mask_Y0_no_dest_no_srca): New
2666 (insn_mask_Y1_no_dest_no_srca): New
2667 (srca_mask_X0): New
2668 (srca_mask_X1): New
2669 (insn_tls_le_move_X1): New
2670 (insn_tls_le_move_zero_X0X1): New
2671 (insn_tls_ie_lw_X1): New
2672 (insn_tls_ie_add_X0X1): New
2673 (insn_tls_ie_add_Y0Y1): New
2674 (insn_tls_gd_add_X0X1): New
2675 (insn_tls_gd_add_Y0Y1): New
2676 * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
2677 relocations.
2678 (tilegx_reloc_map): Ditto.
2679 (tilegx_info_to_howto_rela): Ditto.
2680 (reloc_to_create_func): Ditto.
2681 (tilegx_elf_link_hash_table): New field disable_le_transition.
2682 (tilegx_tls_translate_to_le): New.
2683 (tilegx_tls_translate_to_ie): New.
2684 (tilegx_elf_tls_transition): New.
2685 (tilegx_elf_check_relocs): Handle new tls relocations.
2686 (tilegx_elf_gc_sweep_hook): Ditto.
2687 (allocate_dynrelocs): Ditto.
2688 (tilegx_elf_relocate_section): Ditto.
2689 (tilegx_copy_bits): New.
2690 (tilegx_replace_insn): New.
2691 (insn_mask_X1): New.
2692 (insn_mask_X0_no_dest_no_srca): New.
2693 (insn_mask_X1_no_dest_no_srca): New.
2694 (insn_mask_Y0_no_dest_no_srca): New.
2695 (insn_mask_Y1_no_dest_no_srca): New.
2696 (insn_mask_X0_no_operand): New.
2697 (insn_mask_X1_no_operand): New.
2698 (insn_mask_Y0_no_operand): New.
2699 (insn_mask_Y1_no_operand): New.
2700 (insn_tls_ie_ld_X1): New.
2701 (insn_tls_ie_ld4s_X1): New.
2702 (insn_tls_ie_add_X0X1): New.
2703 (insn_tls_ie_add_Y0Y1): New.
2704 (insn_tls_ie_addx_X0X1): New.
2705 (insn_tls_ie_addx_Y0Y1): New.
2706 (insn_tls_gd_add_X0X1): New.
2707 (insn_tls_gd_add_Y0Y1): New.
2708 (insn_move_X0X1): New.
2709 (insn_move_Y0Y1): New.
2710 (insn_add_X0X1): New.
2711 (insn_add_Y0Y1): New.
2712 (insn_addx_X0X1): New.
2713 (insn_addx_Y0Y1): New.
2714 * libbfd.h: Regenerate.
2715 * bfd-in2.h: Regenerate.
2716
82590249
WL
27172012-02-25 Walter Lee <walt@tilera.com>
2718
fb6cedde
WL
2719 * config.bfd (tilegx-*-*): rename little endian vector; add big
2720 endian vector.
2721 (tilegxbe-*-*): New case.
2722 * configure.in (bfd_elf32_tilegx_vec): Rename...
2723 (bfd_elf32_tilegx_le_vec): ... to this.
2724 (bfd_elf32_tilegx_be_vec): New vector.
2725 (bfd_elf64_tilegx_vec): Rename...
2726 (bfd_elf64_tilegx_le_vec): ... to this.
2727 (bfd_elf64_tilegx_be_vec): New vector.
2728 * configure: Regenerate.
2729 * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
2730 (TARGET_LITTLE_NAME): Ditto.
2731 (TARGET_BIG_SYM): Define.
2732 (TARGET_BIG_NAME): Define.
2733 * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
2734 (TARGET_LITTLE_NAME): Ditto.
2735 (TARGET_BIG_SYM): Define.
2736 (TARGET_BIG_NAME): Define.
2737 * targets.c (bfd_elf32_tilegx_vec): Rename...
2738 (bfd_elf32_tilegx_le_vec): ... to this.
2739 (bfd_elf32_tilegx_be_vec): Declare.
2740 (bfd_elf64_tilegx_vec): Rename...
2741 (bfd_elf64_tilegx_le_vec): ... to this.
2742 (bfd_elf64_tilegx_be_vec): Declare.
2743 (_bfd_target_vector): Add / rename above vectors.
82590249
WL
2744 * arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
2745 * bfd-in2.h: Regenerate.
2746 * cpu-tilegx.c (bfd_tilegx32_arch): define.
fb6cedde 2747 (bfd_tilegx_arch): link to bfd_tilegx32_arch.
82590249 2748
4115917d
NC
27492012-02-24 Nick Clifton <nickc@redhat.com>
2750
2751 PR ld/13730
2752 * reloc.c (bfd_generic_get_relocated_section_contents): Issue an
2753 error message instead of aborting, when an outofrange reloc is
2754 encountered.
2755
19765f52
IS
27562012-02-23 Iain Sandoe <idsandoe@googlemail.com>
2757
2758 * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
2759 (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc
2760 bit-fields when target and host differ in endian-ness. When
2761 PAIRs are non-scattered find the 'symbol' from the preceding
2762 reloc. Add FIXME re. reloc symbols on section boundaries.
2763 (bfd_mach_o_swap_out_non_scattered_reloc): New.
2764 (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc.
2765
6639d37a
IS
27662012-02-17 Iain Sandoe <idsandoe@googlemail.com>
2767
2768 * mach-o-i386.c (i386_howto_table): Add support for 16 bit
2769 sect-diffs.
2770 (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs.
2771 (bfd_mach_o_i386_swap_reloc_out): Likewise.
2772
e1e81ed3
IS
27732012-02-17 Tristan Gingold <gingold@adacore.com>
2774
2775 * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF):
2776 * libbfd.h: Regenerated.
2777 * bfd-in2.h: Likewise.
2778 * mach-o-i386.c (i386_howto_table): Include local sectdiff.
2779 (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff.
2780 (bfd_mach_o_i386_swap_reloc_out): Likewise.
2781
d0ddfe27
AK
27822012-02-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2783
2784 * elf32-s390.c (elf_s390_relocate_section): Support basr in the
2785 GD->LE and LD->LE optimizations.
2786
eb8c5f3f
AM
27872012-02-16 Alan Modra <amodra@gmail.com>
2788
2789 PR binutils/13355
2790 * elf32-rx.c (elf32_rx_relax_section): Correct width check.
2791
e1741a1e
RH
27922012-02-13 Richard Henderson <rth@redhat.com>
2793
2794 PR ld/13621
2795 * linker.c (fix_syms): Force symbols outside any section into
2796 bfd_abs_section_ptr.
2797
5efbbc43
AM
27982012-02-13 Alan Modra <amodra@gmail.com>
2799
2800 * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
2801 * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
2802 * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
2803 * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
2804
3e3c397d
JK
28052012-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
2806 Nick Clifton <nickc@redhat.com>
2807
2808 * oasys.c (oasys_write_header): Fix compilation warning on zero-sized
2809 memset.
2810
09903f4b
IS
28112012-02-10 Iain Sandoe <idsandoe@googlemail.com>
2812
2813 * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section
2814 vma additions in their logical, rather than physical order.
2815
632039e0
IS
28162012-02-10 Iain Sandoe <idsandoe@googlemail.com>
2817
2818 * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section
2819 parameters.
2820 * mach-o-x86-64.c (text_section_names_xlat): New.
2821 (mach_o_x86_64_segsec_names_xlat): New.
2822 (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat.
2823 * mach-o-i386.c (text_section_names_xlat): Correct section parameters.
2824
565a6476
TG
28252012-02-10 Tristan Gingold <gingold@adacore.com>
2826
2827 * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator
2828 to avoid infinite loop. Add comments.
2829
923f257f
L
28302012-02-09 H.J. Lu <hongjiu.lu@intel.com>
2831
2832 PR ld/13675
2833 * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte
2834 nop instructions.
2835 (bfd_arch_i386_short_nop_fill): New.
2836 (bfd_arch_i386_long_nop_fill): Likewise.
2837 Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info
2838 initializers. Use bfd_arch_i386_long_nop_fill on 64bit
2839 bfd_arch_info initializers.
2840
2841 * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ...
2842 (bfd_arch_i386_short_nop_fill): This.
2843 Update bfd_arch_info initializers.
2844 * cpu-l1om.c: Likewise.
2845
4e6b54a6
AM
28462012-02-08 Alan Modra <amodra@gmail.com>
2847
2848 * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too.
2849 (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear
2850 the correct h->u.weakdef.
2851
ff9e0f5b
AM
28522012-02-07 Alan Modra <amodra@gmail.com>
2853
2854 * elf.c (elf_find_function): Don't use internal_elf_sym.
2855 (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type
2856 parameter with asymbol.
2857 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
2858 * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype.
2859 (struct elf_backend_data <maybe_function_sym>): Likewise.
2860
526f25b2
EW
28612012-02-02 Vidya Praveen (vidya.praveen@atmel.com)
2862
2863 PR bfd/13410
8b127cbc 2864 * elf32-avr.c (elf32_avr_relax_section): Correct the
526f25b2
EW
2865 condition that qualifies the candidates for relaxation.
2866
7c4f9963
TG
28672012-02-02 Tristan Gingold <gingold@adacore.com>
2868
2869 * bfdio.c (real_fopen): Remove unused vms_modes variable.
2870
facf03f2
TG
28712012-02-02 Tristan Gingold <gingold@adacore.com>
2872
2873 * mach-o.c (bfd_mach_o_read_header): Silent uninitialized
2874 variable warning.
2875
cd99171c
TG
28762012-02-02 Tristan Gingold <gingold@adacore.com>
2877
2878 * archive.c (bfd_slurp_armap): Fix thinko in cast.
2879
b7761f11
L
28802012-01-31 H.J. Lu <hongjiu.lu@intel.com>
2881
2882 PR ld/13616
2883 * archures.c (bfd_arch_info): Add fill.
2884 (bfd_default_arch_struct): Add bfd_arch_default_fill.
2885 (bfd_arch_default_fill): New.
2886
2887 * configure.in: Set bfd version to 2.22.52.
2888 * configure: Regenerated.
2889
2890 * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info
2891 initializer.
2892 * cpu-arc.c: Likewise.
2893 * cpu-arm.c: Likewise.
2894 * cpu-avr.c: Likewise.
2895 * cpu-bfin.c: Likewise.
2896 * cpu-cr16.c: Likewise.
2897 * cpu-cr16c.c: Likewise.
2898 * cpu-cris.c: Likewise.
2899 * cpu-crx.c: Likewise.
2900 * cpu-d10v.c: Likewise.
2901 * cpu-d30v.c: Likewise.
2902 * cpu-dlx.c: Likewise.
2903 * cpu-epiphany.c: Likewise.
2904 * cpu-fr30.c: Likewise.
2905 * cpu-frv.c: Likewise.
2906 * cpu-h8300.c: Likewise.
2907 * cpu-h8500.c: Likewise.
2908 * cpu-hppa.c: Likewise.
2909 * cpu-i370.c: Likewise.
2910 * cpu-i860.c: Likewise.
2911 * cpu-i960.c: Likewise.
2912 * cpu-ia64.c: Likewise.
2913 * cpu-ip2k.c: Likewise.
2914 * cpu-iq2000.c: Likewise.
2915 * cpu-lm32.c: Likewise.
2916 * cpu-m10200.c: Likewise.
2917 * cpu-m10300.c: Likewise.
2918 * cpu-m32c.c: Likewise.
2919 * cpu-m32r.c: Likewise.
2920 * cpu-m68hc11.c: Likewise.
2921 * cpu-m68hc12.c: Likewise.
2922 * cpu-m68k.c: Likewise.
2923 * cpu-m88k.c: Likewise.
2924 * cpu-mcore.c: Likewise.
2925 * cpu-mep.c: Likewise.
2926 * cpu-microblaze.c: Likewise.
2927 * cpu-mips.c: Likewise.
2928 * cpu-mmix.c: Likewise.
2929 * cpu-moxie.c: Likewise.
2930 * cpu-msp430.c: Likewise.
2931 * cpu-mt.c: Likewise.
2932 * cpu-ns32k.c: Likewise.
2933 * cpu-openrisc.c: Likewise.
2934 * cpu-or32.c: Likewise.
2935 * cpu-pdp11.c: Likewise.
2936 * cpu-pj.c: Likewise.
2937 * cpu-plugin.c: Likewise.
2938 * cpu-powerpc.c: Likewise.
2939 * cpu-rl78.c: Likewise.
2940 * cpu-rs6000.c: Likewise.
2941 * cpu-rx.c: Likewise.
2942 * cpu-s390.c: Likewise.
2943 * cpu-score.c: Likewise.
2944 * cpu-sh.c: Likewise.
2945 * cpu-sparc.c: Likewise.
2946 * cpu-spu.c: Likewise.
2947 * cpu-tic30.c: Likewise.
2948 * cpu-tic4x.c: Likewise.
2949 * cpu-tic54x.c: Likewise.
2950 * cpu-tic6x.c: Likewise.
2951 * cpu-tic80.c: Likewise.
2952 * cpu-tilegx.c: Likewise.
2953 * cpu-tilepro.c: Likewise.
2954 * cpu-v850.c: Likewise.
2955 * cpu-vax.c: Likewise.
2956 * cpu-w65.c: Likewise.
2957 * cpu-we32k.c: Likewise.
2958 * cpu-xc16x.c: Likewise.
2959 * cpu-xstormy16.c: Likewise.
2960 * cpu-xtensa.c: Likewise.
2961 * cpu-z80.c: Likewise.
2962 * cpu-z8k.c: Likewise.
2963
2964 * cpu-i386.c: Include "libiberty.h".
ff9e0f5b 2965 (bfd_arch_i386_fill): New.
b7761f11
L
2966 Add bfd_arch_i386_fill to bfd_arch_info initializer.
2967
2968 * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer.
2969 * cpu-l1om.c: Likewise.
2970
ff9e0f5b 2971 * linker.c (default_data_link_order): Call abfd->arch_info->fill
b7761f11
L
2972 if fill size is 0.
2973
2974 * bfd-in2.h: Regenerated.
2975
0d048da3
ME
29762012-01-27 Michael Eager <eager@eagercon.com>
2977
8b127cbc 2978 * elf32-microblaze.c (create_got_section):
0d048da3
ME
2979 Reuse existing .rela.got section.
2980
9f296da3
AM
29812012-01-23 Alan Modra <amodra@gmail.com>
2982
2983 * elf-bfd.h: Formatting.
2984 (struct elf_backend_data): Add "maybe_function_sym".
2985 (_bfd_elf_maybe_function_sym): Declare.
2986 * elfxx-target.h (elf_backend_maybe_function_sym): Define.
2987 (elfNN_bed): Init new field.
2988 * elf.c (elf_find_function): Use maybe_function_sym.
2989 (_bfd_elf_maybe_function_sym): New function.
2990 * elf64-ppc.c (elf_backend_maybe_function_sym): Define.
2991 (ppc64_elf_maybe_function_sym): New function.
2992
f1bb16f8
NC
29932012-01-20 Francois Gouget <fgouget@codeweavers.com>
2994
2995 PR binutils/13534
2996 * archive.c (_bfd_ar_sizepad): New function. Correctly install and
2997 pad the size field in an archive header.
2998 (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
2999 function for the archive size field.
3000 (bfd_generic_openr_next_archived_file): Likewise.
3001 (do_slurp_coff_armap): Likewise.
3002 (_bfd_write_archive_contents): Likewise.
3003 (_bfd_bsd44_write_ar_hdr): Use the new function.
3004 (bfd_ar_hdr_from_filesystem): Likewise.
3005 (_bfd_write_archive_contents): Likewise.
3006 (bsd_write_armap): Likewise.
3007 (coff_write_armap): Likewise.
3008 * archive64.c (bfd_elf64_archive_write_armap): Likewise.
3009 * bfdio.c (bfd_bread): Use correct type for archive element
3010 sizes.
3011 * ar.c (open_inarch): Likewise.
3012 (extract_file): Likewise.
3013 * libbfd-in.h (struct areltdata): Use correct types for
3014 parsed_size and extra_size fields.
3015 Prototype _bfd_ar_sizepad function.
3016 * libbfd.h: Regenerate.
3017
1f20dca5
UW
30182012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
3019
3020 * elf.c (elfcore_write_prpsinfo): Provide unconditionally.
3021 Return NULL if core file generation is unsupported.
3022 (elfcore_write_prstatus): Likewise.
3023 * elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
3024 (elf_backend_write_core_note): Define.
3025
100fc767
TG
30262012-01-19 Tristan Gingold <gingold@adacore.com>
3027
3028 * pef.c: Add a comment.
3029 * xsym.c: Likewise.
3030
75cd47ed
AM
30312012-01-17 Alan Modra <amodra@gmail.com>
3032
3033 * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
3034 trailing garbage in the note.
3035 * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
3036
8a5dcf53
AM
30372012-01-16 Daniel Green <venix1@gmail.com>
3038
3039 PR ld/13491
3040 * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
3041 h->root.type not h->type.
3042 * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
3043
bb76d940
IS
30442012-01-13 Iain Sandoe <idsandoe@googlemail.com>
3045
8a5dcf53
AM
3046 * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
3047 indirect symbols.
687be931
IS
3048
30492012-01-13 Iain Sandoe <idsandoe@googlemail.com>
3050
3051 * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
bb76d940
IS
3052 position from here... to (bfd_mach_o_build_seg_command): Here.
3053
50d10658
IS
30542012-01-12 Iain Sandoe <idsandoe@googlemail.com>
3055
3056 * mach-o.c (bfd_mach_o_count_indirect_symbols): New.
3057 (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
3058 * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
3059 file. (bfd_mach_o_section): Add indirect_syms field.
3060
e5081f2f
IS
30612012-01-11 Iain Sandoe <idsandoe@googlemail.com>
3062
3063 * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
3064 vmsize from filesize. Don't compute offsets or file sizes for
3065 zerofill sections.
3066
bbd56171
IS
30672012-01-11 Iain Sandoe <idsandoe@googlemail.com>
3068
3069 * mach-o.c (bfd_mach_o_build_commands): Make the building of each
3070 command type independent.
3071
794e51c0
AM
30722012-01-11 Alan Modra <amodra@gmail.com>
3073
3074 * elf64-ppc.c: Define more insns used in plt call stubs.
3075 (ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
3076 (ppc64_elf_relocate_section): Likewise.
3077 (enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
3078 (struct ppc_link_hash_table): Increase size of stub_count array.
3079 Add plt_stub_align and plt_thread_safe.
3080 (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
3081 (plt_stub_size, plt_stub_pad): New functions.
3082 (build_plt_stub): Emit barriers for power7 thread safety. Don't
3083 emit needless save of r2.
3084 (build_tls_get_addr_stub): Adjust params.
3085 (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
3086 plt stubs. Adjust build_*plt_stub calls.
3087 (ppc_size_one_stub): Similarly.
3088 (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
3089 params. Choose default for plt_thread_safe based on existence of
3090 calls to thread creation functions. Modify plt_call to
3091 plt_call_r2save when no tocsave reloc found. Align tail of stub
3092 sections.
3093 (ppc64_elf_build_stubs): Align tail of stub sections. Adjust
3094 output of stub statistics.
3095 (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
3096 * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
3097
df4f9443
L
30982012-01-10 H.J. Lu <hongjiu.lu@intel.com>
3099
3100 PR ld/13581
3101 * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
3102 check on R_X86_64_PCXX.
3103
2a65a88e
TG
31042012-01-10 Tristan Gingold <gingold@adacore.com>
3105
3106 * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
3107 warning.
3108
660722b0
TG
31092012-01-10 Tristan Gingold <gingold@adacore.com>
3110
3111 * bfdio.c (bfd_tell): Handle nested archives.
3112 (bfd_seek): Ditto.
3113 * cache.c (bfd_cache_lookup_worker): Ditto.
3114 * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
3115 nested archives.
3116 (bfd_generic_openr_next_archived_file): Likewise.
3117
b22161d6
IS
31182012-01-09 Iain Sandoe <idsandoe@googlemail.com>
3119
3120 * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
3121 (bfd_mach_o_write_symtab): Remove handling for indirect syms.
3122 (bfd_mach_o_primary_symbol_sort_key): Likewise.
3123 (bfd_mach_o_cf_symbols): Likewise.
3124 (bfd_mach_o_sort_symbol_table): Remove.
3125 (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
3126 for indirect and dysymtab counts. Do the symbol sorting here.
3127 (bfd_mach_o_build_dysymtab_command): Count the symbol types here.
3128 Make the indirect symbols a TODO.
3129 (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
3130 (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
3131 a non-zero value.
3132 (bfd_mach_o_read_symtab_symbol): Record the symbol index.
3133 (bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
3134 * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
3135 (IS_MACHO_INDIRECT): Remove.
3136 (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
3137
28a1b4f8
NC
31382012-01-06 Nick Clifton <nickc@redhat.com>
3139
3140 PR binutils/13121
3141 * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
3142 'flaginfo' to avoid conflicts with AIX system headers.
3143
36f0a48f
TG
31442012-01-06 Tristan Gingold <gingold@adacore.com>
3145
3146 * bfdio.c (bfd_bread): Use arelt_size macro.
3147
76d4c1cb
TG
31482012-01-06 Tristan Gingold <gingold@adacore.com>
3149
3150 * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
3151
a1c7aafb
NC
31522012-01-05 Nick Clifton <nickc@redhat.com>
3153
3154 PR ld/12161
3155 * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
3156 necessary.
3157
e85c6a70
JK
31582012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
3159
3160 Fix zero registers core files when built by gcc-4.7.
3161 * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
3162 size. Call elfcore_write_note for the local variables. Remove the
3163 final elfcore_write_note call. Add NOTREACHED comments.
3164
15bbba8d
TG
31652012-01-04 Tristan Gingold <gingold@adacore.com>
3166
3167 * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
3168 (bfd_mach_o_generic_stat_arch_elt): Adjust.
3169
a4e241ca
TG
31702012-01-04 Tristan Gingold <gingold@adacore.com>
3171
3172 * mach-o.c (bfd_mach_o_fat_member_init): New function.
3173 (bfd_mach_o_openr_next_archived_file): Reindent.
3174 Adjust to call bfd_mach_o_fat_member_init.
3175 (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
3176
71141310
TG
31772012-01-04 Tristan Gingold <gingold@adacore.com>
3178
3179 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
3180 BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
3181 BFD_RELOC_MACH_O_X86_64_PCREL32_2,
3182 BFD_RELOC_MACH_O_X86_64_PCREL32_4,
3183 BFD_RELOC_MACH_O_X86_64_BRANCH32,
3184 BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
3185 BFD_RELOC_MACH_O_X86_64_GOT.
3186
9f4a5bd1
TG
31872012-01-04 Tristan Gingold <gingold@adacore.com>
3188
3189 * mach-o.h (bfd_mach_o_fvmlib_command): New structure.
3190 (bfd_mach_o_load_command): Add fvmlib field.
3191
3192 * mach-o.c (bfd_mach_o_read_fvmlib): New function.
3193 (bfd_mach_o_read_command): Handle fvmlib.
3194
0b2de107
TG
31952012-01-04 Tristan Gingold <gingold@adacore.com>
3196
3197 * mach-o.c (bfd_mach_o_convert_architecture): Reindent.
3198 Decode msubtype for ARM.
3199
aeefa1c9
TG
32002012-01-04 Tristan Gingold <gingold@adacore.com>
3201
3202 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
3203
fc55a902
TG
32042012-01-04 Tristan Gingold <gingold@adacore.com>
3205
3206 * mach-o.h: Reindent header.
3207 (bfd_mach_o_encryption_info_command): New structure.
3208 (bfd_mach_o_load_command): Add encryption_info field.
3209
3210 * mach-o.c (bfd_mach_o_read_encryption_info): New function.
3211 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
3212 (bfd_mach_o_read_command): Adjust error message.
3213
2ca7691a
TG
32142012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
3215
3216 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
3217 which reads DWARF2 and stores in stash from find_line.
3218 (find_line) Call _bfd_dwarf2_slurp_debug_info.
3219 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
3220 * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
3221 * mach-o.c (dsym_subdir): The name of subdir where debug
3222 information may be stored.
3223 (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
3224 type is UUID.
3225 (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
3226 corresponding to the executable.
3227 (bfd_mach_o_find_dsym): New. Find a debug information BFD in the
3228 specified binary file.
3229 (bfd_mach_o_follow_dsym): New. Find a debug information BFD for
3230 the original BFD.
3231 (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
3232 executables, dylibs, and bundles.
3233 (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
3234 * mach-o.h (dsym_bfd): The BFD of the dSYM file.
3235
68588f95
IS
32362012-01-03 Iain Sandoe <idsandoe@googlemail.com>
3237
3238 * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
3239 for stabd symbols.
3240 (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
3241 (bfd_mach_o_cf_symbols): Likewise.
3242
f2b324f1
IS
32432012-01-03 Iain Sandoe <idsandoe@googlemail.com>
3244
3245 * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
3246
7f307238
IS
32472012-01-03 Iain Sandoe <idsandoe@googlemail.com>
3248
3249 * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
3250 as the value of an indirect symbol. Keep the string table index in
3251 non-indirect syms for reference.
3252 (bfd_mach_o_write_dysymtab): New.
3253 (bfd_mach_o_primary_symbol_sort_key): New.
3254 (bfd_mach_o_cf_symbols): New.
3255 (bfd_mach_o_sort_symbol_table): New.
3256 (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
3257 If we are emitting a dysymtab, process indirect symbols and count the
3258 number of each other kind.
3259 (bfd_mach_o_mangle_sections): New.
3260 (bfd_mach_o_write_contents): Split out some pre-requisite code into
3261 the command builder. Write dysymtab if the command is present.
3262 (bfd_mach_o_count_sections_for_seg): New.
3263 (bfd_mach_o_build_seg_command): New.
3264 (bfd_mach_o_build_dysymtab_command): New.
3265 (bfd_mach_o_build_commands): Reorganize to support the fact that some
3266 commands are optional and should not be emitted if there are no
3267 sections or symbols.
3268 (bfd_mach_o_set_section_contents): Amend comment.
23e1d329 3269 * mach-o.h: Amend and add to comments.
7f307238
IS
3270 (mach_o_data_struct): Add fields for dysymtab symbols counts and a
3271 pointer to the indirects, when present.
3272 (bfd_mach_o_should_emit_dysymtab): New macro.
3273 (IS_MACHO_INDIRECT): Likewise.
3274
23e1d329 3275For older changes see ChangeLog-2011
56882138 3276\f
752937aa
NC
3277Copyright (C) 2012 Free Software Foundation, Inc.
3278
3279Copying and distribution of this file, with or without modification,
3280are permitted in any medium without royalty provided the copyright
3281notice and this notice are preserved.
3282
56882138
AM
3283Local Variables:
3284mode: change-log
3285left-margin: 8
3286fill-column: 74
3287version-control: never
3288End:
This page took 0.97413 seconds and 4 git commands to generate.