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