Fix a typo in gas/ChangeLog
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
01158262
L
12014-11-07 H.J. Lu <hongjiu.lu@intel.com>
2
3 * peXXigen.c (pe_print_idata): Cast to unsigned long in range
4 checks.
5
cf61b747
L
62014-11-07 H.J. Lu <hongjiu.lu@intel.com>
7
8 PR ld/17482
9 * elf64-x86-64.c (elf_x86_64_relocate_section): Update comments
10 for IE->LE transition.
11
56aedec7
AM
122014-11-07 Alan Modra <amodra@gmail.com>
13
14 * tekhex.c (tekhex_set_arch_mach): Ignore unknown arch errors.
15
e5242d4b
AM
162014-11-07 Alan Modra <amodra@gmail.com>
17
18 * tekhex.c (CHUNK_SPAN): Define.
19 (struct data_struct <chunk_init>): Use one byte per span, update
20 all code accessing this field.
21 (find_chunk): Add create param, don't create new entry unless set.
22 (insert_byte): Don't save zeros.
23 (first_phase): Set section SEC_CODE or SEC_DATA flag depending
24 on symbol type. Create an alternate section if both types of
25 symbol are given. Attach type '2' and '6' symbols to absolute
26 section.
27 (move_section_contents): Fix caching of chunk. Don't create chunk
28 when reading, or for writing zeros.
29 (tekhex_set_section_contents): Don't create initial chunks.
30 (tekhex_write_object_contents): Use CHUNK_SPAN.
31
7c53fd1c
AM
322014-11-07 Alan Modra <amodra@gmail.com>
33
34 * aoutx.h (aout_get_external_symbols): Tidy allocation of symbol buffer.
35
40572405
AM
362014-11-07 Alan Modra <amodra@gmail.com>
37
38 * archive.c (_bfd_slurp_extended_name_table): Revert bfd_get_size check.
39 * coffcode.h (coff_set_alignment_hook): Likewise.
40 (coff_slurp_line_table): Likewise.
41 * coffgen.c (coff_get_normalized_symtab): Likewise.
42 (_bfd_coff_get_external_symbols): Likewise.
43 * elf.c (bfd_elf_get_str_section): Likewise.
44 * tekhex.c (first_phase): Likewise.
45
83410725
NC
462014-11-06 Nick Clifton <nickc@redhat.com>
47
48 * aoutx.h (slurp_symbol_table): Revert previous delta.
49 (slurp_reloc_table): Likewise.
50 * compress.c (bfd_get_full_section_contents): Remove file size
51 test.
52 * coffgen.c (coff_get_normalized_symtab): Allow zero-sized symtabs
53 and do not complain about linker generated files.
54
1fe9dc45
WN
552014-11-06 Will Newton <will.newton@linaro.org>
56
57 * elf-attrs.c (_bfd_elf_parse_attributes): Handle zero
58 length sections and sub-sections.
59
a6f921c8
NC
602014-11-04 Nick Clifton <nickc@redhat.com>
61
62 PR binutils/17512
63 * coffcode.h (handle_COMDAT): Replace abort with BFD_ASSERT.
64 Replace another abort with an error message.
65 (coff_slurp_line_table): Add more range checking.
66 * peXXigen.c (pe_print_debugdata): Add range checking.
67
131e2f8e
MF
682014-11-05 James Cowgill <james.cowgill@imgtec.com>
69
70 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Fix segfault
71 when creating a dso with discarded dynsym section.
72
09c14161
MF
732014-11-05 Matthew Fortune <matthew.fortune@imgtec.com>
74
75 * elfxx-mips.c (update_mips_abiflags_isa): Add E_MIPS_ARCH_32R6
76 and E_MIPS_ARCH_64R6 support.
77
20ad5e28
NC
782014-11-05 Nick Clifton <nickc@redhat.com>
79
80 PR binutils/17512
81 * coffcode.h (coff_set_alignment_hook): Warn if the file lies
82 about the number of relocations it contains.
83 (coff_sort_func_alent): Return 0 if the pointers are NULL.
84 (coff_slurp_line_table): Add more range checks. Do not free new
85 tables created when sorting line numbers.
86 * peXXigen.c (pe_print_idata): Add range checks.
87 (pe_print_edata): Likewise.
88 (rsrc_print_resource_entries): Likewise. Avoid printing control
89 characters. Terminate priniting if corruption is detected.
90 (rsrc_print_resource_directory): Terminate printing if an unknown
91 directory type is encountered.
92 (pe_print_debugdata): Fix off-by-one error.
93 (rsrc_count_entries): Add range checking.
94 (rsrc_parse_entry): Likewise.
95
bb0d8671
NC
962014-11-04 Nick Clifton <nickc@redhat.com>
97
79f2a78e
NC
98 PR binutils/17512
99 * compress.c (bfd_get_full_section_contents): Improve test for
100 linker created objects.
101
bb0d8671
NC
102 PR binutils/17533
103 * archive.c (_bfd_slurp_extended_name_table): Handle archives with
104 corrupt extended name tables.
105
ef42b83e
AM
1062014-11-04 Alan Modra <amodra@gmail.com>
107
108 * elf32-spu.c (ovl_mgr_stat): New function.
109 (spu_elf_open_builtin_lib): Pass to bfd_openr_iovec.
110
931b79cc
AB
1112014-11-03 Andrew Burgess <andrew.burgess@embecosm.com>
112
113 * elf32-avr.c (elf32_avr_relax_delete_bytes): During linker
114 relaxation, reduce the size of symbols that span the deleted
115 bytes.
116
a12d0ffc
AB
1172014-11-03 Andrew Burgess <andrew.burgess@embecosm.com>
118
119 * elf32-avr.c (elf32_avr_relax_delete_bytes): Modify symbols
120 located at the very end of the section.
121
5a3f568b
NC
1222014-11-03 Nick Clifton <nickc@redhat.com>
123
124 PR binutils/17512
125 * aoutx.h (slurp_symbol_table): Check that computed table size is
126 not bigger than the file from which is it being read.
127 (slurp_reloc_table): Likewise.
128 * coffcode.h (coff_slurp_line_table): Remove unneeded local
129 'warned'. Do not try to print the details of a symbol with an
130 invalid index.
131 * coffgen.c (make_a_sectiobn_from_file): Check computed string
132 index against length of string table.
133 (bfd_coff_internal_syment_name): Check read in string offset
134 against length of string table.
135 (build_debug_section): Return a pointer to the section used.
136 (_bfd_coff_read_string_table): Store the length of the string
137 table in the coff_tdata structure.
138 (bfd_coff_free_symbols): Set the length of the string table to
139 zero when it is freed.
140 (coff_get_normalized_symtab): Check offsets against string table
141 or data table lengths as appropriate.
142 * cofflink.c (_bfd_coff_link_input_bfd): Check offset against
143 length of string table.
144 * compress.c (bfd_get_full_section_contents): Check computed size
145 against the size of the file.
146 * libcoff-in.h (obj_coff_strings_len): Define.
147 (struct coff_tdata): Add strings_len field.
148 * libcoff.h: Regenerate.
149 * peXXigen.c (pe_print_debugdata): Do not attempt to print the
150 data if the debug section is too small.
151 * xcofflink.c (xcoff_link_input_bfd): Check offset against
152 length of string table.
153
ba241f2d
NC
1542014-11-03 Nick Clifton <nickc@redhat.com>
155
156 * po/fi.po: Updated Finnish translation.
157
2c629856
N
1582014-10-31 Andrew Pinski <apinski@cavium.com>
159 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
160
161 * archures.c: Add octeon3 for mips target.
162 * bfd-in2.h: Regenerate.
163 * bfd/cpu-mips.c: Define I_mipsocteon3.
164 nfo_struct): Add octeon3 support.
165 * bfd/elfxx-mips.c: (_bfd_elf_mips_mach): Add support for
166 octeon3.
167 (mips_set_isa_flags): Add support for octeon3.
ba241f2d 168 (bfd_mips_isa_ext): Add bfd_mach_mips_octeon3.
2c629856
N
169 (mips_mach_extensions): Make bfd_mach_mips_octeon3 an
170 extension of bfd_mach_mips_octeon2.
171 (print_mips_isa_ext): Print the value of Octeon3.
172
f54498b4
NC
1732014-10-31 Nick Clifton <nickc@redhat.com>
174
175 PR binutils/17512
176 * coffgen.c (_bfd_coff_get_external_symbols): Do not try to load a
177 symbol table bigger than the file.
178 * elf.c (bfd_elf_get_str_section): Do not try to load a string
179 table bigger than the file.
690725fa 180 * tekhex.c (first_phase): Check that the section range is sane.
f54498b4 181
7e760b06
NC
1822014-10-30 Nick Clifton <nickc@redhat.com>
183
184 PR binutils/17512
0102ea8c 185 * ihex.c (ihex_scan): Fix typo in invocation of ihex_bad_byte.
7e760b06
NC
186 * coffgen.c (coff_get_normalized_symtab): Prevent buffer overrun.
187
e5b470e2
NC
1882014-10-29 Nick Clifton <nickc@redhat.com>
189
190 * elf.c (bfd_section_from_shdr): Fix heap use after free memory
191 leak.
192
d1e8523e
DB
1932014-10-29 Dennis Brueni <dbrueni@slickedit.com>
194
e5b470e2 195 * elf.c (elfcore_write_lwpstatus): Fix typo in call to memcpy.
d1e8523e 196
5a4b0ccc
NC
1972014-10-28 Nick Clifton <nickc@redhat.com>
198
199 PR binutils/17512
200 * elf.c (bfd_section_from_shdr): Allocate and free the recursion
201 detection table on a per-bfd basis.
202 * peXXigen.c (pe_print_edata): Handle binaries with a truncated
203 export table.
204
708d7d0d
NC
2052014-10-28 Andreas Schwab <schwab@suse.de>
206 Nick Clifton <nickc@redhat.com>
207
208 PR binutils/17510
209 * srec.c (srec_bad_byte): Increase size of buf to allow for
210 negative values.
211 (srec_scan): Use an unsigned char buffer to hold header bytes.
212
493a3386
NC
2132014-10-27 Nick Clifton <nickc@redhat.com>
214
7e1e1988 215 PR binutils/17512
bf67003b
NC
216 * elf.c (bfd_section_from_shdr): Detect and warn about ELF
217 binaries with a group of sections linked by the string table
218 indicies.
7e1e1988
NC
219 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Handle corrupt binaries
220 with an invalid value for NumberOfRvaAndSizes.
bf67003b
NC
221 (pe_print_edata): Detect out of range rvas and entry counts for
222 the Export Address table, Name Pointer table and Ordinal table.
7e1e1988 223
493a3386
NC
224 PR binutils/17510
225 * elf.c (setup_group): Improve handling of corrupt group
226 sections.
227
68fcca92
JW
2282014-10-24 Tejas Belagod <tejas.belagod@arm.com>
229
230 * bfd-in.h (bfd_elf64_aarch64_set_options): Add a parameter.
231 * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
232 * elfnn-aarch64.c (aarch64_erratum_835769_stub): New.
233 (elf_aarch64_stub_type): Add new type
234 aarch64_stub_erratum_835769_veneer.
235 (elf_aarch64_stub_hash_entry): New fields for erratum 835769.
236 (aarch64_erratum_835769_fix): New data struct to record erratum
237 835769.
238 (elf_aarch64_link_hash_table: Global flags for 835769.
239 (aarch64_build_one_stub): Add case for 835769.
240 (aarch64_size_one_stub): Likewise.
241 (aarch64_mem_op_p, aarch64_mlxl_p,
242 aarch64_erratum_sequence,erratum_835769_scan):
243 New. Decode and scan functions for erratum 835769.
244 (elf_aarch64_create_or_find_stub_sec): New.
245 (elfNN_aarch64_size_stubs): Look for erratum 835769 and record
246 them.
247 (bfd_elfNN_aarch64_set_options: Set global flag for 835769.
248 (erratum_835769_branch_to_stub_data,
249 make_branch_to_erratum_835769_stub):New. Connect up all the
250 erratum stubs to occurances by branches.
251 (elfNN_aarch64_write_section): New hook.
252 (aarch64_map_one_stub): Output erratum stub symbol.
253 (elfNN_aarch64_size_dynamic_sections): Init mapping symbol
254 information for erratum 835769.
255 (elf_backend_write_section): Define.
256
685e70ae
VK
2572014-10-23 Victor Kamensky <victor.kamensky@linaro.org>
258
259 * elf32-arm.c (read_code32): New function to read 32 bit
260 arm instruction.
261 (read_code16): New function to read 16 bit thumb instrution.
262 (elf32_arm_plt0_size, elf32_arm_plt_size): Use read_code32
263 and read_code16 to read instructions.
264
00ac7aa0
MF
2652014-10-22 Matthew Fortune <matthew.fortune@imgtec.com>
266
267 * elfxx-mips.c (print_mips_ases): Print unknown ASEs.
268 (print_mips_isa_ext): Print the value of an unknown extension.
269
73242275
AM
2702014-10-21 Alan Modra <amodra@gmail.com>
271
272 * elf64-ppc.c (ppc64_elf_tls_optimize): Ignore relocs against toc
273 entries that aren't a multiple of 8 rather than failing assertion.
274
2300b5a1
AM
2752014-10-21 Alan Modra <amodra@gmail.com>
276
277 * elf64-ppc.c (ppc64_elf_size_stubs): Add gcc-4.9 libgomp functions
278 to thread_starter.
279
b53dfeb2
AM
2802014-10-18 Alan Modra <amodra@gmail.com>
281
282 * elf64-ppc.c (ppc64_elf_add_symbol_hook): If function code
283 section for function symbols defined in .opd is discarded, let
284 the symbol appear to be undefined.
285 (opd_entry_value): Ensure the result section is that for the
286 function code section in the same object as the OPD entry.
287
f1885d1e
AM
2882014-10-16 Alan Modra <amodra@gmail.com>
289
290 PR 17492
291 * elf32-arm.c (elf32_arm_add_symbol_hook): Only set has_gnu_symbols
292 on ELF output bfd.
293 * elf32-i386.c (elf_i386_add_symbol_hook): Likewise.
294 * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
295 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
296 * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
297 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
298 * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
299 * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
300 * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
301 * elf-s390-common.c (elf_s390_add_symbol_hook): Likewise. Handle
302 STB_GNU_UNIQUE too.
303
459609d6
AM
3042014-10-16 Alan Modra <amodra@gmail.com>
305
306 * elf64-ppc.c (ppc64_elf_before_check_relocs): Do .opd processing
307 even when output is not ppc64 ELF. Remove redundant tests on
308 type of input bfd.
309
fb167eb2
AM
3102014-10-15 Alan Modra <amodra@gmail.com>
311
312 PR 17481
313 * aoutx.h (NAME (aout, find_nearest_line)): Add "discriminator_ptr"
314 param, group "section" and "offset" params. Zero discriminator.
315 * bfd.c (bfd_find_nearest_line): Implement with new
316 _bfd_find_nearest_line.
317 (bfd_find_nearest_line_discriminator): Likewise.
318 * coff-i386.c (_bfd_generic_find_nearest_line_discriminator): Don't
319 define.
320 * coff-rs6000.c (xcoff_find_nearest_line,
321 xcoff_find_nearest_line_discriminator): Delete.
322 (_bfd_xcoff_find_nearest_line): Don't define.
323 (_bfd_xcoff_find_nearest_line): Define as coff_find_nearest_line.
324 * coff-x86_64.c (_bfd_generic_find_nearest_line_discriminator): Don't
325 define.
326 * coff64-rs6000.c (rs6000_xcoff64_vec, rs6000_xcoff64_aix_vec): Adjust.
327 * coffgen.c (coff_find_nearest_line_with_names): Reorder params,
328 adjust _bfd_dwarf2_find_nearest_line call.
329 (coff_find_nearest_line): Add "discriminator_ptr" param, reorder
330 others. Set discriminator. Adjust call.
331 (coff_find_nearest_line_discriminator): Delete.
332 * dwarf1.c (_bfd_dwarf1_find_nearest_line): Reorder params.
333 * dwarf2.c (find_line): Rename to..
334 (_bfd_dwarf2_find_nearest_line): ..this, reordering params.
335 Simplify setting of do_line. Delete old function.
336 (_bfd_dwarf2_find_line): Delete.
337 * ecoff.c (_bfd_ecoff_find_nearest_line): Reorder params, add
338 discriminator_ptr and set it.
339 * elf-bfd.h (_bfd_elf_find_nearest_line): Update prototype.
340 (_bfd_elf_find_nearest_line_discriminator): Delete.
341 (_bfd_elf_find_line_discriminator): Delete.
342 (_bfd_generic_find_nearest_line_discriminator): Don't define.
343 * elf.c (elf_find_function): Reorder params.
344 (_bfd_elf_find_nearest_line): Reorder params, add discriminator_ptr.
345 Adjust calls.
346 (_bfd_elf_find_nearest_line_discriminator): Delete.
347 (_bfd_elf_find_line): Adjust call.
348 * elf32-arm.c (arm_elf_find_function): Reorder params.
349 (elf32_arm_find_nearest_line): Reorder params, add discriminator_ptr.
350 Adjust calls.
351 * elf64-alpha.c (elf64_alpha_find_nearest_line): Similarly.
352 * elfnn-aarch64.c (aarch64_elf_find_function): Reorder params.
353 (elfNN_aarch64_find_nearest_line): Reorder params, add
354 discriminator_ptr. Adjust calls.
355 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Similarly.
356 * elfxx-mips.h (_bfd_mips_elf_find_nearest_line): Update prototype.
357 * libaout.h (NAME (aout, find_nearest_line)): Update prototype.
358 * libbfd-in.h (_bfd_nosymbols_find_nearest_line): Update.
359 (_bfd_dwarf1_find_nearest_line): Likewise.
360 (_bfd_dwarf2_find_nearest_line): Likewise.
361 (_bfd_dwarf2_find_line): Delete.
362 (_bfd_generic_find_nearest_line_discriminator): Delete.
363 * libbfd.c (_bfd_generic_find_nearest_line_discriminator): Delete.
364 * libcoff-in.h (coff_find_nearest_line): Update prototype.
365 (coff_find_nearest_line_discriminator): Delete.
366 (coff_find_nearest_line_with_names): Update prototype.
367 * libecoff.h (_bfd_ecoff_find_nearest_line): Update prototype.
368 * mach-o.c (bfd_mach_o_find_nearest_line): Reorder params, add
369 discriminator_ptr. Adjust calls.
370 * mach-o.h (bfd_mach_o_find_nearest_line): Update prototype.
371 * pdp11.c (NAME (aout, find_nearest_line)): Reorder params, add
372 discriminator_ptr and set.
373 * som.c (som_find_nearest_line): Similarly.
374 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Delete entry for
375 _bfd_find_nearest_line_discriminator.
376 (struct bfd_target <_bfd_find_nearest_line>): Adjust prototype.
377 (struct bfd_target <_bfd_find_nearest_line_discriminator>): Delete.
378 * vms-alpha.c (_bfd_vms_find_nearest_dst_line): Rename to..
379 (_bfd_vms_find_nearest_line): ..this. Reorder params, add
380 "discriminator" and set.
381 (_bfd_vms_find_nearest_line_discriminator): Delete.
382 (_bfd_generic_find_nearest_line_discriminator): Don't define.
383 (alpha_vms_find_nearest_line): Update define.
384 * bfd-in2.h: Regenerate.
385 * libbfd.h: Regenerate.
386 * libcoff.h: Regenerate.
387
9c461f7d
AM
3882014-10-15 Alan Modra <amodra@gmail.com>
389
390 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Use NAME##_find_line.
391 * aout-adobe.c (aout_32_find_line): Define.
392 (aout_32_bfd_make_debug_symbol, aout_32_bfd_reloc_type_lookup,
393 aout_32_bfd_reloc_name_lookup): Define using _bfd_nosymbols define.
394 * aout-target.h (MY_find_line): Define.
395 * aout-tic30.c (MY_find_line): Define.
396 * binary.c (binary_find_line): Define.
397 * bout.c (aout_32_find_line): Define.
398 * coff-rs6000.c (_bfd_xcoff_find_line): Define.
399 * coff64-rs6000.c (rs6000_xcoff64_vec): Use coff_find_line.
400 (rs6000_xcoff64_aix_vec): Likewise.
401 * elf-bfd.h (_bfd_generic_find_line): Don't define.
402 * elfxx-target.h (bfd_elfNN_find_line): Define.
403 * i386msdos.c (msdos_find_line): Define.
404 * i386os9k.c (aout_32_find_line): Define.
405 * ieee.c (ieee_find_nearest_line, ieee_find_inliner_info): Delete func.
406 (ieee_find_nearest_line, ieee_find_line,
407 ieee_find_inliner_info): Define.
408 * ihex.c (ihex_find_line): Define.
409 * libbfd-in.h (_bfd_nosymbols_find_line): Define.
410 (_bfd_generic_find_line): Don't define.
411 * libbfd.c (_bfd_generic_find_line): Delete.
412 * libcoff-in.h (coff_find_line): Define.
413 * libecoff.h (_bfd_ecoff_find_line): Define.
414 * mach-o.h (bfd_mach_o_find_line): Define.
415 * mmo.c (mmo_find_line): Define.
416 * nlm-target.h (nlm_find_line): Define.
417 * oasys.c (oasys_find_nearest_line, oasys_find_inliner_info): Delete.
418 (oasys_find_nearest_line, oasys_find_line,
419 oasys_find_inliner_info): Define.
420 * pef.c (bfd_pef_find_line): Define.
421 * plugin.c (bfd_plugin_find_line): Define.
422 * ppcboot.c (ppcboot_find_line): Define.
423 * som.c (som_find_line): Define.
424 * srec.c (srec_find_line): Define.
425 * tekhex.c (tekhex_find_line): Define.
426 * versados.c (versados_find_line): Define.
427 * vms-alpha.c (alpha_vms_find_line): Define.
428 * xsym.c (bfd_sym_find_line): Define.
429 * bfd-in2.h: Regenerate.
430 * libbfd.h: Regenerate.
431 * libcoff.h: Regenerate.
432
91dc4e0a
TG
4332014-10-15 Tristan Gingold <gingold@adacore.com>
434
435 * version.m4: Bump version to 2.25.51
436 * configure: Regenerate.
437
5697705a
L
4382014-10-14 H.J. Lu <hongjiu.lu@intel.com>
439
440 * elf32-i386.c (elf_i386_convert_mov_to_lea): Skip if relocation
441 offset is less than 2.
442 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
443
65879393
AM
4442014-10-14 Alan Modra <amodra@gmail.com>
445
446 PR 17453
447 * libbfd.c (COERCE16, COERCE32, COERCE64): Use unsigned types.
448 (EIGHT_GAZILLION): Delete.
449
5b69e357
AM
4502014-10-13 Alan Modra <amodra@gmail.com>
451
452 PR 17467
453 * elf-eh-frame.c (ENSURE_NO_RELOCS): Don't stop at first NONE reloc.
454 (_bfd_elf_parse_eh_frame): When relocatable output, don't set
455 flags enabling conversion of CIEs and FDEs to use relative encoding.
456 (find_merged_cie): Similarly.
457 (_bfd_elf_write_section_eh_frame): Don't edit FDEs when
458 relocatable, except for CIE pointer.
459 * elflink.c (bfd_elf_reloc_symbol_deleted_p): Return true for
460 relocs against symbols in dropped comdat group sections.
461 (bfd_elf_discard_info): Do some eh_frame optimisation when
462 relocatable.
463
3d68f91c
JM
4642014-10-09 Jose E. Marchesi <jose.marchesi@oracle.com>
465
466 * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): Handle
467 the hwcaps2 object attribute.
468
c2aaac08
AM
4692014-10-04 Alan Modra <amodra@gmail.com>
470
471 PR 17447
472 * elf-bfd.h (struct eh_cie_fde): Comment re NULL u.fde.cie_inf.
473 * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Mark zero address
474 range FDEs for discarding.
475 (vma_compare): Sort on range after address.
476 (_bfd_elf_gc_mark_fdes): Test for NULL u.fde.cie_inf.
477 (_bfd_elf_discard_section_eh_frame): Likewise. Write "FDE" in
478 error message rather than "fde".
479 (_bfd_elf_write_section_eh_frame_hdr): Write "PC" and "FDE" in
480 error message.
481
cf7363b4
L
4822014-09-29 H.J. Lu <hongjiu.lu@intel.com>
483
484 PR ld/17440
485 * elf32-i386.c (elf_i386_fbsd_post_process_headers): Fix build
486 for OLD_FREEBSD_ABI_LABEL.
487
e44f5bef
MT
4882014-09-24 Markus Trippelsdorf <markus@trippelsdorf.de>
489
490 PR 17422
491 * plugin.c (try_claim): New function. Moved from
492 bfd_plugin_object_p.
493 (try_load_plugin): Pass through bfd. Add test.
494 (load_plugin): Pass through bfd.
495 (bfd_plugin_object_p): Move logic to try_claim.
496
331ed130
SA
4972014-09-23 Sterling Augustine <augustine.sterling@gmail.com>
498
499 * elf32-xtensa.c (is_resolvable_asm_expansion): for cross-section
500 call relaxation use furthermost addresses where call source and
501 destination can be to check whether it's in the range of a direct
502 call.
503
aa8f4d1e
AM
5042014-09-22 Alan Modra <amodra@gmail.com>
505
506 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): Don't return
507 false for overflow or overlapping FDEs. Give more detail in
508 error messages.
509
c3eb94b4
MF
5102014-09-22 Andrew Bennett <andrew.bennett@imgtec.com>
511
512 * elfxx-mips.c (mips_elf_calculate_relocation): Don't sign extend
513 the addend if relocations are RELA.
514
f4cb41f4
KLC
5152014-09-22 Kuan-Lin Chen <kuanlinchentw@gmail.com>
516
517 * elf32-nds32.c (nds32_elf_ex9_build_hash_table,
518 nds32_elf_ex9_relocation_check): Synchronize the argument type.
519
e00d879a
AK
5202014-09-19 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
521
522 * elf32-s390.c: Don't replace R_390_TLS_LE32 with R_390_TLS_TPOFF
523 for PIE.
524 * elf64-s390.c: Don't replace R_390_TLS_LE64 with R_390_TLS_TPOFF
525 for PIE.
526
92c9bcd4
JK
5272014-09-18 Jan Kratochvil <jan.kratochvil@redhat.com>
528
529 PR gdb/17407
530 * elfcode.h (bfd_from_remote_memory): Use SIZE for HIGH_OFFSET.
531
70e99720
TG
5322014-09-16 Terry Guo <terry.guo@arm.com>
533
534 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Return false if
535 failed to merge.
536
1c8f6a4d
KLC
5372014-09-16 Kuan-Lin Chen <kuanlinchentw@gmail.com>
538
539 * bfd-in2.h: Regenerate.
540 * elf32-nds32.c (nds32_elf_mkobject): Hook bfd_elf32_mkobject.
541 (nds32_elf_relax_section): Code refactoring.
542 (nds32_elf_relax_longcall1, nds32_elf_relax_longcall2,
543 nds32_elf_relax_longcall3, nds32_elf_relax_longcall4,
544 nds32_elf_relax_longcall5, nds32_elf_relax_longcall6): Relax call
545 pattern. The first three is moved from nds32_elf_relax_section,
546 and the last three is new function.
547 (nds32_elf_relax_longjump1, nds32_elf_relax_longjump2,
548 nds32_elf_relax_longjump3, nds32_elf_relax_longjump4,
549 nds32_elf_relax_longjump5, nds32_elf_relax_longjump6,
550 nds32_elf_relax_longjump7): Relax condition branch pattern. The first
551 three is moved from nds32_elf_relax_section, and the last four
552 is new function.
553 (nds32_elf_relax_loadstore, nds32_elf_relax_lo12): Relax load-store
554 pattern and address setting pattern.
555 (nds32_elf_relax_piclo12, nds32_elf_relax_ptr,
556 nds32_elf_relax_pltgot_suff, nds32_elf_relax_got_suff,
557 nds32_elf_relax_gotoff_suff): Relax pic pattern.
558 (nds32_elf_relax_letlslo12, nds32_elf_relax_letlsadd,
559 nds32_elf_relax_letlsls): Relax TLS pattern.
560 (nds32_relax_adjust_label): Adjust alignment and nop.
561 (nds32_elf_pick_relax): Choose relaxation optimization.
562 (nds32_elf_get_relocated_section_contents): New hook.
563 (nds32_elf_order_insn_times, nds32_elf_ex9_build_itable): Release ex9
564 table 234th entry.
565 * elf32-nds32.h: Declare.
566 * libbfd.h: Regenerate.
567 * reloc.c: Add nds32 new relocations.
568
6d74e8a1
CG
5692014-09-15 Chen Gang <gang.chen.5i5j@gmail.com>
570
571 * dwarf2.c (find_abstract_instance_name): Use 'form' instead of
572 'name' for the typo issue, which related with commit
573 60d77146a249ae9b51d7ce98930cdbedb2cfa352.
574
7361da2c
AB
5752014-09-15 Andrew Bennett <andrew.bennett@imgtec.com>
576 Matthew Fortune <matthew.fortune@imgtec.com>
577
578 * aoutx.h (NAME (aout, machine_type)): Add mips32r6 and mips64r6.
579 * archures.c (bfd_architecture): Likewise.
580 * bfd-in2.h (bfd_architecture): Likewise.
581 (bfd_reloc_code_real): Add relocs BFD_RELOC_MIPS_21_PCREL_S2,
582 BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3 and
583 BFD_RELOC_MIPS_19_PCREL_S2.
584 * cpu-mips.c (arch_info_struct): Add mips32r6 and mips64r6.
585 * elf32-mips.c: Define relocs R_MIPS_PC21_S2, R_MIPS_PC26_S2
586 R_MIPS_PC18_S3, R_MIPS_PC19_S2, R_MIPS_PCHI16 and R_MIPS_PCLO16.
587 (mips_reloc_map): Add entries for BFD_RELOC_MIPS_21_PCREL_S2,
588 BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3,
589 BFD_RELOC_MIPS_19_PCREL_S2, BFD_RELOC_HI16_S_PCREL and
590 BFD_RELOC_LO16_PCREL.
591 * elf64-mips.c: Define REL, and RELA relocations R_MIPS_PC21_S2,
592 R_MIPS_PC26_S2, R_MIPS_PC18_S3, R_MIPS_PC19_S2, R_MIPS_PCHI16
593 and R_MIPS_PCLO16.
594 (mips_reloc_map): Add entries for BFD_RELOC_MIPS_21_PCREL_S2,
595 BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3,
596 BFD_RELOC_MIPS_19_PCREL_S2, BFD_RELOC_HI16_S_PCREL and
597 BFD_RELOC_LO16_PCREL.
598 * elfn32-mips.c: Likewise.
599 * elfxx-mips.c (MIPSR6_P): New define.
600 (mipsr6_exec_plt_entry): New array.
601 (hi16_reloc_p): Add support for R_MIPS_PCHI16.
602 (lo16_reloc_p): Add support for R_MIPS_PCLO16.
603 (aligned_pcrel_reloc_p): New function.
604 (mips_elf_relocation_needs_la25_stub): Add support for relocs:
605 R_MIPS_PC21_S2 and R_MIPS_PC26_S2.
606 (mips_elf_calculate_relocation): Add support for relocs:
607 R_MIPS_PC21_S2, R_MIPS_PC26_S2, R_MIPS_PC18_S3, R_MIPS_PC19_S2,
608 R_MIPS_PCHI16 and R_MIPS_PCLO16.
609 (_bfd_elf_mips_mach): Add support for mips32r6 and mips64r6.
610 (mips_elf_add_lo16_rel_addend): Add support for R_MIPS_PCHI16.
611 (_bfd_mips_elf_check_relocs): Add support for relocs:
612 R_MIPS_PC21_S2 and R_MIPS_PC26_S2.
613 (_bfd_mips_elf_relocate_section): Add a check for unaligned
614 pc relative relocs.
615 (_bfd_mips_elf_finish_dynamic_symbol): Add support for MIPS r6
616 plt entry.
617 (mips_set_isa_flags): Add support for mips32r6 and mips64r6.
618 (_bfd_mips_elf_print_private_bfd_data): Likewise.
619 (mips_32bit_flags_p): Add support for mips32r6.
620 * libbfd.h (bfd_reloc_code_real_names): Add entries for
621 BFD_RELOC_MIPS_21_PCREL_S2, BFD_RELOC_MIPS_26_PCREL_S2,
622 BFD_RELOC_MIPS_18_PCREL_S3 and BFD_RELOC_MIPS_19_PCREL_S2.
623 * reloc.c: Document relocs BFD_RELOC_MIPS_21_PCREL_S2,
624 BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3 and
625 BFD_RELOC_MIPS_19_PCREL_S2.
626 * config.bfd: Add mips*-img-elf* target triple.
627
a9d58c06
AB
6282014-09-12 Andrew Bennett <andrew.bennett@imgtec.com>
629
630 * config.bfd: Add mips*-img-elf* target triple.
631
ae6c7e33
AM
6322014-09-12 Alan Modra <amodra@gmail.com>
633
634 * elf-bfd.h (struct eh_frame_array_ent): Add "range".
635 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Stash address
636 range of FDEs to hdr_info->array.
637 (_bfd_elf_write_section_eh_frame_hdr): Report overflow in
638 .eh_frame_hdr entries, and overlapping FDEs.
639
a485e98e
AM
6402014-09-10 Alan Modra <amodra@gmail.com>
641
642 * elf.c (assign_file_positions_except_relocs): Move section header
643 placement to..
644 (_bfd_elf_assign_file_positions_for_relocs): ..here. Make static.
645 * elf-bfd.h (_bfd_elf_assign_file_positions_for_relocs): Delete.
646 * elflink.c (bfd_elf_final_link): Don't call above function.
647
6128f9cf
AM
6482014-08-30 Alan Modra <amodra@gmail.com>
649
650 * elf32-ppc.c (ppc_elf_relax_section): Fix off by one error.
651
4805fc55
AM
6522014-08-29 Alan Modra <amodra@gmail.com>
653
654 * elf64-ppc.c (ppc64_elf_relocate_section): Report a different
655 error for calls via a toc adjusting stub without a nop.
656
b138affb
AM
6572014-08-29 Alan Modra <amodra@gmail.com>
658
659 * vms-alpha.c (alpha_vma_object_p): Don't return file_truncated
660 error. Remove redundant bfd_set_error.
661
bd25671c
AM
6622014-08-29 Alan Modra <amodra@gmail.com>
663
664 * srec.c (srec_scan): Revert last change. Report an error for
665 S-records with less than the miniumum byte count.
666
376c8d5b
L
6672014-08-28 H.J. Lu <hongjiu.lu@intel.com>
668
669 * srec.c (srec_scan): Return error for 0 size.
670
c8831961
L
6712014-08-27 H.J. Lu <hongjiu.lu@intel.com>
672
673 PR ld/17306
674 * elf32-i386.c (elf_i386_convert_mov_to_lea): Use bfd_is_abs_section
675 to check discarded input section.
676 * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
677
29a9f53e
L
6782014-08-27 H.J. Lu <hongjiu.lu@intel.com>
679
680 PR ld/17313
681 * elflink.c (elf_link_add_object_symbols): Don't attach dynamic
682 sections to input from ld --just-symbols.
683
32e79d39
DD
6842014-08-26 DJ Delorie <dj@redhat.com>
685
686 * elf32-rl78.c (rl78_elf_relax_section): Disambiguate test for
687 relaxation type.
688
614b09ce
JW
6892014-08-26 Jiong Wang <jiong.wang@arm.com>
690
691 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Initialize non_got_ref
692 properly for MOVW_G0/1/2_NC and MOVW_G3. Reject them when linking
693 shared library.
694 (elfNN_aarch64_gc_sweep_hook): Add check on these relocs.
695
0d6d4c82
NC
6962014-08-26 Nick Clifton <nickc@redhat.com>
697
698 * config.bfd: Fix typo in or1knd selection.
699
a4a027b7
KT
7002014-08-22 Kai Tietz <ktietz@redhat.com>
701
702 PR binutils/11822
703 * coffcode.h (coff_compute_section_file_positions): Keep
704 FileAlignment valid as set.
705
4564fb94
AM
7062014-08-22 Alan Modra <amodra@gmail.com>
707
708 * elf-eh-frame.c (struct cie): Delete "output_sec" field.
709 (cie_eq, cie_compute_hash): Use output_section from cie_inf instead.
710
da44f4e5
AM
7112014-08-22 Alan Modra <amodra@gmail.com>
712
713 * elf-bfd.h (struct eh_frame_hdr_info): Delete merge_cies and
714 parsed_eh_frames.
715 (_bfd_elf_begin_eh_frame_parsing): Delete.
716 (_bfd_elf_end_eh_frame_parsing): Delete.
717 * elf-eh-frame.c (_bfd_elf_begin_eh_frame_parsing): Delete.
718 (_bfd_elf_end_eh_frame_parsing): Delete.
719 (_bfd_elf_parse_eh_frame): Don't test parsed_eh_frame. Test
720 !info->relocatable in place of merge_cies.
721 * elflink.c (bfd_elf_gc_sections, bfd_elf_discard_info): Adjust.
722 * elf64-ppc.c (glink_eh_frame_cie): Pad to multiple of 8.
723 (ppc64_elf_size_stubs): Likewise pad stub FDE.
724 (ppc64_elf_build_stubs): Move code setting glink .eh_frame to..
725 (ppc64_elf_size_stubs): ..here and..
726 (ppc64_elf_finish_dynamic_sections): ..here.
727
1d7c9635
MR
7282014-08-21 Maciej W. Rozycki <macro@codesourcery.com>
729
730 * elf64-ppc.h (ppc64_elf_set_toc): Fix indentation.
731
c5423981
TG
7322014-08-21 Tony Wang <tony.wang@arm.com>
733
734 * elf32-arm.c (elf32_arm_final_link_relocate): Implement
735 the veneer routine for R_ARM_THM_JUMP19.
736 (arm_type_of_stub): Add conditional clause for R_ARM_THM_JUMP19
737 (elf32_arm_size_stub): Ditto.
738
469a3493
RM
7392014-08-20 Roland McGrath <mcgrathr@google.com>
740
741 PR ld/17277
742 * elf32-arm.c (elf32_arm_check_relocs): Increment P->pc_count for
743 all reloc types with pc_relative set in the howto, not just for
744 R_ARM_REL32 and R_ARM_REL32_NOI.
745 (allocate_dynrelocs_for_symbol): Update comment.
746 (elf32_arm_gc_sweep_hook): For all reloc types with pc_relative
747 set in the howto, set call_reloc_p and may_need_local_target_p but
748 not may_become_dynamic_p; not only for R_ARM_REL32 and R_ARM_REL32_NOI.
749 (elf32_arm_check_relocs): Likewise.
750
01e6c1a4
WN
7512014-08-20 Will Newton <will.newton@linaro.org>
752
753 * config.bfd: Default armeb-*-eabi* to big endian.
754
2974be62
AM
7552014-08-19 Alan Modra <amodra@gmail.com>
756
757 * configure: Regenerate.
758
1009ef28
AM
7592014-08-18 Alan Modra <amodra@gmail.com>
760
761 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't attempt to
762 use dynrelocs for ifunc.
763 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Similarly.
764
1240be6b
AM
7652014-08-18 Alan Modra <amodra@gmail.com>
766
767 PR 17287
768 * elflink.c (on_needed_list): Only consider libraries that have
769 been loaded.
770
75938853
AM
7712014-08-18 Alan Modra <amodra@gmail.com>
772
773 * elflink.c (bfd_elf_discard_info): Return int error status.
774 * stabs.c (_bfd_discard_section_stabs): Comment typo fix.
775 * bfd-in.h (bfd_elf_discard_info): Updata prototype.
776 * bfd-in2.h: Regenerate.
777
513ea82e
AM
7782014-08-14 Alan Modra <amodra@gmail.com>
779
780 * peXXigen.c (pe_print_reloc): Protect against access past end
781 of .reloc section.
782
18cd5bce
AM
7832014-08-14 Alan Modra <amodra@gmail.com>
784
785 PR 16563
786 * elflink.c (bfd_elf_discard_info): Process .eh_frame and .stab
787 in the order they are mapped to output sections.
788
b879806f
AM
7892014-08-14 Alan Modra <amodra@gmail.com>
790
791 * configure.ac: Delete redundant plugin related checks.
792 * configure: Regenerate.
793
ffccb7af
SK
7942014-08-13 Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
795
796 * elf32-or1k.c (or1k_elf_relocate_section, or1k_elf_check_relocs,
797 allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL
798 and SYMBOLIC_BIND.
799
46135103
AM
8002014-08-12 Alan Modra <amodra@gmail.com>
801
802 * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Only call "notice"
803 here when not calling the generic add_symbol function. Formatting.
804 Correct handling of indirect symbols. Update notice call.
805 * elflink.c (_bfd_elf_notice_as_needed): Update notice call.
806 * linker.c (_bfd_generic_link_add_one_symbol): Create indirect
807 symbols early. Update notice call. Add comments regarding weak
808 symbols vs. indirect.
809
88d3f087
AM
8102014-08-12 Alan Modra <amodra@gmail.com>
811
812 PR ld/16746
813 * linker.c (_bfd_generic_link_add_one_symbol <WARN>): Handle
814 !lto_plugin_active.
815
7f59d2ac
CG
8162014-08-07 Chen Gang <gang.chen.5i5j@gmail.com>
817
818 * coff-ppc.c (coff_ppc_relocate_section): Ensure local symbols are
819 zero terminated.
820
db712946
L
8212014-08-07 H.J. Lu <hongjiu.lu@intel.com>
822 Alan Modra <amodra@gmail.com>
823
824 PR ld/16746
825 * linker.c (_bfd_generic_link_add_one_symbol): Don't issue a
826 warning for references in LTO IR to warning symbols.
827
59c26567
AM
8282014-08-07 Alan Modra <amodra@gmail.com>
829
830 * linker.c (WARN, CWARN): Collapse these states to WARN.
831 (_bfd_generic_link_add_one_symbol): Use old CWARN case for
832 new WARN.
833
aaffae57
DE
8342014-08-05 Doug Evans <dje@google.com>
835
836 * bfd-in2.h: Regenerate.
837 * libcoff.h: Regenerate.
838
e034b2cc
MR
8392014-08-05 Maciej W. Rozycki <macro@codesourcery.com>
840
841 * elfxx-mips.c (_bfd_mips_elf_discard_info): Set section's
842 rawsize if changing size.
843
7833fb7b
AM
8442014-08-05 Alan Modra <amodra@gmail.com>
845
846 PR ld/17226
847 * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Typo fix.
848
02eb0a49
AM
8492014-08-05 Alan Modra <amodra@gmail.com>
850
851 * linker.c (generic_link_check_archive_element): Move handling
852 of command link -u symbols with a common symbol def to the
853 code handling non-common symbols so that archive element symbols
854 are loaded. Use generic_link_add_object_symbols.
855
13e570f8
AM
8562014-08-05 Alan Modra <amodra@gmail.com>
857
858 PR 13557
859 * linker.c (struct archive_list, struct archive_hash_entry,
860 struct archive_hash_table, archive_hash_newfunc,
861 archive_hash_table_init, archive_hash_lookup, archive_hash_allocate,
862 archive_hash_table_free): Delete.
863 (_bfd_generic_link_add_archive_symbols): Add h and name params to
864 checkfn. Rewrite using a straight-forward scan over archive map.
865 (generic_link_check_archive_element_no_collect,
866 generic_link_check_archive_element_collect,
867 generic_link_check_archive_element): Add h and name params.
868 * aoutx.h (aout_link_check_archive_element): Likewise.
869 * pdp11.c (aout_link_check_archive_element): Likewise.
870 * xcofflink.c (xcoff_link_check_archive_element): Likewise.
871 * cofflink.c (coff_link_check_archive_element): Likewise. Don't
872 scan symbols, simply add archive element whenever h is undefined.
873 (coff_link_check_ar_symbols): Delete.
874 * ecoff.c (read_ext_syms_and_strs): Delete.
875 (reread_ext_syms_and_strs): Delete.
876 (ecoff_link_check_archive_element): Add h and name param. Don't
877 scan symbols, simply add based on h. Use ecoff_link_add_object_symbols.
878 * elflink.c (elf_link_is_defined_archive_symbol): Don't test
879 archive_pass.
880 (elf_link_add_archive_symbols): Delete "defined" array, merge
881 functionality into "included". Make "included" a char array. Don't
882 set or test archive_pass.
883 * libbfd-in.h (_bfd_generic_link_add_archive_symbols): Update.
884 * libbfd.h: Regenerate.
885
8c784016
KK
8862014-08-01 Takashi Yoshii <yoshii.takashi@renesas.com>
887
888 PR 10373
889 * elf32-sh.c (sh_elf_relax_section): Add jmp to bra relaxing.
890
351cdf24
MF
8912014-07-29 Matthew Fortune <matthew.fortune@imgtec.com>
892
893 * elfxx-mips.c (ABI_O32_P, MIPS_ELF_ABIFLAGS_SECTION_NAME_P): New macro.
894 (mips_elf_obj_tdata): Add abiflags and abiflags_valid fields.
895 (bfd_mips_elf_swap_abiflags_v0_in): New function.
896 (bfd_mips_elf_swap_abiflags_v0_out): Likewise.
897 (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_ABIFLAGS.
898 (_bfd_mips_elf_fake_sections): Likewise.
899 (_bfd_mips_elf_always_size_sections): Handle .MIPS.abiflags.
900 (_bfd_mips_elf_additional_program_headers): Account for new
901 PT_MIPS_ABIFLAGS program header.
902 (_bfd_mips_elf_modify_segment_map): Create PT_MIPS_ABIFLAGS segment and
903 associate with .MIPS.abiflags.
904 (_bfd_mips_elf_gc_mark_extra_sections): New function.
905 (bfd_mips_isa_ext, update_mips_abiflags_isa): New static function.
906 (infer_mips_abiflags): Likewise.
907 (_bfd_mips_elf_final_link): Handle .MIPS.abiflags.
908 (mips_32bit_flags_p): Moved higher.
909 (mips_elf_merge_obj_attributes, _bfd_mips_fp_abi_string): Error
910 checking for FP ABIs.
911 (_bfd_mips_elf_merge_private_bfd_data): Restructure and add abiflags
912 checks. Check EF_MIPS_FP64 flag consistency.
913 (print_mips_ases, print_mips_isa_ext): New static function.
914 (print_mips_fp_abi_value, get_mips_reg_size): Likewise.
915 (_bfd_mips_elf_print_private_bfd_data): Display abiflags data.
916 (_bfd_mips_post_process_headers): Set EI_ABIVERSION = 3 for
917 Val_GNU_MIPS_ABI_FP_64 or Val_GNU_MIPS_ABI_FP_64A.
918 * elfxx-mips.h (_bfd_mips_elf_gc_mark_extra_sections): New prototype.
919 * elf32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
920 * elfn32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
921 * elf64-mips.c (elf_backend_gc_mark_extra_sections): Implement.
922
b794fc1d
AM
9232014-07-28 Alan Modra <amodra@gmail.com>
924
925 PR 13227
926 * archive.c (_bfd_compute_and_write_armap): Warn on adding
927 __gnu_lto_slim to armap.
928 * linker.c (_bfd_generic_link_add_one_symbol): Warn on adding
929 __gnu_lto_slim to linker hash table.
930
48494700
AG
9312014-07-27 Anthony Green <green@moxielogic.org>
932
933 * config.bfd: Add moxie-*-moxiebox*.
934
3d52a869
JS
9352014-07-21 Joel Sherrill <joel.sherrill@oarcorp.com>
936
937 Add or reactivate or1k-*-rtems*
1a8bdf69 938 * config.bfd (or1k-*-rtems*): Reactivate.
3d52a869 939
cca5b8b6
L
9402014-07-16 H.J. Lu <hongjiu.lu@intel.com>
941
942 * elf32-i386.c (elf_i386_plt_sym_val): Match PLT entry only for
943 ELFOSABI_GNU input.
944 * elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
945 (elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
946
144bed8d
L
9472014-07-16 H.J. Lu <hongjiu.lu@intel.com>
948
949 PR binutils/17154
950 * elf32-i386.c (elf_i386_plt_sym_val): Only match R_*_JUMP_SLOT
951 and R_*_IRELATIVE relocation offset with PLT entry.
952 * elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
953 (elf_x86_64_plt_sym_val_offset_plt_bnd): New.
954 (elf_x86_64_get_synthetic_symtab): Use it.
955
998d811a
L
9562014-07-15 H.J. Lu <hongjiu.lu@intel.com>
957
958 PR ld/17057
959 * elf32-i386.c (elf_i386_compute_jump_table_size): Replace
960 next_tls_desc_index with elf.srelplt->reloc_count.
961
87f14779
AM
9622014-07-15 Alan Modra <amodra@gmail.com>
963
964 * cache.c (cache_bread_1): Don't return -1 when fread returns
965 a positive value.
966
cd3416da
AM
9672014-07-15 Alan Modra <amodra@gmail.com>
968
969 * elflink.c (elf_merge_st_other): Update comments. Simplify
970 visibility handling. Make isym const. Move code modifying
971 isym->st_other for --exclude-libs to..
972 (elf_link_add_object_symbols): ..here.
973
17ca87fc
MN
9742014-07-11 Maks Naumov <maksqwe1@ukr.net>
975
976 PR 17141
977 * elf.c (_bfd_elf_strtab_add): Check strtab name for failure.
978
5bc8cb6f
NC
9792014-07-08 Nick Clifton <nickc@redhat.com>
980
981 PR ld/17110
982 * elf32-sh.c (sh_elf_osec_to_segment): Do not look for output
983 segments in input bfds.
984
7572ca89
WN
9852014-07-08 Will Newton <will.newton@linaro.org>
986
987 * elf32-arm.c (ELF_MAXPAGESIZE): Increase the default
988 value to 64kB and remove custom setting for NaCl.
989
bffebb6b
AM
9902014-07-08 Alan Modra <amodra@gmail.com>
991
992 * elflink.c (_bfd_elf_copy_link_hash_symbol_type): Copy st_other
993 bits from source to dest.
994 * linker.c (_bfd_generic_copy_link_hash_symbol_type): Update comment.
995 * targets.c (struct bfd_target <_bfd_copy_link_hash_symbol_type>):
996 Likewise.
997 * bfd-in2.h: Regenerate.
998
2e0488d3
JW
9992014-07-08 Jiong Wang <jiong.wang@arm.com>
1000
1001 * elfnn-aarch64.c (elf_backend_rela_normal): Set to 1.
1002 (elfNN_aarch64_relocate_section): Remove duplicated addend adjustment
1003 when info->relocatable be true.
1004
75f58085
BS
10052014-07-07 Barney Stratford <barney_stratford@fastmail.fm>
1006
1007 * elf32-avr.c: Handle R_AVR_PORT5 and R_AVR_PORT6.
1008 * reloc.c: Add BFD_RELOC_AVR_PORT5 and BFD_RELOC_AVR_PORT6.
1009 * bfd-in2.h: Regenerate.
1010 * libbfd.h: Regenerate.
1011
1110793a
AM
10122014-07-04 Alan Modra <amodra@gmail.com>
1013
1014 * Makefile.am: Update "configure.in" comments.
1015 * PORTING: Likewise.
1016 * aoutx.h: Likewise.
1017 * configure.host: Likewise.
1018 * doc/bfdint.texi: Likewise.
1019 * targets.c: Likewise.
1020 * warning.m4: Likewise.
1021 * Makefile.in: Regenerate.
1022
35eafcc7
AM
10232014-07-04 Alan Modra <amodra@gmail.com>
1024
1025 * configure.ac: Rename from configure.in.
1026 * Makefile.in: Regenerate.
1027 * config.in: Regenerate.
1028 * doc/Makefile.in: Regenerate.
1029
82b57a90
AM
10302014-07-04 Alan Modra <amodra@gmail.com>
1031
1032 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove configure.in.
1033 * Makefile.in: Regenerate.
1034
2e98a7bd
AM
10352014-07-04 Alan Modra <amodra@gmail.com>
1036
1037 * version.m4: New file.
1038 * configure.in: Include version.m4.
1039 (AC_INIT): Update.
1040 * Makefile.am (RELEASE): Delete.
1041 (bfdver.h): Depend on development.sh, use instead of RELEASE.
1042 * Makefile.in: Regenerate.
1043 * doc/Makefile.in: Regenerate.
1044
d1eca1e4
AM
10452014-07-02 Alan Modra <amodra@gmail.com>
1046
1047 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Clear
1048 pointer_equality_needed when !readonly_dynrelocs.
1049 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1050
afb93314
AM
10512014-07-02 Alan Modra <amodra@gmail.com>
1052
1053 * elf32-ppc.c (ppc_elf_check_relocs): Set DF_STATIC_TLS for PIEs too.
1054 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
1055
b6a1c03a
AM
10562014-07-01 Alan Modra <amodra@gmail.com>
1057
1058 * bfd.c (struct bfd): Reorganise for better packing. Delete
1059 "ifd" field. Make "format", "direction" and "flags" bitfields.
1060 (HAS_LOAD_PAGE): Delete, renumber following flags.
1061 * bfd-in2.h: Regenerate.
1062 * coff-tic4x.c: Remove HAS_LOAD_PAGE from extra flags in target vecs.
1063
7341d5e2
AM
10642014-07-01 Alan Modra <amodra@gmail.com>
1065
1066 * elf64-ppc.c (ppc_stub_type): Add ppc_stub_global_entry.
1067 (struct ppc_link_hash_table): Increase size of stub_count array.
1068 (build_global_entry_stubs): Emit symbol on global entry stub.
1069 (ppc64_elf_build_stubs): NULL check htab->brlt. Add global entry
1070 stub stats.
1071
810d4e75
AM
10722014-07-01 Alan Modra <amodra@gmail.com>
1073
1074 * elf64-ppc.c (abiversion, set_abiversion): Move earlier.
1075 (ppc64_elf_branch_reloc): Adjust addend for ELFv2 local offset.
1076 (ppc64_elf_set_toc): Set ".TOC." symbol value when using
1077 generic linker.
1078 (ppc64_elf_relocate_section): Disable ELFv2 function entry
1079 optimisation when --traditional-format.
1080
f36e8886
BS
10812014-07-01 Barney Stratford <barney_stratford@fastmail.fm>
1082 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1083 Pitchumani Sivanupandi <pitchumani.s@atmel.com>
1084 Soundararajan <Sounderarajan.D@atmel.com>
1085
1086 * archures.c: Add avrtiny architecture for avr target.
1087 * cpu-avr.c (arch_info_struct): Add avrtiny arch info.
1088 * elf32-avr.c (elf_avr_howto_table): New relocation R_AVR_LDS_STS_16
1089 added for 16 bit LDS/STS instruction of avrtiny arch.
1090 (avr_reloc_map): Reloc R_AVR_LDS_STS_16 is mapped to
1091 BFD_RELOC_AVR_LDS_STS_16.
1092 (bfd_elf_avr_final_write_processing): Select machine number
1093 avrtiny arch.
1094 (elf32_avr_object_p): Set machine number for avrtiny arch.
1095 * reloc.c: Add documentation for BFD_RELOC_AVR_LDS_STS_16 reloc.
1096 * bfd-in2.h: Regenerate.
1097 * libbfd.h: Regenerate.
1098
60d77146
NC
10992014-06-26 Nick Clifton <nickc@redhat.com>
1100
1101 PR binutils/16949
1102 * dwarf2.c (is_str_attr): New function.
1103 (find_abstract_instance_name): Use it to determine when an
1104 attribute has a string value.
1105
15bfcc77
AM
11062014-06-24 Alan Modra <amodra@gmail.com>
1107
1108 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Arrange to keep
1109 .sdata/.sdata2 when _SDA_BASE_/_SDA2_BASE_ should be output
1110 for --emit-relocs.
1111
886aba9e
PDM
11122014-06-21 Philippe De Muyter <phdm@macqel.be>
1113
1114 * targets.c (_bfd_target_vector): Add missing #ifdef BFD64 for
1115 a number of targets.
1116
eea6dad2
KM
11172014-06-20 Kyle McMartin <kyle@redhat.com>
1118
1119 * elf32-arm.c (elf32_arm_check_relocs): Set DF_STATIC_TLS when
1120 emitting initial-exec relocs when not linking an executable.
1121
9f19ab6d
WN
11222014-06-16 Will Newton <will.newton@linaro.org>
1123
1124 * elf32-arm.c (elf32_arm_allocate_plt_entry): Increment
1125 htab->next_tls_desc_index in the non-IPLT case.
1126 Calculate GOT offset correctly for the non-IPLT case.
1127 (allocate_dynrelocs_for_symbol): Don't increment
1128 htab->next_tls_desc_index here.
1129
eb9a5ecf
AM
11302014-06-16 Alan Modra <amodra@gmail.com>
1131
1132 * elf32-vax.c (elf_vax_size_dynamic_sections): Clear linker
1133 created sections.
1134
d0ae9fbd
OJ
11352014-06-13 Omair Javaid <omair.javaid@linaro.org>
1136
1137 * elfxx-aarch64.c (stdarg.h): Include.
1138 (string.h): Include.
1139 (_bfd_aarch64_elf_grok_prstatus): Updated.
1140 (_bfd_aarch64_elf_grok_psinfo): New function.
1141 (_bfd_aarch64_elf_write_core_note): New function.
1142 * elfxx-aarch64.h (elf_backend_grok_psinfo): Define.
1143 (elf_backend_write_core_note): Define.
1144
d495ab0d
AM
11452014-06-13 Alan Modra <amodra@gmail.com>
1146
1147 * archive.c: Include bfdlink.h.
1148 (_bfd_archive_close_and_cleanup): Call linker hash_table_free.
1149 * bfd.c (struct bfd): Add is_linker_output field.
1150 * elf-bfd.h (_bfd_elf_link_hash_table_free): Update prototype.
1151 * linker.c (_bfd_link_hash_table_init): Set up hash_table_free,
1152 link.hash and is_linker_output.
1153 (_bfd_generic_link_hash_table_free): Replace bfd_link_hash_table*
1154 param with bfd*. Assert is_linker_output and link.hash, and
1155 clear them before exit.
1156 * elf-m10300.c (elf32_mn10300_link_hash_table_free): Replace
1157 bfd_link_hash_table* param with bfd*. Hack is_linker_output
1158 and link.hash so we can free two linker hash tables.
1159 (elf32_mn10300_link_hash_table_create): Create static_hash_table
1160 first. Clean up on errors. Set hash_table_free pointer.
1161 * elf32-arm.c (elf32_arm_link_hash_table_free): Replace
1162 bfd_link_hash_table* param with bfd*.
1163 (elf32_arm_link_hash_table_create): Clean up on errors. Set
1164 hash_table_free pointer.
1165 * elf32-avr.c, * elf32-hppa.c, * elf32-i386.c, * elf32-m68hc1x.c,
1166 * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c, * elf32-xgate.c,
1167 * elf64-ia64-vms.c, * elf64-ppc.c, * elf64-x86-64.c, * elflink.c,
1168 * elfnn-aarch64.c, * elfnn-ia64.c, * elfxx-sparc.c,
1169 * xcofflink.c: Similarly.
1170 * simple.c (bfd_simple_get_relocated_section_contents): Save and
1171 clear link.next before creating linker hash table. Clean up on
1172 errors, and restore link.next on exit.
1173 * elf32-m68hc1x.h (m68hc11_elf_bfd_link_hash_table_free): Delete.
1174 * elf32-xgate.h (xgate_elf_bfd_link_hash_table_free): Delete.
1175 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table_free): Delete.
1176 * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Delete.
1177 * hash.c (bfd_hash_table_init_n): Free table on error.
1178 * libbfd-in.h (_bfd_generic_link_hash_table_free): Update proto.
1179 * bfd-in2.h: Regenerate.
1180 * libbfd.h: Regenerate.
1181 * libcoff.h: Regenerate.
1182
caa4096e
AM
11832014-06-13 Alan Modra <amodra@gmail.com>
1184
1185 PR 17047
1186 * targets.c (BFD_JUMP_TABLE): Delete NAME##_bfd_link_hash_table_free.
1187 (struct bfd_target <_bfd_link_hash_table_free>): Delete.
1188 * bfd.c (bfd_link_hash_table_free): Don't define.
1189 * aout-adobe.c, * aout-target.h, * aout-tic30.c, * binary.c, * bout.c,
1190 * coff64-rs6000.c, * coffcode.h, * elf-m10300.c, * elf32-arm.c,
1191 * elf32-avr.c, * elf32-hppa.c, * elf32-i386.c, * elf32-m68hc11.c,
1192 * elf32-m68hc12.c, * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c,
1193 * elf32-sparc.c, * elf32-xgate.c, * elf64-ia64-vms.c, * elf64-ppc.c,
1194 * elf64-sparc.c, * elf64-x86-64.c, * elfnn-aarch64.c, * elfnn-ia64.c,
1195 * elfxx-target.h, * i386msdos.c, * i386os9k.c, * ieee.c, * ihex.c,
1196 * libbfd-in.h, * libecoff.h, * mach-o-target.c, * mmo.c,
1197 * nlm-target.h, * oasys.c, * pef.c, * plugin.c, * ppcboot.c, * som.c,
1198 * srec.c, * tekhex.c, * verilog.c, * versados.c, * vms-alpha.c,
1199 * xsym.c: Don't define various link_hash_table_free defines, and
1200 remove from bfd_target vars. Temporarily reference some of the
1201 target link_hash_table_free functions to avoid warnings.
1202 * bfd-in2.h: Regenerate.
1203 * libbfd.h: Regenerate.
1204
68faa637
AM
12052014-06-13 Alan Modra <amodra@gmail.com>
1206
1207 * elf-m10300.c, * elf32-arm.c, * elf32-avr.c, * elf32-hppa.c,
1208 * elf32-i386.c, * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-metag.c,
1209 * elf32-nios2.c, * elf64-ia64-vms.c, * elf64-ppc.c, * elf64-x86-64.c,
1210 * elfnn-aarch64.c, * elfnn-ia64.c, * elfxx-sparc.c, * xcofflink.c:
1211 Move link_hash_table_free functions before their corresponding
1212 link_hash_table_create functions.
1213
c72f2fb2
AM
12142014-06-13 Alan Modra <amodra@gmail.com>
1215
1216 * bfd.c (struct bfd): Replace link_next with a union.
1217 * aoutx.h, * bfd.c, * coff-ppc.c, * coff-rs6000.c, * cofflink.c,
1218 * ecoff.c, * elf-m10300.c, * elf32-arm.c, * elf32-avr.c,
1219 * elf32-hppa.c, * elf32-i386.c, * elf32-lm32.c, * elf32-m32c.c,
1220 * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-metag.c,
1221 * elf32-microblaze.c, * elf32-nds32.c, * elf32-nios2.c,
1222 * elf32-or1k.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-s390.c,
1223 * elf32-score.c, * elf32-score7.c, * elf32-sh.c, * elf32-spu.c,
1224 * elf32-tic6x.c, * elf32-tilepro.c, * elf32-xstormy16.c,
1225 * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
1226 * elf64-mmix.c, * elf64-ppc.c, * elf64-s390.c, * elf64-x86-64.c,
1227 * elflink.c, * elfnn-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c,
1228 * elfxx-tilegx.c, * linker.c, * pdp11.c, * peXXigen.c, * simple.c,
1229 * sunos.c, * vms-alpha.c, * xcofflink.c: Update for above.
1230 * bfd-in2.h: Regenerate.
1231
7ed689ad
AM
12322014-06-11 Alan Modra <amodra@gmail.com>
1233
1234 * linker.c (unwrap_hash_lookup): Add missing parens.
1235
07821655
KT
12362014-06-11 Kai Tietz <ktietz@redhat.com>
1237
1238 * libcoff-in.h (coff_tdata): Make relocbase member unsigned.
1239 * libcoff.h: Regenerated.
1240
7b8e2718
AM
12412014-06-10 Alan Modra <amodra@gmail.com>
1242
b71c4043 1243 PR ld/16910
7b8e2718 1244 * linker.c (unwrap_hash_lookup): New function.
1a8bdf69 1245 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): Call unwrap_hash_lookup.
7b8e2718
AM
1246 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1247 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1248 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1249 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
1250 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
1251 * elf32-spu.c (spu_elf_relocate_section): Likewise.
1252 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
1253
a47622ac
AM
12542014-06-07 Alan Modra <amodra@gmail.com>
1255
1256 * elf32-ppc.c (ppc_elf_relocate_section): Treat field of cmpli
1257 insn as a bitfield; Use complain_overflow_bitfield.
1258 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1259
270c9937
JB
12602014-06-05 Joel Brobecker <brobecker@adacore.com>
1261
1262 * development.sh: New file.
1263 * warning.m4 (AM_BINUTILS_WARNINGS): Source bfd/development.sh.
1264 Make -Werror the default with GCC only if DEVELOPMENT is true.
1265 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add
1266 $(srcdir)/development.sh.
1267 * Makefile.in, configure: Regenerate.
1268
ac21917f
WN
12692014-06-04 Will Newton <will.newton@linaro.org>
1270
810d4e75 1271 * elfnn-aarch64.c (tpoff_base): Make test of tls_sec
ac21917f
WN
1272 being non-NULL into an assert.
1273 (elfNN_aarch64_tls_relax): Remove unused code.
1274
33ac0ca1
DD
12752014-06-03 DJ Delorie <dj@redhat.com>
1276
1277 * elf32-rx.c (rx_table_map): Use BFD_VMA_FMT for portability.
1278
c32abae8
NC
12792014-06-03 Nick Clifton <nickc@redhat.com>
1280
1281 PR ld/16807
1282 * peXXigen.c (rsrc_process_section): Page align the new contents
1283 befgore writing out.
1284
397998fc
AM
12852014-06-03 Alan Modra <amodra@gmail.com>
1286
1287 * elf64-ppc.c (ADDIS_R12_R2): Define.
1288 (build_plt_stub): Support fusion on ELFv2 stub.
1289 (ppc_build_one_stub): Likewise for plt branch stubs.
1290
b4894562
AM
12912014-05-28 Alan Modra <amodra@gmail.com>
1292
1293 * elf32-rx.c (rx_table_map): Delete set but not used variables.
1294
4ba3b326
TG
12952014-05-28 Tristan Gingold <gingold@adacore.com>
1296
1297 * dwarf2.c (lookup_address_in_function_table): Add best_fit_len
1298 to keep the length of the best fit range.
1299 (lookup_symbol_in_function_table, info_hash_lookup_funcinfo):
1300 Likewise.
1301
7a2f2d82
DD
13022014-05-27 DJ Delorie <dj@redhat.com>
1303
1a8bdf69 1304 * elf32-rx.c (get_symbol_value_maybe): New.
7a2f2d82
DD
1305 (rx_elf_relocate_section): If we find a reloc against
1306 $tableentry$default$<name>, redirect it to the appropriate
1307 $tableentry$<n>$.
1308 (RX_Table_Info): New.
1309 (rx_table_find): New. Check all tables and SEC_KEEP all sections
1310 with table parts in them.
1311 (rx_check_directives): New.
1312 (rx_table_map_2): New.
1313 (rx_table_map): New.
1314 (rx_additional_link_map_text): New. Called to dump tables to the
1315 map file.
1a8bdf69 1316 * elf32-rx.h: New.
7a2f2d82 1317
bceec4b9
DD
13182014-05-20 DJ Delorie <dj@redhat.com>
1319
1320 * elf32-msp430.c (msp430_elf_relax_adjust_locals): Avoid overflow.
1321
93d1b056
AM
13222014-05-20 Alan Modra <amodra@gmail.com>
1323
1324 PR 16952
1325 * elf32-ppc.c (ppc_elf_create_linker_section): Move earlier.
1326 Remove redundant setting of htab->elf.dynobj. Don't align.
1327 Define .sdata symbols using _bfd_elf_define_linkage_sym.
1328 (ppc_elf_create_glink): Call ppc_elf_create_linker_section.
1329 (create_sdata_sym): Delete.
1330 (elf_allocate_pointer_linker_section): Rename from
1331 elf_create_pointer_linker_section. Align section.
1332 (ppc_elf_check_relocs): Don't call ppc_elf_creat_linker_section
1333 directly here, or create_sdata_sym. Set ref_regular on _SDA_BASE_
1334 and _SDA2_BASE_.
1335 (ppc_elf_size_dynamic_sections): Remove ATTRIBUTE_UNUSED on param.
1336 Remove unnecessary tests on _SDA_BASE_ sym.
1337 (maybe_strip_sdasym, ppc_elf_maybe_strip_sdata_syms): New functions.
1338 (ppc_elf_relocate_section): Tighten SDA reloc symbol section checks.
1339 * elf32-ppc.h (ppc_elf_set_sdata_syms): Delete.
1340 (ppc_elf_maybe_strip_sdata_syms): Declare.
1341
a7c7b2ba
RM
13422014-05-16 Ryan Mansfield <rmansfield@qnx.com>
1343
b4894562 1344 * config.bfd: Move QNX target_cflags from arm-*-netbsd* to arm-*-nto*.
a7c7b2ba
RM
1345
13462014-05-16 Jon Turney <jon.turney@dronecode.org.uk>
6e6e7cfc
JT
1347
1348 * peXXigen.c (pe_print_debugdata): Don't interpret debug directory
1349 in a section with no contents.
1350 (is_vma_in_section, find_section_by_vma): New functions.
1351 (_bfd_XX_bfd_copy_private_bfd_data_common): Recalculate file
1352 offsets in the debug directory.
1353 (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
1354 Byte-swap GUID from little-endian to big-endian order for
1355 consistent and conventional display.
1356
856ea05c
KP
13572014-05-16 Kaushik Phata <Kaushik.Phatak@kpit.com>
1358
1359 * elf32-rl78.c (rl78_elf_merge_private_bfd_data): Complain if
1360 64-bit doubles objects mix with 32-bit doubles objects.
1361 (rl78_elf_print_private_bfd_data): Describe 64-bit doubles flag.
1362
68e0f6b1
HPN
13632014-05-08 Hans-Peter Nilsson <hp@bitrange.com>
1364
1365 * mmo.c: Update URLs in documentation comments.
1366
1058c753
VA
13672014-05-02 Volodymyr Arbatov <arbatov@cadence.com>
1368 David Weatherford <weath@cadence.com>
1369 Max Filippov <jcmvbkbc@gmail.com>
1370
1371 * elf32-xtensa.c (relax_section): treat R_XTENSA_DIFF* relocations as
1372 signed.
1373
e59bc75b
AT
13742014-05-07 Andreas Tobler <andreast@fgznet.ch>
1375
1376 * config.bfd: Add proper arm config for *-*-freebsd*.
1377
ae52f483
AB
13782014-05-07 Andrew Bennett <andrew.bennett@imgtec.com>
1379
1380 * aoutx.h (NAME (aout, machine_type)): Add mips32r3, mips64r3,
1381 mips32r5 and mips64r5.
1382 * archures.c (bfd_architecture): Likewise.
1383 * bfd-in2.h (bfd_architecture): Likewise.
1384 * cpu-mips.c (arch_info_struct): Likewise.
1385 * elfxx-mips.c (mips_set_isa_flags): Likewise.
1386
757a636f
RS
13872014-05-06 Richard Sandiford <rdsandiford@googlemail.com>
1388
1389 * elfxx-mips.h (elfxx-mips.h): Declare.
1390 * elfxx-mips.c (mips_elf_merge_obj_attributes): Use it to report
1391 Tag_GNU_MIPS_ABI_FP mismatches.
1392 (_bfd_mips_fp_abi_string): New function.
1393
2f67d686
AM
13942014-05-02 Alan Modra <amodra@gmail.com>
1395
1396 * targets.c: Sort bfd_target vectors somewhat alphabetically.
1397 * configure.in: Likewise.
1398 * configure: Regenerate.
1399
6d00b590
AM
14002014-05-02 Alan Modra <amodra@gmail.com>
1401
1402 * aix386-core.c, * aout-adobe.c, * aout-arm.c, * aout-ns32k.c,
1403 * aout-sparcle.c, * aout0.c, * aoutx.h, * armnetbsd.c, * bout.c,
1404 * cf-i386lynx.c, * cf-sparclynx.c, * cisco-core.c, * coff-alpha.c,
1405 * coff-apollo.c, * coff-arm.c, * coff-aux.c, * coff-go32.c,
1406 * coff-h8300.c, * coff-h8500.c, * coff-i386.c, * coff-i860.c,
1407 * coff-i960.c, * coff-m68k.c, * coff-m88k.c, * coff-mips.c,
1408 * coff-rs6000.c, * coff-sh.c, * coff-sparc.c, * coff-stgo32.c,
1409 * coff-svm68k.c, * coff-tic80.c, * coff-u68k.c, * coff-w65.c,
1410 * coff-we32k.c, * coff-x86_64.c, * coff-z80.c, * coff-z8k.c,
1411 * coff64-rs6000.c, * config.bfd, * configure.com, * configure.in,
1412 * demo64.c, * elf-m10200.c, * elf-m10300.c, * elf32-am33lin.c,
1413 * elf32-arc.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
1414 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
1415 * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
1416 * elf32-fr30.c, * elf32-frv.c, * elf32-gen.c, * elf32-h8300.c,
1417 * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c, * elf32-i860.c,
1418 * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
1419 * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
1420 * elf32-m68k.c, * elf32-m88k.c, * elf32-mcore.c, * elf32-mep.c,
1421 * elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
1422 * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-nios2.c,
1423 * elf32-or1k.c, * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c,
1424 * elf32-rx.c, * elf32-s390.c, * elf32-score.c, * elf32-sh-symbian.c,
1425 * elf32-sh.c, * elf32-sh64.c, * elf32-sparc.c, * elf32-spu.c,
1426 * elf32-tic6x.c, * elf32-tilegx.c, * elf32-tilepro.c, * elf32-v850.c,
1427 * elf32-vax.c, * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c,
1428 * elf32-xtensa.c, * elf64-alpha.c, * elf64-gen.c, * elf64-hppa.c,
1429 * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, * elf64-ppc.c,
1430 * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c, * elf64-tilegx.c,
1431 * elf64-x86-64.c, * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
1432 * epoc-pe-arm.c, * epoc-pei-arm.c, * hp300bsd.c, * hp300hpux.c,
1433 * hppabsd-core.c, * hpux-core.c, * i386aout.c, * i386bsd.c,
1434 * i386dynix.c, * i386freebsd.c, * i386linux.c, * i386lynx.c,
1435 * i386mach3.c, * i386msdos.c, * i386netbsd.c, * i386os9k.c,
1436 * irix-core.c, * m68k4knetbsd.c, * m68klinux.c, * m68knetbsd.c,
1437 * m88kmach3.c, * m88kopenbsd.c, * mach-o-i386.c, * mach-o-x86-64.c,
1438 * makefile.vms, * mipsbsd.c, * mmo.c, * netbsd-core.c, * newsos3.c,
1439 * nlm32-alpha.c, * nlm32-i386.c, * nlm32-ppc.c, * nlm32-sparc.c,
1440 * ns32knetbsd.c, * osf-core.c, * pc532-mach.c, * pe-arm-wince.c,
1441 * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-mips.c, * pe-ppc.c,
1442 * pe-sh.c, * pe-x86_64.c, * pei-arm-wince.c, * pei-arm.c,
1443 * pei-i386.c, * pei-ia64.c, * pei-mcore.c, * pei-mips.c, * pei-ppc.c,
1444 * pei-sh.c, * pei-x86_64.c, * ppcboot.c, * ptrace-core.c, * riscix.c,
1445 * sco5-core.c, * som.c, * sparclinux.c, * sparclynx.c,
1446 * sparcnetbsd.c, * sunos.c, * targets.c, * trad-core.c,
1447 * vax1knetbsd.c, * vaxbsd.c, * vaxnetbsd.c, * versados.c,
1448 * vms-alpha.c, * vms-lib.c: Rename bfd targets to
1449 <cpu>_<format>_<other>_<endian>_vec. Adjust associated MY macros
1450 on aout targets.
1451 * configure: Regenerate.
1452
1218d67d
HPN
14532014-05-01 Hans-Peter Nilsson <hp@bitrange.com>
1454
1455 * mmo.c (mmo File layout documentation): Add note about low bits
1456 of address.
1457 (mmo_write_chunk): When handling data remainder, assert that
1458 previous remaining data is flushed.
1459 (mmo_write_loc_chunk): Only look for trailing and leading zeros
1460 when dealing with an aligned VMA and for aligned lengths. Don't skip
1461 the last 32-bit-word of zeros.
1462 (mmo_write_loc_chunk): Emit an error if the VMA is not aligned.
1463 (mmo_scan) <case LOP_QUOTE>: Move re-alignment of vma before
1464 emitting data, not after updating it.
1465 <case LOP_LOC>: Call mmo_decide_section with aligned vma.
1466
a953eec9
NC
14672014-04-30 Nick Clifton <nickc@redhat.com>
1468
1469 * compress.c (bfd_is_section_compressed): When checking the
1470 .debug_str section, also check the fifth byte in the section is
1471 not part of a string.
1472
5087d529
AM
14732014-04-30 Alan Modra <amodra@gmail.com>
1474
1475 * elf-eh-frame.c (struct cie.personality): Replace val with sym.
1476 (find_merged_cie): Identify personality functions by (bfd_id,index)
1477 pair when a local sym is used.
1478
230977a4
CS
14792014-04-29 Christian Svensson <blue@cmd.nu>
1480
1481 * elf32-or1k.c: Fix a bug where non-TLS relocations would be forced
1482 into .rela.got if it contained TLS relocations as well.
1483
40af4a36
NC
14842014-04-28 Nick Clifton <nickc@redhat.com>
1485
1486 PR ld/16821
1487 * peXXigen.c (_bfd_XXi_swap_sym_out): Rework fix to avoid compile
1488 time warning.
1489
a9e18c6a
AM
14902014-04-26 Alan Modra <amodra@gmail.com>
1491
1492 * po/SRC-POTFILES.in: Regenerate.
1493 * configure: Regenerate.
1494
88667baf
NC
14952014-04-25 Nick Clifton <nickc@redhat.com>
1496
1497 PR ld/16821
1498 * peXXigen.c (_bfd_XXi_swap_sym_out): Another fix for building on
1499 a 342-bit host. This time for older versions of gcc.
1500
08937d80
NC
15012014-04-24 Nick Clifton <nickc@redhat.com>
1502
1503 * peXXigen.c (rsrc_print_section): Fix compile time warning for
1504 32-bit hosts.
1505
93ee1e36
AM
15062014-04-24 Alan Modra <amodra@gmail.com>
1507
1508 PR 16867
1509 * dwarf2.c: Formatting.
1510 (struct dwarf2_debug): Make adjusted_section_count signed.
1511 (unset_sections): Make i signed.
1512 (set_debug_vma): New function.
1513 (place_sections): Handle separate debug object file. Set VMA
1514 on debug sections, even if they have an output section. Also
1515 set VMA on zero size sections, and non-load but alloc sections.
1516 Set adjusted_section_count to -1 when no section adjustment.
1517 Malloc adjusted_sections. Don't double last_vma. Transfer
1518 alloc section VMAs to separate debug file.
1519 (_bfd_dwarf2_cleanup_debug_info): Free adjusted_sections.
1520 (_bfd_dwarf2_slurp_debug_info): Add do_place parameter. Drop
1521 test on symbols being the same before using old stash. Read
1522 and use separate debug file symbols. Call place_sections.
1523 (find_line): Don't call place_sections here.
1524 * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Update proto.
1525 * libbfd.h: Regenerate.
1526 * mach-o.c (bfd_mach_o_find_nearest_line): Adjust
1527 _bfd_dwarf2_slurp_debug_info call.
1528 * simple.c (simple_save_output_info): Clarify comment.
1529
3714081c
NC
15302014-04-24 Nick Clifton <nickc@redhat.com>
1531
1532 PR ld/16807
1533 * peXXigen.c (struct rsrc_regions): New structure.
1534 (rsrc_print_resource_directory): Use new structure. Include
1535 offset of directory in listing.
1536 (rsrc_print_resource_entry): Likewise.
1537 (rsrc_print_section): Likewise.
1538 (rsrc_count_entries): Do not increment sizeof_strings or
1539 sizeof_leaves.
1540 (rsrc_count_directory): Do not increment sizeof_tables.
1541 (rsrc_compute_region_sizes): New function.
1542 (rsrc_write_leaf): Maintain 8-byte alignment for resource data.
1543 (rsrc_process_section): Compute size of regions after merging
1544 entries.
1545
cd0449ab
AM
15462014-04-23 Alan Modra <amodra@gmail.com>
1547
1548 PR ld/16787
1549 * dwarf2.c (struct dwarf2_debug): Add sec_vma field.
1550 (place_sections): Do not modify VMA of sections when called from
1551 linker after sections have been placed in output sections. Short
1552 circuit single section case.
1553 (save_section_vma, section_vma_same): New functions.
1554 (_bfd_dwarf2_slurp_debug_info): Throw away stash if section VMAs
1555 change.
1556 * reloc.c (bfd_perform_relocation): Do not modify reloc addend
1557 when non-relocatable.
1558
d5f59c10
NC
15592014-04-22 Nick Clifton <nickc@redhat.com>
1560
1561 PR ld/16821
1562 * peXXigen.c (_bfd_XXi_swap_sym_out): Fix for 32-bit hosts.
1563
73589c9d
CS
15642014-04-22 Christian Svensson <blue@cmd.nu>
1565
1566 * Makefile.am: Remove openrisc and or32 support. Add support for or1k.
1567 * archures.c: Likewise.
1568 * coffcode.h: Likewise.
1569 * config.bfd: Likewise.
1570 * configure.in: Likewise.
1571 * reloc.c: Likewise.
1572 * targets.c: Likewise.
1573 * cpu-or1k.c: New file.
1574 * elf32-or1k.c: New file.
1575 * coff-or32.c: Delete.
1576 * cpu-openrisc.c: Delete.
1577 * cpu-or32.c: Delete.
1578 * elf32-openrisc.c: Delete.
1579 * elf32-or32.c: Delete.
1580 * Makefile.in: Regenerate.
1581 * bfd-in2.h: Regenerate.
1582 * configure: Regenerate.
1583 * libbfd.h: Regenerate.
1584
285fc9d8
YZ
15852014-04-22 Yuanhui Zhang <asmwarrior@gmail.com>
1586
1587 PR ld/16821
1588 * peXXigen.c (abs_finder): Fix for 32-bit host builds.
1589
5d3b02f0
WN
15902014-04-22 Will Newton <will.newton@linaro.org>
1591
1592 * elfnn-aarch64.c (elfNN_aarch64_section_flags): Remove
1593 function. (elf_backend_section_flags): Remove define.
1594
cc75d373
RH
15952014-04-21 Richard Henderson <rth@redhat.com>
1596
d1c109de
RH
1597 * elf64-alpha.c (elf64_alpha_size_got_sections): New may_merge
1598 parameter; honor it and disable got merging when false.
1599 (elf64_alpha_relax_got_load): Do not relax to GPREL relocs during
1600 the first pass of relaxation.
1601 (elf64_alpha_relax_with_lituse): Likewise. Move relaxed relocs to
1602 the end of the LITERAL+LITUSE chain.
1603 (elf64_alpha_relax_section): Only process LITERAL relocs during the
1604 second pass of relaxation.
1605
cc75d373
RH
1606 * configure.ac (use_secureplt): Enable by default.
1607 * configure: Rebuild.
1608
c9ffd2ea
TG
16092014-04-18 Tristan Gingold <gingold@adacore.com>
1610
1611 * mach-o.h (bfd_mach_o_dyld_info_command): Add rebase_content,
1612 bind_content, weak_bind_content, lazy_bind_content,
1613 export_content.
1614 (bfd_mach_o_load_command): Add comments, add next field.
1615 (mach_o_data_struct): Replace commands field by first_command
1616 and last_command.
1617 * mach-o.c (bfd_mach_o_append_command): New function.
1618 (bfd_mach_o_bfd_copy_private_symbol_data): Add blank lines.
1619 (bfd_mach_o_bfd_copy_private_section_data): Check flavour,
1620 copy fields.
1621 (bfd_mach_o_bfd_copy_private_header_data): Copy load commands.
1622 (bfd_mach_o_pad4, bfd_mach_o_pad_command): New functions.
1623 (bfd_mach_o_write_thread): Use macro instead of literal.
1624 (bfd_mach_o_write_dylinker, bfd_mach_o_write_dylib)
1625 (bfd_mach_o_write_main, bfd_mach_o_write_dyld_info): New
1626 functions.
1627 (bfd_mach_o_write_symtab_content): New function (extracted
1628 from bfd_mach_o_write_symtab).
1629 (bfd_mach_o_write_symtab): Split.
1630 (bfd_mach_o_count_indirect_symbols): Move
1631 (bfd_mach_o_build_dysymtab): Remove layout code.
1632 (bfd_mach_o_write_contents): Rewritten to build commands in order.
1633 (bfd_mach_o_count_sections_for_seg): Remove.
1634 (bfd_mach_o_build_obj_seg_command): New function (extracted from
1635 bfd_mach_o_build_seg_command).
1636 (bfd_mach_o_build_exec_seg_command): New function.
1637 (bfd_mach_o_build_dysymtab_command): Remove.
1638 (bfd_mach_o_layout_commands): New function.
1639 (bfd_mach_o_init_segment): New function.
1640 (bfd_mach_o_build_commands): Major rework to handle non-object
1641 files.
1642 (bfd_mach_o_alloc_and_read, bfd_mach_o_read_dyld_content): New
1643 function.
1644 (bfd_mach_o_read_dyld_info): Clear content fields.
1645 (bfd_mach_o_read_segment): Adjust call.
1646 (bfd_mach_o_flatten_sections): Adjust as now load commands are
1647 chained.
1648 (bfd_mach_o_scan_start_address, bfd_mach_o_scan)
1649 (bfd_mach_o_mkobject_init, bfd_mach_o_get_base_address)
1650 (bfd_mach_o_lookup_command, bfd_mach_o_core_fetch_environment):
1651 Likewise.
1652
967b2c53
TG
16532014-04-18 Tristan Gingold <gingold@adacore.com>
1654
1655 * mach-o-target.c (bfd_mach_o_bfd_copy_private_header_data):
1656 Define instead of bfd_mach_o_bfd_copy_private_bfd_data.
1657 * mach-o.c (bfd_mach_o_bfd_copy_private_bfd_data): Rename.
1658 * mach-o.h (bfd_mach_o_bfd_copy_private_bfd_data): Likewise.
1659
4525c51a
TG
16602014-04-18 Tristan Gingold <gingold@adacore.com>
1661
1662 * mach-o.h (bfd_mach_o_dylinker_command)
1663 (bfd_mach_o_dylib_command, bfd_mach_o_fvmlib_command): Remove
1664 name_len field.
1665 * mach-o.c (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib)
1666 (bfd_mach_o_read_fvmlib): Adjust after name_len removal.
1667
4384b284
TG
16682014-04-18 Tristan Gingold <gingold@adacore.com>
1669
1670 * mach-o.h (bfd_mach_o_backend_data): Add page_size field.
1671 * mach-o-target.c: Check TARGET_PAGESIZE is defined.
1672 (TARGET_NAME_BACKEND): Add TARGET_PAGESIZE.
1673 * mach-o.c (TARGET_PAGESIZE): Define and undefined for
1674 each targets declared.
1675 * mach-o-x86-64.c (TARGET_PAGESIZE): Define.
1676 * mach-o-i386.c (TARGET_PAGESIZE): Define.
1677
452216ab
TG
16782014-04-18 Tristan Gingold <gingold@adacore.com>
1679
1680 * mach-o.c (bfd_mach_o_write_thread)
1681 (bfd_mach_o_write_section_32, bfd_mach_o_write_section_64)
1682 (bfd_mach_o_write_segment_32, bfd_mach_o_write_segment_64)
1683 (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib)
1684 (bfd_mach_o_read_prebound_dylib, bfd_mach_o_read_prebind_cksum)
1685 (bfd_mach_o_read_twolevel_hints, bfd_mach_o_read_fvmlib)
1686 (bfd_mach_o_read_thread, bfd_mach_o_read_dysymtab)
1687 (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid)
1688 (bfd_mach_o_read_linkedit, bfd_mach_o_read_str)
1689 (bfd_mach_o_read_dyld_info, bfd_mach_o_read_segment)
1690 (bfd_mach_o_read_segment_32, bfd_mach_o_read_segment_64)
1691 (bfd_mach_o_read_command): Now return a boolean status.
1692 Adjust return statements.
1693 (bfd_mach_o_write_contents, bfd_mach_o_scan): Adjust tests.
1694 (bfd_mach_o_core_file_failing_command): Remove useless initialization.
1695
cb22ccf4
KCY
16962014-04-17 Kwok Cheung Yeung <kcy@codesourcery.com>
1697
1698 * elfxx-mips.c (struct mips_got_info): Delete assigned_gotno
1699 field. Add assigned_low_gotno and assigned_high_gotno fields.
1700 (mips_elf_create_local_got_entry): Update out-of-space condition.
1701 Set index of new GOT entry to assigned_low_gotno if required by
1702 the current relocation, else set it to assigned_high_gotno.
1703 (mips_elf_set_global_gotidx): Replace uses of assigned_gotno
1704 with assigned_low_gotno.
1705 (mips_elf_multi_got): Initialize assigned_low_gotno and
1706 assigned_high_gotno in secondary GOTs. Use assigned_low_gotno
1707 in place of assigned_gotno when handling global GOT entries.
1708 (mips_elf_lay_out_got): Initialize assigned_low_gotno and
1709 assigned_high_gotno.
1710 (_bfd_mips_elf_finish_dynamic_sections): Account for a possible
1711 gap in the middle of local GOT space.
1712
4c34aff8
AM
17132014-04-17 Alan Modra <amodra@gmail.com>
1714
1715 PR 16846
1716 * elflink.c (_bfd_elf_merge_symbol): Ignore TLS mismatch when
1717 current bfd is a plugin. Don't always set type_change_ok
1718 when old bfd is a plugin.
1719
12241a34
TG
17202014-04-16 Tristan Gingold <gingold@adacore.com>
1721
1722 * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Adjust cpusubtype
1723 flag.
1724
40fd06d1
AM
17252014-04-16 Alan Modra <amodra@gmail.com>
1726
1727 * elf32-ppc.c (ppc_elf_relocate_section): Fill 476 fixup area
1728 with "ba 0" rather than zeros.
1729
fa85fb9a
MS
17302014-04-15 Marcus Shawcroft <marcus.shawcroft@arm.com>
1731
1732 * (elfNN_aarch64_tls_relax): Fix instruction mask.
1733
da3a2088
AM
17342014-04-14 Alan Modra <amodra@gmail.com>
1735
1736 * elf32-ppc.c (BA): Define
1737 (ppc_elf_link_hash_table_create): Correct default_params.
1738 (write_glink_stub): Pad small plt call stub with "ba 0" rather
1739 than "nop" for ppc476_workaround.
1740 (ppc_elf_finish_dynamic_sections): Likewise for branch table
1741 and __glink_PLTresolve. Ensure plt call stub at end of page
1742 doesn't allow fall-thru prefetch.
1743
32ae0d80
NC
17442014-04-11 Nick Clifton <nickc@redhat.com>
1745
1746 PR ld/16821
1747 * peXXigen.c (abs_finder): New function.
1748 (_bfd_XXi_swap_sym_out): For absolute symbols with values larger
1749 than 1^32 try to convert them into section relative values
1750 instead.
1751
85cf705b
NC
17522014-04-11 Nick Clifton <nickc@redhat.com>
1753
1754 * bfd-in2.h: Regenerate.
1755 * libbfd.h: Regenerate.
1756
1511baec
SL
17572014-04-10 Cesar Philippidis <cesar@codesourcery.com>
1758
1759 * elf32-nios2.c (nios2_elf32_build_stubs): Ignore dynobjs
1760 when building function stubs.
1761
e4ef1b6c
DC
17622014-04-10 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
1763
1764 * elf32-avr.c: Add DIFF relocations for AVR.
1765 (avr_final_link_relocate): Handle the DIFF relocs.
1766 (bfd_elf_avr_diff_reloc): New.
1767 (elf32_avr_is_diff_reloc): New.
1768 (elf32_avr_adjust_diff_reloc_value): Reduce difference value.
1769 (elf32_avr_relax_delete_bytes): Recompute difference after deleting
1770 bytes.
1771
1772 * reloc.c: Add BFD_RELOC_AVR_DIFF8/16/32 relocations
1773
e30d16e9
AM
17742014-04-09 Alan Modra <amodra@gmail.com>
1775
1776 * libcoff.h: Regenerate.
1777
b4ab4364
AM
17782014-04-09 Alan Modra <amodra@gmail.com>
1779
1780 * elf32-ppc.c (ppc_elf_relocate_section): Remove bctr from list
1781 of safe ppc476 insns at end of page. Also remove non-branch insns.
1782 Expand comments.
1783
6e6e7cfc 17842014-04-08 Jon Turney <jon.turney@dronecode.org.uk>
61e2488c
JT
1785
1786 * peXXigen.c (pe_print_debugdata): New function: Displays the
1787 contents of the debug directory and decodes codeview entries.
1788 (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
1789 (_bfd_XXi_slurp_codeview_record, _bfd_XXi_write_codeview_record):
1790 Add functions for reading and writing debugdir and codeview
1791 records.
1792 * libpei.h (_bfd_XXi_swap_debugdir_in, _bfd_XXi_swap_debugdir_out)
1793 (_bfd_XXi_write_codeview_record): Add prototypes and macros.
1794 * libcoff-in.h (pe_tdata): Add build-id data.
1795 * libcoff.h: Regenerate.
1796 * coffcode.h (coff_write_object_contents): Run build_id
1797 after_write_object_contents hook.
1798
115c6d5c
AM
17992014-04-05 Alan Modra <amodra@gmail.com>
1800
1801 * elflink.c (_bfd_elf_add_default_symbol): Pass poldbfd when
1802 merging non-default sym.
1803
26954155
TG
18042014-04-04 Tristan Gingold <gingold@adacore.com>
1805
1806 * mach-o.c (bfd_mach_o_header_p): Reject 64 bit target when not
1807 configured for.
1808
ca148c5a
TG
18092014-04-04 Tristan Gingold <gingold@adacore.com>
1810
1811 * mach-o.c (bfd_mach_o_convert_section_name_to_mach_o): Fix
1812 thinko on names length.
1813
47c50932
TG
18142014-04-04 Tristan Gingold <gingold@adacore.com>
1815
1816 * mach-o-i386.c (bfd_mach_o_i386_swap_reloc_out): Use target index
1817 of output_section.
1818 * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Ditto.
1819
4ef27e04
TG
18202014-04-04 Tristan Gingold <gingold@adacore.com>
1821
1822 * bfd.c (bfd_get_arch_size): Default is taken from arch.
1823
b69c8728
JT
18242014-04-03 Jon Turney <jon.turney@dronecode.org.uk>
1825
1826 * peXXigen.c (pe_print_edata): Verify edt.name lies inside
1827 section before dereferencing.
1828 (pe_print_idata, pe_print_edata, pe_print_reloc)
1829 (rsrc_print_section): Don't bother interpreting the contents
1830 of sections which have no contents.
1831
1b6aeedb
MG
18322014-04-03 Maria Guseva <m.guseva@samsung.com>
1833
1834 PR ld/16803
1835 * elf.c (_bfd_elf_set_section_contents): Use correct type to hold
1836 file position.
1837
707e555b
TG
18382014-04-03 Tristan Gingold <gingold@adacore.com>
1839
1840 * mach-o.c (bfd_mach_o_mangle_symbols): Use index from
1841 output_section.
1842 (bfd_mach_o_build_seg_command): Add comment. Realign segment.
1843 Fix style.
1844 (bfd_mach_o_build_commands, bfd_mach_o_read_thread): Fix style.
1845
c3fcb775
AM
18462014-04-03 Alan Modra <amodra@gmail.com>
1847
1848 * elf-bfd.h (struct elf_backend_data
1849 <elf_backend_bfd_from_remote_memory>): Replace "size_t size"
1850 with "bfd_size_type size".
1851 (_bfd_elf32_bfd_from_remote_memory): Likewise.
1852 (_bfd_elf64_bfd_from_remote_memory): Likewise.
1853 * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
1854 * elfcode.h (bfd_from_remote_memory): Likewise.
2493504a
AM
1855 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Likewise.
1856 * bfd-in2.h: Regenerate.
c3fcb775 1857
7a79c514
TG
18582014-04-02 Tristan Gingold <gingold@adacore.com>
1859
1860 * mach-o.h (bfd_mach_o_twolevel_hints_command)
1861 (bfd_mach_o_prebind_cksum_command): New types.
1862 (bfd_mach_o_prebound_dylib_command): Rewrite.
1863 (bfd_mach_o_load_command): Add prebind_cksum and twolevel_hints
1864 fields.
1865 * mach-o.c (bfd_mach_o_read_prebound_dylib): Read and decode the
1866 command.
1867 (bfd_mach_o_read_prebind_cksum): New function.
1868 (bfd_mach_o_read_twolevel_hints): Ditto.
1869 (bfd_mach_o_read_command): Handle prebind cksum and twolevel hints
1870 commands.
1871
5979d6b6
AM
18722014-04-02 Alan Modra <amodra@gmail.com>
1873
1874 * elfcode.h (bfd_from_remote_memory): Add "size" parameter.
1875 Consolidate code handling possible section headers past end of
1876 segment. Don't use p_align for page size guess, instead use
1877 minpagesize. Take note of ld.so clearing section headers when
1878 p_memsz > p_filesz. Handle file header specifying no section
1879 headers. Handle zero p_align throughout. Default loadbase to
1880 zero. Add comments. Rename contents_size to high_offset, and
1881 make it a bfd_vma. Delete unnecessary bfd_set_error calls.
1882 * bfd-in.h (bfd_elf_bfd_from_remote_memory): Update prototpe.
1883 * elf-bfd.h (struct elf_backend_data <elf_backend_from_remote_memory>):
1884 Likewise.
1885 (_bfd_elf32_bfd_from_remote_memory): Likewise.
1886 (_bfd_elf64_bfd_from_remote_memory): Likewise.
1887 * elf.c (bfd_elf_bfd_from_remote_memory): Adjust.
1888 * bfd-in2.h: Regnerate.
1889
23d72939
TG
18902014-04-01 Tristan Gingold <gingold@adacore.com>
1891
1892 * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Avoid to crash
1893 when num == 0.
1894
6a631e86 18952014-03-27 Yury Gribov <y.gribov@samsung.com>
b4894562 1896 Pavel Fedin <p.fedin@samsung.com>
6a631e86 1897
b4894562 1898 * elf32-arm.c: Add support for limited pretty-printing of PLT
6a631e86
YG
1899 entries on eabi and nacl targets.
1900 (elf32_arm_get_synthetic_symtab): Add new callback.
b4894562
AM
1901 (elf32_arm_nacl_plt_sym_val): Likewise.
1902 (elf32_arm_plt0_size): Add helper function.
1903 (elf32_arm_plt_size): Likewise.
6a631e86 1904
10be66a4
TG
19052014-03-27 Tristan Gingold <gingold@adacore.com>
1906
1907 * mach-o.c (bfd_mach_o_read_dylinker): Remove assert.
1908 (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DYLD_ENVIRONMENT.
1909
3cc27770
TG
19102014-03-27 Tristan Gingold <gingold@adacore.com>
1911
1912 * mach-o.h (bfd_mach_o_get_base_address): New prototype.
1913 * mach-o.c (bfd_mach_o_write_symtab)
1914 (bfd_mach_o_write_contents)
1915 (bfd_mach_o_set_section_flags_from_bfd)
1916 (bfd_mach_o_build_seg_command): Fix indentation.
1917 (bfd_mach_o_get_base_address): New function.
1918
55bfc9ac
NC
19192014-03-26 Nick Clifton <nickc@redhat.com>
1920
1921 * cofflink.c (_bfd_coff_generic_relocate_section): Skip
1922 relocations in discarded sections.
1923
d8028530
TG
19242014-03-26 Tristan Gingold <gingold@adacore.com>
1925
1926 * mach-o.c (bfd_mach_o_convert_architecture): Add
1927 BFD_MACH_O_CPU_TYPE_ARM64.
1928
f6c7c3e8
AM
19292014-03-26 Alan Modra <amodra@gmail.com>
1930
1931 * elf64-ppc.c (ppc64_elf_check_relocs): Account for possibly
1932 needed plt entries when taking the address of functions for
1933 abiversion == 0 (ie. unknown) as well as abiversion == 2.
1934 Move opd setup and abiversion checks to..
1935 (ppc64_elf_before_check_relocs): ..here. Renamed from
1936 ppc64_elf_process_dot_syms. Set output abiversion from input and
1937 input abiversion from output, if either is not set.
1938 (ppc64_elf_merge_private_bfd_data): Don't merge flags here.
1939 (elf_backend_check_directives): Update.
1940
c955de36
WN
19412014-03-25 Will Newton <will.newton@linaro.org>
1942
1943 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections):
1944 Set value of DT_PLTRELSZ and DT_RELASZ based on the size
1945 of input sections rather than output sections.
1946
97323ad1
WN
19472014-03-20 Will Newton <will.newton@linaro.org>
1948
1949 PR ld/16715
1950 * elf32-arm.c (elf32_arm_check_relocs): Set
1951 pointer_equality_needed for absolute references within
1952 executable links.
1953 (elf32_arm_finish_dynamic_symbol): Set st_value to zero
1954 unless pointer_equality_needed is set.
1955
1d63324c
NC
19562014-03-19 Nick Clifton <nickc@redhat.com>
1957
6caf7111
NC
1958 * peXXigen.c (rsrc_process_section): Add code to scan input
1959 sections and record their lengths. Use these lengths to find the
1960 start of each merged .rsrc section.
1d63324c 1961
fbe383b9
TG
19622014-03-17 Tristan Gingold <gingold@adacore.com>
1963
1964 * mach-o.c (bfd_mach_o_read_dylib): Handle lazy load dylib.
1965 (bfd_mach_o_read_command): Ditto.
1966
5a026fc9
NC
19672014-03-14 Meador Inge <meadori@codesourcery.com>
1968
b4894562
AM
1969 * configure.in: Add strnlen to AC_CHECK_DECLS.
1970 * config.in: Regenerate.
1971 * configure: Regenerate.
1972 * sysdep.h (strnlen): Add prototype.
5a026fc9 1973
c3301df1
AM
19742014-03-14 Alan Modra <amodra@gmail.com>
1975
1976 * elf32-ppc.c (ppc_elf_relocate_section): Correct overflow
1977 handling for VLE_SDA21 relocs.
1978
167ad85b
TG
19792014-03-13 Tristan Gingold <gingold@adacore.com>
1980
1981 * peicode.h (pe_ILF_object_p): Adjust, as the version number
1982 has been read.
1983 (pe_bfd_object_p): Also read version number to detect ILF.
1984 * pe-x86_64.c (COFF_WITH_PE_BIGOBJ): Define.
1985 (x86_64pe_bigobj_vec): Define
1986 * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_max_nscns field.
1987 (bfd_coff_max_nscns): New macro.
1988 (coff_compute_section_file_positions): Use unsigned int for
1989 target_index. Compare with bfd_coff_max_nscns.
1990 (bfd_coff_std_swap_table, ticoff0_swap_table, ticoff1_swap_table):
1991 Set a value for _bfd_coff_max_nscns.
1992 (header_bigobj_classid): New constant.
1993 (coff_bigobj_swap_filehdr_in, coff_bigobj_swap_filehdr_out)
1994 (coff_bigobj_swap_sym_in, coff_bigobj_swap_sym_out)
1995 (coff_bigobj_swap_aux_in, coff_bigobj_swap_aux_out): New
1996 functions.
1997 (bigobj_swap_table): New table.
1998 * libcoff.h: Regenerate.
1999 * coff-sh.c (bfd_coff_small_swap_table): Likewise.
2000 * coff-alpha.c (alpha_ecoff_backend_data): Add value for
2001 _bfd_coff_max_nscns.
2002 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2003 * coff-rs6000.c (bfd_xcoff_backend_data)
2004 (bfd_pmac_xcoff_backend_data): Likewise.
2005 * coff64-rs6000.c (bfd_xcoff_backend_data)
2006 (bfd_xcoff_aix5_backend_data): Likewise.
2007 * targets.c (x86_64pe_bigobj_vec): Declare.
2008 * configure.in (x86_64pe_bigobj_vec): New vector.
2009 * configure: Regenerate.
2010 * config.bfd: Add bigobj object format for Windows targets.
2011
c792917c
NC
20122014-03-12 Nick Clifton <nickc@redhat.com>
2013
2014 PR ld/16671
2015 * elf32-arm.c (elf32_arm_add_symbol_hook): Check for ARM format
2016 before testing for vxworks.
2017
fa47fa92
AM
20182014-03-12 Alan Modra <amodra@gmail.com>
2019
2020 * Makefile.in: Regenerate.
2021
bbefd0a9
AM
20222014-03-12 Alan Modra <amodra@gmail.com>
2023
2024 PR 16690
2025 * elf.c (copy_elf_program_header): Ignore first section lma if
2026 non-alloc.
2027
3c865fca
AM
20282014-03-11 Alan Modra <amodra@gmail.com>
2029
2030 PR 16686
2031 * coff-rs6000.c: Include stdint.h.
2032 * coff64-rs6000.c: Likewise.
2033
ce15efd8
TG
20342014-03-10 Tristan Gingold <gingold@adacore.com>
2035
2036 * ticoff.h: Removed.
2037
86c95733
AM
20382014-03-08 Alan Modra <amodra@gmail.com>
2039
2040 * elf32-ppc.c (ppc_elf_howto_raw): Correct overflow check for
2041 many relocations. Correct bitsize and rightshift too for a number
2042 of VLE relocs. Describe R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO.
2043 Correct dst_mask on R_PPC_VLE_SDA21_LO.
2044 (ppc_elf_vle_split16): Tidy, delete unnecessary prototype.
2045 (ppc_elf_relocate_section): Modify overflow test for 16-bit
2046 fields in instructions to signed/unsigned according to whether
2047 the field takes a signed or unsigned value. Tidy vle split16 code.
2048 Correct R_PPC_VLE_SDA21 and R_PPC_VLE_SDA21_LO handling.
2049
b80eed39
AM
20502014-03-08 Alan Modra <amodra@gmail.com>
2051
2052 * elf64-ppc.c (ppc64_elf_howto_raw): Use complain_overflow_signed
2053 for R_PPC64_ADDR14, R_PPC64_ADDR14_BRTAKEN, R_PPC64_ADDR14_BRNTAKEN,
2054 R_PPC64_SECTOFF, R_PPC64_ADDR16_DS, R_PPC64_SECTOFF_DS,
2055 R_PPC64_REL16 entries. Use complain_overflow_dont for R_PPC64_TOC.
2056 (ppc64_elf_relocate_section): Modify overflow test for 16-bit
2057 fields in instructions to signed/unsigned according to whether
2058 the field takes a signed or unsigned value.
2059
c38e8559
PA
20602014-03-07 Pedro Alves <palves@redhat.com>
2061
5893c83a 2062 PR gdb/16696
c38e8559
PA
2063 * rs6000-core.c (rs6000coff_core_p): Cast pointers to bfd_vma
2064 through ptr_to_uint instead of through long.
2065
e9847026
NC
20662014-03-06 Nick Clifton <nickc@redhat.com>
2067
2068 PR 16664
2069 * elf-attrs.c (_bfd_elf_parse_attributes): Add checks for corrupt
2070 attribute section names.
2071
4b95cf5c
AM
20722014-03-05 Alan Modra <amodra@gmail.com>
2073
2074 Update copyright years.
2075
45965137
AM
20762014-03-05 Alan Modra <amodra@gmail.com>
2077
2078 * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_ADDR64_LOCAL entry.
2079 (ppc64_elf_reloc_type_lookup): Support R_PPC64_ADDR64_LOCAL.
2080 (ppc64_elf_check_relocs): Likewise.
2081 (ppc64_elf_relocate_section): Likewise.
2082 * Add BFD_RELOC_PPC64_ADDR64_LOCAL.
2083 * bfd-in2.h: Regenerate.
2084 * libbfd.h: Regenerate.
2085
cd0c81e9 20862014-03-04 Heiher <r@hev.cc>
4ba154f5
RS
2087
2088 * elfxx-mips.c (mips_set_isa_flags): Use E_MIPS_ARCH_64R2 for
2089 Loongson-3A.
2090 (mips_mach_extensions): Make bfd_mach_mips_loongson_3a an
2091 extension of bfd_mach_mipsisa64r2.
2092
eed94f8f
NC
20932014-03-04 Nick Clifton <nickc@redhat.com>
2094
2095 PR ld/16017
2096 * elf32-arm.c (elf32_thumb2_plt0_entry): New array.
2097 (elf32_thumb2_plt_entry): New array.
2098 (elf32_arm_create_dynamic_sections): Set PLT entry sizes when
2099 using thumb2 based PLT.
2100 (elf32_arm_populate_plt_entry): Handle generating Thumb2 based PLT
2101 entries.
2102 (elf32_arm_final_link_relocate): Do not bias jumps to Thumb based
2103 PLT entries.
2104 (elf32_arm_finish_dynamic_sections): Handle creation of Thumb2
2105 based PLT 0-entry.
2106 (elf32_arm_output_plt_map_1): Handle creation of local symbols for
2107 Thumb2 based PLT 0-entry.
2108 (elf32_arm_output_arch_local_syms): Handle creation of local
2109 symbols for Thumb2 based PLT entries.
2110
9850436d
AM
21112014-02-28 Alan Modra <amodra@gmail.com>
2112
2113 PR ld/16643
2114 * elflink.c (elf_gc_sweep): Call gc_sweep_hook for exactly
2115 the same conditions we called check_relocs.
2116
1db37fe6
YG
21172014-02-27 Yuri Gribov <y.gribov@samsung.com>
2118
2119 * bfd-in.h: Add export of bfd_elf32_arm_use_long_plt.
2120 * bfd-in2.h: Regenerate.
2121 * elf32-arm.c (elf32_arm_plt_entry_long): New array.
2122 (elf32_arm_link_hash_table_create): Set plt_entry_size to 16 if
2123 using long PLT entries.
2124 (bfd_elf32_arm_use_long_plt): New function.
2125 (elf32_arm_populate_plt_entry): Add support for long PLT entries.
2126
db434ba0
AM
21272014-02-27 Alan Modra <amodra@gmail.com>
2128
2129 * elf32-ppc.c (ppc_elf_link_hash_table_create): Provide default
2130 params for targets that don't use ppc32elf.em.
2131
d9972968
CLT
21322014-02-20 Chung-Lin Tang <cltang@codesourcery.com>
2133
2134 * elf32-nios2.c (nios2_elf32_relocate_section): Fix calculation
2135 of GOTOFF relocations.
2136
0ff2b86e
L
21372014-02-19 Igor Zamyatin <igor.zamyatin@intel.com>
2138 H.J. Lu <hongjiu.lu@intel.com>
2139
2140 * elf64-x86-64.c (elf_x86_64_bnd_plt0_entry): New.
2141 (elf_x86_64_legacy_plt_entry): Likewise.
2142 (elf_x86_64_bnd_plt_entry): Likewise.
2143 (elf_x86_64_legacy_plt2_entry): Likewise.
2144 (elf_x86_64_bnd_plt2_entry): Likewise.
2145 (elf_x86_64_bnd_arch_bed): Likewise.
2146 (elf_x86_64_link_hash_entry): Add has_bnd_reloc and plt_bnd.
2147 (elf_x86_64_link_hash_table): Add plt_bnd.
2148 (elf_x86_64_link_hash_newfunc): Initialize has_bnd_reloc and
2149 plt_bnd.
2150 (elf_x86_64_copy_indirect_symbol): Also copy has_bnd_reloc.
2151 (elf_x86_64_check_relocs): Create the second PLT for Intel MPX
2152 in 64-bit mode.
2153 (elf_x86_64_allocate_dynrelocs): Handle the second PLT for IFUNC
2154 symbols. Resolve call to the second PLT if it is created.
2155 (elf_x86_64_size_dynamic_sections): Keep the second PLT section.
2156 (elf_x86_64_relocate_section): Resolve PLT references to the
2157 second PLT if it is created.
2158 (elf_x86_64_finish_dynamic_symbol): Use BND PLT0 and fill the
2159 second PLT entry for BND relocation.
2160 (elf_x86_64_finish_dynamic_sections): Use MPX backend data if
2161 the second PLT is created.
2162 (elf_x86_64_get_synthetic_symtab): New.
2163 (bfd_elf64_get_synthetic_symtab): Likewise. Undefine for NaCl.
2164
7d4c687d
AM
21652014-02-19 Alan Modra <amodra@gmail.com>
2166
2167 * elf64-ppc.h (struct ppc64_elf_params): Add save_restore_funcs.
2168 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Use it to control
2169 provision of out-of-line register save/restore routines.
2170
5db3e65d
JC
21712014-02-18 Jack Carter <jack.carter@imgtec.com>
2172
b4894562
AM
2173 * elfxx-mips.c(_bfd_mips_elf_modify_segment_map): Deleted hard coding of
2174 PT_DYNAMIC segment flags.
5db3e65d 2175
024a2310
JK
21762014-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
2177
2178 PR binutils/16595
2179 * simple.c (struct saved_offsets): New.
2180 (simple_save_output_info): Use it for ptr.
2181 (simple_restore_output_info): Use it for ptr. Check section_count.
2182 (bfd_simple_get_relocated_section_contents): Use it for saved_offsets.
2183
e7d1c40c
AM
21842014-02-17 Alan Modra <amodra@gmail.com>
2185
2186 * elf64-ppc.h (struct ppc64_elf_params): Define.
2187 (ppc64_elf_init_stub_bfd, ppc64_elf_edit_opd, ppc64_elf_tls_setup,
2188 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
2189 ppc64_elf_build_stubs): Update prototype.
2190 * elf64-ppp.c (struct ppc_link_hash_table): Add params, delete other
2191 fields now in params. Adjust code throughout file.
2192 (ppc64_elf_init_stub_bfd): Delete "abfd" parameter, add "params".
2193 Save params pointer in htab.
2194 (ppc64_elf_edit_opd, ppc64_elf_tls_setup,
2195 ppc64_elf_setup_section_lists, ppc64_elf_size_stubs,
2196 ppc64_elf_build_stubs): Remove parameters now in "params".
2197
668e22e5
AM
21982014-02-17 Alan Modra <amodra@gmail.com>
2199
2200 * elf32-ppc.c (ppc_elf_relocate_section): Move relocs on insns
2201 patched for ppc476 workaround. Reapply branch taken/not taken
2202 relocs.
2203
9f7552cf
AM
22042014-02-12 Alan Modra <amodra@gmail.com>
2205
2206 * elf32-ppc.c (ppc_elf_relax_section): Don't build long-branch
2207 stubs for calls to __tls_get_addr that we know will later be
2208 optimised away.
2209
795bc6b3
AM
22102014-02-12 Alan Modra <amodra@gmail.com>
2211
2212 * elf32-ppc.c (ppc_elf_relax_section): Enable ppc476 workaround
2213 for ld -r, when code sections are sufficiently aligned.
2214 * elf32-ppc.h (struct ppc_elf_params): Delete pagesize. Add
2215 pagesize_p2.
2216
b407645f
AM
22172014-02-12 Alan Modra <amodra@gmail.com>
2218
2219 PR gold/15530
2220 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
2221 --export-dynamic and --dynamic-list marking of symbols.
2222 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Reorder
2223 cheap tests first.
2224
d6f6f455
L
22252014-02-10 H.J. Lu <hongjiu.lu@intel.com>
2226
2227 PR gold/16530
2228 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark symbol in
2229 executables if it matches dynamic_list.
2230
c1c69e83
AM
22312014-02-10 Alan Modra <amodra@gmail.com>
2232
2233 * po/SRC-POTFILES.in: Regenerate.
2234 * po/bfd.pot: Regenerate.
2235
53291d1f
AM
22362014-02-09 Alan Modra <amodra@gmail.com>
2237
2238 * elf-bfd.h (struct elf_backend_data): Add caches_rawsize.
2239 * elfxx-target.h (elf_backend_caches_rawsize): Define.
2240 (elfNN_bed): Init new field.
2241 * elflink.c (elf_link_input_bfd): Handle caches_rawsize.
2242 * elf32-ppc.c (shared_stub_entry): Zero addi offset.
2243 (ppc_elf_relax_section): Don't reallocate section here, write
2244 stubs, or write out relocs for ld -r here..
2245 (ppc_elf_relocate_section): ..instead write stubs here, and use
2246 existing code to write out relocs for ld -r. Fix offset
2247 adjustment on reloc for little-endian.
2248 (elf_backend_caches_rawsize): Define.
2249
d1eb5696
RO
22502014-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2251
85773039 2252 PR build/16550
d1eb5696
RO
2253 * cache.c (bfd_cache_max_open): Cast RLIM_INFINITY to rlim_t.
2254
2915c55b
JK
22552014-02-04 Jan Kratochvil <jan.kratochvil@redhat.com>
2256
2257 * coff-rs6000.c (xcoff_write_archive_contents_big): Free OFFSETS in
2258 return paths. Three times.
2259 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Free HTAB in all
2260 return paths.
2261 (ppc64_elf_tls_optimize): Free TOC_REF in return path.
2262 (ppc64_elf_edit_toc): Free USED in return path.
2263
1c2de463
SL
22642014-02-03 Sandra Loosemore <sandra@codesourcery.com>
2265
2266 * reloc.c (BFD_RELOC_NIOS2_GOT_LO, BFD_RELOC_NIOS2_GOT_HA): New.
2267 (BFD_RELOC_NIOS2_CALL_LO, BFD_RELOC_NIOS2_CALL_HA): New.
2268 * libbfd.h: Regenerated.
2269 * bfd-in2.h: Regenerated.
2270 * elf32-nios2.c (elf_nios2_howto_table_rel): Add new relocations.
2271 (nios2_reloc_map): Likewise.
2272 (GOT_USED, CALL_USED): Renamed from GOT16_USED and CALL16_USED.
2273 Fixed all references.
2274 (nios2_elf32_relocate_section): Add new relocations.
2275 (nios2_elf32_check_relocs): Likewise.
2276 (nios2_elf32_gc_sweep_hook): Likewise.
2277
5446cbdf
AM
22782014-02-03 Alan Modra <amodra@gmail.com>
2279
2280 * elf32-ppc.c (struct ppc_elf_link_hash_table): Add params.
2281 Delete emit_stub_syms, no_tls_get_addr_opt. Update all uses.
2282 (ppc_elf_link_params): New function.
2283 (ppc_elf_create_glink): Align .glink to 64 bytes for ppc476
2284 workaround.
2285 (ppc_elf_select_plt_layout): Remove plt_style and emit_stub_syms
2286 parameters. Use htab->params instead.
2287 (ppc_elf_tls_setup): Remove no_tls_get_addr_opt parameter.
2288 (ppc_elf_size_dynamic_sections): Align __glink_PLTresolve to
2289 64 bytes for ppc476 workaround.
2290 (struct ppc_elf_relax_info): New.
2291 (ppc_elf_relax_section): Exclude linker created sections and
2292 those too small to hold one instruction. Don't add another
cd3416da 2293 branch around trampolines on later relax passes. Don't
5446cbdf
AM
2294 generate trampolines for undefined symbols when !relocatable,
2295 nor for plugin symbols. Allocate space for ppc476 workaround
2296 patch area. Free fixups on error return path.
2297 (ppc_elf_relocate_section): Handle ppc476 workaround patching.
2298 * elf32-ppc.h (struct ppc_elf_params): New.
2299 (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Update prototype.
2300 (ppc_elf_link_params): Declare.
2301 * section.c (SEC_INFO_TYPE_TARGET): Define.
2302 * bfd-in2.h: Regenerate.
2303
82e91538
SL
23042014-02-02 Sandra Loosemore <sandra@codesourcery.com>
2305
2306 * elf32-nios2.c (struct elf32_nios2_link_hash_table): Add
2307 h_gp_got field.
2308 (nios2_elf32_relocate_section): Use got_base to adjust
2309 GOT-pointer-relative relocations relative to _gp_got.
2310 (create_got_section): Create _gp_got symbol.
2311 (nios2_elf32_finish_dynamic_symbol): Make _gp_got absolute.
2312 (nios2_elf32_size_dynamic_sections): Set _gp_got offset.
2313
78058a5e
SL
23142014-01-30 Sandra Loosemore <sandra@codesourcery.com>
2315
2316 * bfd-in2.h: Update from reloc.c.
2317 * elf32-nios2.c: Include elf32-nios2.h.
2318 (elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
2319 (nios2_reloc_map): Likewise.
2320 (enum elf32_nios2_stub_type): Declare.
2321 (struct elf32_nios2_stub_hash_entry): Declare.
2322 (nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
2323 (struct elf32_nios2_link_hash_entry): Add hsh_cache field.
2324 (struct elf32_nios2_link_hash_table): Add new fields bstab,
2325 stub_bfd, add_stub_section, layout_sections_again, stub_group,
2326 bfd_count, top_index, input_list, all_local_syms.
2327 (nios2_call26_stub_entry): New.
2328 (nios2_elf32_install_imm16): Move up in file.
2329 (nios2_elf32_install_data): Move up in file.
2330 (hiadj): Move up in file.
2331 (stub_hash_newfunc): New.
2332 (link_hash_newfunc): Initialize hsh_cache field.
2333 (STUB_SUFFIX): New.
2334 (nios2_stub_name): New.
2335 (nios2_get_stub_entry): New.
2336 (nios2_add_stub): New.
2337 (nios2_elf32_setup_section_lists): New.
2338 (nios2_elf32_next_input_section): New.
2339 (CALL26_SEGMENT): New.
2340 (MAX_STUB_SECTION_SIZE): New.
2341 (group_sections): New.
2342 (nios2_type_of_stub): New.
2343 (nios2_build_one_stub): New.
2344 (nios2_size_one_stub): New.
2345 (get_local_syms): New.
2346 (nios2_elf32_size_stubs): New.
2347 (nios2_elf32_build_stubs): New.
2348 (nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
2349 (nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT. Add
2350 trampolines for R_NIOS2_CALL26 stubs.
2351 (nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
2352 (nios2_elf32_gc_sweep_hook): Likewise.
2353 (nios2_elf32_link_hash_table_create): Initialize the stub hash table.
2354 (nios2_elf32_link_hash_table_free): New.
2355 (bfd_elf32_bfd_link_hash_table_free): Define.
2356 * elf32-nios2.h: New file.
2357 * libbfd.h: Update from reloc.c.
2358 * reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
2359
df3ce959
NC
23602014-01-29 Nick Clifton <nickc@redhat.com>
2361
2362 PR binutils/16318
2363 * elf32-metag.c (elf_metag_post_process_headers): Call
2364 _bfd_elf_post_process_headers.
2365 * elf32-sh64.c (sh64_elf_copy_private_data): Call
2366 _bfd_elf_copy_private_data.
2367 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
2368
27b829ee
NC
23692014-01-29 Nick Clifton <nickc@redhat.com>
2370
2371 * bfd-in.h (bfd_set_section_vma): Delete.
2372 (bfd_set_section_alignment): Delete.
2373 (bfd_set_section_userdata): Delete.
2374 (bfd_set_cacheable): Delete.
2375 * bfd.c (bfd_set_cacheable): New static inline function.
2376 * section.c (bfd_set_section_userdata): Likewise.
2377 (bfd_set_section_vma): Likewise.
2378 (bfd_set_section_alignment): Likewise.
2379 * bfd-in2.h: Regenerate.
2380
0a9c7b2b
NC
23812014-01-28 Nick Clifton <nickc@redhat.com>
2382
2383 * dwarf2.c (find_abstract_instance_name): For DW_FORM_ref_addr
2384 attributes select the CU containing the abbreviation, which may not
2385 be the current CU.
2386
3ba720c7
AM
23872014-01-24 Alan Modra <amodra@gmail.com>
2388
2389 * elf64-ppc.c (ppc_build_one_stub): Correct reloc count passed
2390 to get_relocs for ELFv2.
2391
d923cae0
L
23922014-01-23 H.J. Lu <hongjiu.lu@intel.com>
2393
2394 PR ld/16498
3ba720c7 2395 * elf.c (_bfd_elf_map_sections_to_segments): Issue a linker error
d923cae0
L
2396 if TLS sections are not adjacent.
2397
16e4ecc0
AM
23982014-01-22 Alan Modra <amodra@gmail.com>
2399
2400 * elflink.c (elf_link_add_object_symbols): Call minfo for --as-needed.
2401
eb8d7fda
AM
24022014-01-22 Alan Modra <amodra@gmail.com>
2403
2404 * elf64-ppc.c (STK_LINKER): Comment typo fix.
2405
4584ec12
L
24062014-01-21 H.J. Lu <hongjiu.lu@intel.com>
2407
2408 PR ld/16467
2409 * elflink.c (_bfd_elf_merge_symbol): When types of the existing
2410 regular default symbol definition and the versioned dynamic
2411 symbol definition mismatch, skip the default symbol definition
2412 if one of them is IFUNC.
2413
22ef172a
L
24142014-01-21 H.J. Lu <hongjiu.lu@intel.com>
2415
2416 PR ld/2404
2417 * elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
2418 info->export_dynamic nor h->ref_dynamic for type mismatch when
2419 adding the default version.
2420
b75d42bc
AM
24212014-01-16 Alan Modra <amodra@gmail.com>
2422
2423 * elfxx-mips.c (mips_elf_record_got_page_entry): Pass in a
2424 mips_elf_traverse_got_arg* rather than mips_got_info*.
2425 Adjust caller. Alloc on output_bfd rather than symbol section
2426 owner.
2427
c353e543
L
24282014-01-15 H.J. Lu <hongjiu.lu@intel.com>
2429
2430 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
2431 change.
2432 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2433
818d220a
L
24342014-01-14 H.J. Lu <hongjiu.lu@intel.com>
2435
2436 PR ld/16428
2437 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs
2438 against __ehdr_start.
2439 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2440
c3ce498c
L
24412014-01-14 H.J. Lu <hongjiu.lu@intel.com>
2442
2443 * elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last
2444 change.
2445 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2446
d1ec1e40
L
24472014-01-14 H.J. Lu <hongjiu.lu@intel.com>
2448
2449 PR ld/16428
2450 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc
2451 count if there are any non pc-relative relocs.
2452 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2453
f44a1f8e
CL
24542014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org>
2455 Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>
2456
2457 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct
2458 offset while calculating relocation address.
2459 (elfNN_aarch64_create_small_pltn_entry): Likewise.
2460 (elfNN_aarch64_init_small_plt0_entry): Likewise.
2461
fd0fd00c
MJ
24622014-01-13 Ma Jiang <ma.jiang@zte.com.cn>
2463
2464 PR ld/16202
2465 * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for
2466 R_ARM_ABS8 and R_ARM_ABS16.
2467
aa726b9e
AM
24682014-01-13 Alan Modra <amodra@gmail.com>
2469
2470 * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc,
2471 error when shared and force a plt call otherwise.
2472 (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless
2473 plt_type == PLT_NEW.
2474 (ppc_elf_relocate_section): Add missing test to resolve ifuncs to
2475 the appropriate call stub.
2476
eec2f3ed
AM
24772014-01-10 Alan Modra <amodra@gmail.com>
2478
2479 PR ld/14207
2480 PR ld/16322
2481 PR binutils/16323
2482 * elf.c (assign_file_positions_for_load_sections): Revert last change.
2483 (assign_file_positions_for_non_load_sections): When setting up
2484 PT_GNU_RELRO header, don't require a corresponding PT_LOAD
2485 header that completely covers the relro region.
2486
09bf66a8
TG
24872014-01-09 Tristan Gingold <gingold@adacore.com>
2488
2489 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump
2490 table macros and add macros to initializa the structure.
2491
43a8475c
L
24922014-01-08 H.J. Lu <hongjiu.lu@intel.com>
2493
2494 PR ld/14207
2495 PR ld/16322
2496 PR binutils/16323
2497 * elf.c (_bfd_elf_map_sections_to_segments): Don't check section
2498 size for PT_GNU_RELRO segment.
2499 (assign_file_positions_for_load_sections): If PT_LOAD segment
2500 doesn't fit PT_GNU_RELRO segment, adjust its p_filesz and p_memsz.
2501
1651e569
TT
25022014-01-07 Tom Tromey <tromey@redhat.com>
2503
2504 * elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
2505 wrappers.
2506
dc9155b2
NC
25072014-01-03 Nick Clifton <nickc@redhat.com>
2508
2509 PR binutils/16199
2510 * elf.c (vma_page_aligned_bias): Handle a maxpagesize value of
2511 zero.
2512
dd8dfa39 25132014-01-02 Yuanhui Zhang <asmwarrior@gmail.com>
044387af
A
2514
2515 PR binutils/14289
2516 * pef.c (bfd_pef_xlib_read_header): Increase buffer size to 80.
2517
1be5090b
NC
25182014-01-02 Nick Clifton <nickc@redhat.com>
2519
2520 PR binutils/11983
2521 * archive.c (_bfd_get_elt_at_filepos): Store a copy of the
2522 filename in the bfd's filename field.
2523 * elfcode.h (bfd_from_remote_memory): Likewise.
2524 * ieee.c (ieee_object_p): Likewise.
2525 * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
2526 * oasys.c (oasys_openr_next_archived_file): Likewise.
2527 * vms-lib.c (_bfd_vms_lib_get_module): Likewise.
2528 * opncls.c (bfd_fopen): Likewise.
2529 (bfd_openstreamr): Likewise.
2530 (bfd_openr_iovec): Likewise.
2531 (bfd_openw): Likewise.
2532 (bfd_create): Likewise.
2533 (_bfd_delete_bfd): Free filename.
2534
5fb776a6 2535For older changes see ChangeLog-2013
56882138 2536\f
5fb776a6 2537Copyright (C) 2014 Free Software Foundation, Inc.
752937aa
NC
2538
2539Copying and distribution of this file, with or without modification,
2540are permitted in any medium without royalty provided the copyright
2541notice and this notice are preserved.
2542
56882138
AM
2543Local Variables:
2544mode: change-log
2545left-margin: 8
2546fill-column: 74
2547version-control: never
2548End:
This page took 1.030204 seconds and 4 git commands to generate.