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