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