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