]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
New common function "startswith"
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
41cd1ad1
NC
12015-03-05 Nick Clifton <nickc@redhat.com>
2
3 PR binutils/17765
4 * elflink.c (put_value): Avoid using an undefined shift
5 operation.
6
ca3fe95e
L
72015-03-05 H.J. Lu <hongjiu.lu@intel.com>
8
9 PR ld/pr15228
10 PR ld/pr17709
11 * elf-bfd.h (elf_backend_data): Add extern_protected_data.
12 * elf32-i386.c (elf_backend_extern_protected_data): New.
13 Defined to 1.
14 * elf64-x86-64.c (elf_backend_extern_protected_data): Likewise.
15 * elflink.c (_bfd_elf_adjust_dynamic_copy): Don't error on
16 copy relocs against protected symbols if extern_protected_data
17 is true.
18 (_bfd_elf_symbol_refs_local_p): Don't return true on protected
19 non-function symbols if extern_protected_data is true.
20 * elfxx-target.h (elf_backend_extern_protected_data): New.
21 Default to 0.
22 (elfNN_bed): Initialize extern_protected_data with
23 elf_backend_extern_protected_data.
24
425bd9e1
NC
252015-03-05 Nick Clifton <nickc@redhat.com>
26
27 PR binutils/18025
28 * coffgen.c (coff_find_nearest_line_with_names): If the dwarf2
29 lookup fails, check for an address bias in the dwarf info, and if
30 one exists, retry the lookup with the biased value.
31 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): New function.
32 Determines if a bias exists bewteen the addresses of functions
33 based on DWARF information vs symbol table information.
34 * libbfd-in.h (_bfd_dwarf2_find_symbol_bias): Prototype.
35 * libbfd.h: Regenerate.
36
8ef229f3
MS
372015-03-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
38
39 * elfxx-aarch64.c (decode_add_imm, decode_movw_imm)
40 (decode_tst_branch_ofs_14, decode_ld_lit_ofs_19)
41 (decode_cond_branch_ofs_19, decode_branch_ofs_26): Remove.
42
8e2fe09f
MS
432015-03-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
44
45 * elfnn-aarch64.c (aarch64_build_one_stub): Call abort.
46 (aarch64_size_one_stub): Likewise.
47 (aarch64_map_one_stub): Likewise.
48
df88b702
AA
492015-03-04 Andreas Arnez <arnez@linux.vnet.ibm.com>
50
51 * cpu-s390.c (N): New macro.
52 (bfd_s390_31_arch): New. Define only if default target word size
53 is 64 bits. Otherwise define...
54 (bfd_390_64_arch): ...this. Make static.
55 (bfd_s390_arch): Define according to the default target word size.
56 Let the 'next' field point to the alternate arch.
57
e09ab7ac
RS
582015-03-04 Richard Sandiford <richard.sandiford@arm.com>
59
60 PR gas/17843
61 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Expect
62 R_AARCH64_TLSLE_MOVW_TPREL_G0_NC and R_AARCH64_TLSLE_MOVW_TPREL_G1_NC
63 to be used with MOVK rather than MOVZ.
64
71eef2bd
DD
652015-03-03 DJ Delorie <dj@redhat.com>
66
67 * elf32-rl78.c (rl78_elf_relax_section): Only relax ADDR16's if
68 there's a symbol.
69
f01f1741
AM
702015-02-28 Alan Modra <amodra@gmail.com>
71
72 * elf32-ppc.c (ppc_elf_tls_setup): Set no_tls_get_addr_opt if
73 not PLT_NEW.
74
c1d11331
L
752015-02-27 H.J. Lu <hongjiu.lu@intel.com>
76
77 * elf32-i386.c (need_convert_mov_to_lea): New.
78 (elf_i386_check_relocs): Set need_convert_mov_to_lea if needed.
79 (elf_i386_convert_mov_to_lea): Return TRUE if
80 need_convert_mov_to_lea is unset.
81 * elf64-x86-64.c (need_convert_mov_to_lea): New.
82 (elf_x86_64_check_relocs): Set need_convert_mov_to_lea if needed.
83 (elf_x86_64_convert_mov_to_lea): Return TRUE if
84 need_convert_mov_to_lea is unset.
85
cdb602b1
NC
862015-02-27 Nick Clifton <nickc@redhat.com>
87
88 PR binutils/17910
89 * coffgen.c (_bfd_coff_internal_syment_name): Only check for
90 string length overflow when the string table length is actually
91 set.
92
96c20bc1
MS
932015-02-27 Marcus Shawcroft <marcus.shawcroft@arm.com>
94
95 * bfd/bfd-in2.h: Regenerate.
96 * bfd/libbfd.h: Regenerate.
97
1ada945d
MS
982015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
99
100 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Fix
101 TLSDESC_LD_PREL19 field width and masks.
102 (aarch64_tls_transition_without_check)
103 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
104 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
105 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
106 BFD_RELOC_AARCH64_TLSDESC_LD_PREL19.
107 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
108 (_bfd_aarch64_elf_resolve_relocation): Likewise.
109
389b8029
MS
1102015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
111
73920eed
MS
112 * elfnn-aarch64.c (IS_AARCH64_TLSDESC_RELOC): Reorder R_TYPE
113 tests.
389b8029
MS
114 (aarch64_tls_transition_without_check)
115 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
116 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
117 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
118 BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21.
119 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
120 (_bfd_aarch64_elf_resolve_relocation): Likewise.
121 * reloc.c (BFD_RELOC_AARCH64_TLSGD_ADR_PREL21): Define.
122
3c12b054
MS
1232015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
124
125 * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC)
126 (elfNN_aarch64_howto_table, aarch64_tls_transition_without_check)
127 (aarch64_reloc_got_type, elfNN_aarch64_final_link_relocate)
128 (elfNN_aarch64_tls_relax, elfNN_aarch64_relocate_section)
129 (elfNN_aarch64_gc_sweep_hook, elfNN_aarch64_check_relocs): Handle
130 BFD_RELOC_AARCH64_TLSGD_ADR_PREL21.
131 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
132 (_bfd_aarch64_elf_resolve_relocation): Likewise.
133 * reloc.c (BFD_RELOC_AARCH64_TLSGD_ADR_PREL21): Define.
134
043bf05a
MS
1352015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
136
137 * elfnn-aarch64.c: (TLSIE_LD_GOTTREL_PREL19): Fix HOWTO bit field width.
138 (aarch64_tls_transition_without_check, aarch64_reloc_got_type)
139 (elfNN_aarch64_final_link_relocate, elfNN_aarch64_tls_relax)
140 (elfNN_aarch64_relocate_section, elfNN_aarch64_gc_sweep_hook)
141 (elfNN_aarch64_check_relocs): Handle
142 BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19.
143
144 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend)
145 (_bfd_aarch64_elf_resolve_relocation): Likewise.
146
7366006f
MS
1472015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
148
149 * elfnn-aarch64.c: (TLSDESC_CALL): Fix HOWTO bit field width.
150
07875fbc
MS
1512015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
152
153 * elfnn-aarch64.c (TLSLE_MOVW_TPREL_G2)
154 (TLSLE_MOVW_TPREL_G1, TLSLE_MOVW_TPREL_G1_NC)
155 (TLSLE_MOVW_TPREL_G0, TLSLE_MOVW_TPREL_G0_NC): Fix bit field
156 width.
157
49d8f92c
MS
1582015-02-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
159
160 * elfnn-aarch64.c: (TLSIE_MOVW_GOTTPREL_G0_NC): Fix HOWTO bit
161 field width.
162
c86934ce
NC
1632015-02-26 Nick Clifton <nickc@redhat.com>
164
165 PR binutils/17512
166 * coffcode.h (coff_compute_section_file_positions): Report
167 negative page sizes.
168 * elf.c (elf_fake_sections): Handle excessive alignmment powers.
169 (assign_file_positions_for_non_load_sections): Replace assertion
170 with an error message.
171 (rewrite_elf_program_header): Handle excessive segment
172 alignments.
173 * mach-o.c (bfd_mach_o_read_section_32): Likewise.
174 (bfd_mach_o_read_section_64): Likewise.
175 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Use %B to
176 print a bfd name, not %A.
177
bd4d2eaa
AM
1782015-02-26 Alan Modra <amodra@gmail.com>
179
180 * elf64-ppc.c (plt_stub_size, build_plt_stub): Don't build
181 thread-safe stubs for iplt.
182 (build_tls_get_addr_stub): Restore r2 immediately after call.
183
99654aaf
TG
1842015-02-26 Terry Guo <terry.guo@arm.com>
185
186 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Update how we
187 merge Tag_ABI_HardFP_use.
188
a127494f
AM
1892015-02-26 Alan Modra <amodra@gmail.com>
190
191 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Heed -z nocopyreloc.
192 Use text relocs rather than giving an error on trying to use
193 .dynbss for protected shared lib vars.
194 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
195
bac13f5a
AB
1962015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
197
198 * elf32-avr.c (struct elf_avr_section_data): New structure.
199 (struct avr_relax_info): New structure.
200 (elf_avr_new_section_hook): New function.
201 (struct elf_avr_section_data): Add relax_info.
202 (get_avr_relax_info): New function.
203 (init_avr_relax_info): New function.
204 (elf32_avr_relax_delete_bytes): Find next property record before
205 deleting bytes. When deleting don't move bytes beyond the next
206 property record.
207 (avr_elf32_assign_records_to_section): New function.
208 (avr_property_record_compare): New function.
209 (avr_load_all_property_sections): New function.
210 (elf32_avr_relax_section): Load property data. After relaxing the
211 section, move any .align directives that have enough deleted bytes
212 before them.
213 (bfd_elf32_new_section_hook): Define.
214
137c83d6
AB
2152015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
216
217 * elf32-avr.h (struct avr_property_header): New strucure.
218 (avr_elf32_load_property_records): Declare.
219 (avr_elf32_property_record_name): Declare.
220 * elf32-avr.c: Add bfd_stdint.h include.
221 (retrieve_local_syms): New function.
222 (get_elf_r_symndx_section): New function.
223 (get_elf_r_symndx_offset): New function.
224 (internal_reloc_compare): New function.
225 (struct avr_find_section_data): New structure.
226 (avr_is_section_for_address): New function.
227 (avr_find_section_for_address): New function.
228 (avr_elf32_load_records_from_section): New function.
229 (avr_elf32_load_property_records): New function.
230 (avr_elf32_property_record_name): New function.
231
fdd410ac
AB
2322015-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
233
234 * elf32-avr.h (AVR_PROPERTY_RECORD_SECTION_NAME): Define.
235 (AVR_PROPERTY_RECORDS_VERSION): Define.
236 (AVR_PROPERTY_SECTION_HEADER_SIZE): Define.
237 (struct avr_property_record): New structure.
238
685080f2
NC
2392015-02-24 Nick Clifton <nickc@redhat.com>
240
241 * elf32-v850.c (v850_set_note): New function. Creates a Renesas
242 style note entry.
243 (v850_elf_make_note_section): New function. Creates a note
244 section.
245 (v850_elf_create_sections): New function. Create a note section
246 if one is not already present.
247 (v850_elf_set_note): New function. Adds a note to a bfd.
248 (v850_elf_copy_private_bfd_data): New function. Copies V850
249 notes.
250 (v850_elf_merge_notes): New function. Merges V850 notes.
251 (print_v850_note): New function. Displays a V850 note.
252 (v850_elf_print_notes): New function. Displays all notes attached
253 to a bfd.
254 (v850_elf_merge_private_bfd_data): Call v850_elf_merge_notes.
255 (v850_elf_print_private_bfd_data): Call v850_elf_print_notes.
256 (v850_elf_fake_sections): Set the type of the V850 note section.
257 * bfd-in.h (v850_elf_create_sections): Add prototype.
258 (v850_elf_set_note): Add prototype.
259 * bfd-in2.h: Regenerate.
260
31593e1b
NC
2612015-02-24 Nick Clifton <nickc@redhat.com>
262
263 * configure.ac (AC_CHECK_HEADERS): Add wctype.h.
264 * configure: Regenerate.
265 * config.in: Regenerate.
266 * peXXigen.c: Include wctype.h if HAVE_WCTYPE_H is defined.
267 (u16_mbtowc): Use wint_t types if HAVE_WCTYPE_H is defined.
268 (rsrc_cmp): Use towlower instead of wcsncasecmp if HAVE_WCTYPE_H
269 is defined.
270
3ad797fd
NC
2712015-02-24 Nick Clifton <nickc@redhat.com>
272
273 * pdp11.c (set_section_contents): Pad the .text and .data sections
274 to their aligned sizes.
275
5518c738
YS
2762015-02-23 Yoshinori Sato <ysato@users.sourceforge.jp>
277
278 * config.bfd: Add h8300-*-linux.
279 * configure.ac: Add h8300_elf32_linux_vec.
280 * configure: Regenerate.
281 * elf32-h8300.c: Likewise.
282 * targets.c(_bfd_target_vector): Likewise.
283
cb967f0d
NC
2842015-02-23 Nick Clifton <nickc@redhat.com>
285
286 PR 17914
287 * cpu-w65.c: Correct typos in license notice.
288
0f8f0c57
NC
289 PR 17940
290 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust debug
291 symbols at end of sections. Adjust function sizes.
292
4ef9f41a
AA
2932015-02-20 Andreas Arnez <arnez@linux.vnet.ibm.com>
294
295 * elf-bfd.h (elfcore_write_s390_vxrs_low): Add prototype.
296 (elfcore_write_s390_vxrs_high): Likewise.
297 * elf.c (elfcore_grok_s390_vxrs_low): New function.
298 (elfcore_grok_s390_vxrs_high): New function.
299 (elfcore_grok_note): Call them.
300 (elfcore_write_s390_vxrs_low): New function.
301 (elfcore_write_s390_vxrs_high): New function.
302 (elfcore_write_register_note): Call them.
303
837914ee
BD
3042015-02-19 Branko Drevensek <branko.drevensek@gmail.com>
305
306 PR 17995
307 * verilog.c (verilog_write_record): Correct buffer size.
308
cf18fda4
AM
3092015-02-19 Alan Modra <amodra@gmail.com>
310
311 * elflink.c (_bfd_elf_define_linkage_sym): Set 'bed' earlier.
312
d983c8c5
AM
3132015-02-19 Alan Modra <amodra@gmail.com>
314
315 PR ld/4317
316 * elflink.c (elf_link_input_bfd): Drop undefined local syms.
317 (elf_link_output_extsym): Drop local and global undefined syms.
318 Tidy. Expand comment.
319
2ec55de3
AM
3202015-02-17 Alan Modra <amodra@gmail.com>
321
322 PR ld/17975
323 * elflink.c (struct elf_outext_info): Remove need_second_pass
324 and second_pass.
325 (elf_link_output_extsym): Delete code handling second forced
326 local pass. Move code emitting NULL STT_FILE symbol later, so
327 that it can be omitted if forced local is stripped. Don't
328 emit the NULL STT_FILE if no file symbols have been output.
329 (bfd_elf_final_link): Remove second forced local pass.
330 * elf32-ppc.c (add_stub_sym): Set linker_def on linker syms.
331 (ppc_elf_size_dynamic_sections): Likewise.
332 * elf64-ppc.c (ppc_build_one_stub): Likewise.
333 (build_global_entry_stubs): Likewise.
334 (ppc64_elf_build_stubs): Likewise.
335
6dfb72b9
L
3362015-02-16 H.J. Lu <hongjiu.lu@intel.com>
337
338 PR ld/17975
339 * elflink.c (elf_link_output_extsym): Only check filesym_count
340 when outputting a NULL FILE symbol. Set second_pass_sym to
341 h->forced_local && !h->root.linker_def.
342
576fa883
L
3432015-02-15 H.J. Lu <hongjiu.lu@intel.com>
344
345 * elf32-i386.c (elf_i386_always_size_sections): Set root.linker_def
346 on _TLS_MODULE_BASE_.
347 * elf64-x86-64.c (elf_x86_64_always_size_sections): Likewise.
348
62f8d217
AM
3492015-02-15 Alan Modra <amodra@gmail.com>
350
351 * dwarf2.c (read_rangelist): Correct buffer overflow check
352 Whitespace throughout file.
353
ce875075
AM
3542015-02-14 Alan Modra <amodra@gmail.com>
355
356 PR ld/17973
357 * bfd.c (struct bfd): Add lto_output.
358 * linker.c (_bfd_handle_already_linked): Explicitly test for
359 objects added by the lto plugin.
360 * opncls.c (_bfd_new_bfd_contained_in): Copy lto_output and
361 no_export flags from archive.
362 * archive.c (open_nested_file): New function, setting lto_output
363 and no_export, extracted from..
364 (find_nested_archive): ..here. Flip params. Rename from
365 _bfd_find_nested_archive.
366 (_bfd_get_elt_at_filepos): Correct var typo. Use open_nested_file.
367 (_bfd_look_for_bfd_in_cache): Copy no_export.
368 * elflink.c (elf_link_add_object_symbols): Remove now unnecessary
369 my_archive->no_export test.
370 (elf_link_input_bfd): Drop existing lto_output STT_FILE syms.
371 Don't use the file name when adding lto_output STT_FILE sym.
372 * bfd-in2.h: Regenerate.
373
451dfd38
AM
3742015-02-13 Alan Modra <amodra@gmail.com>
375
376 PR binutils/17512
377 * elf64-ppc.c (opd_entry_value): Tighten offset check. Remove
378 now redundant assert.
379
dbb3fbbb
NC
3802015-02-12 Nick Clifton <nickc@redhat.com>
381
382 PR binutils/17512
383 * dwarf.c (read_1_byte, read_1_signed_byte, read_2_bytes)
384 (read_4_bytes, read_8_bytes, read_n_bytes, read_string)
385 (read_indirect_string, read_alt_indirect_string)
386 (read_alt_indirect_ref, read_address, read_abbrevs)
387 (read_attribute_value, read_attribute, decode_line_info)
388 (find_abstract_instance_name, read_rangelist)
389 (scan_unit_for_symbols, parse_comp_unit)
390 (_bfd_dwarf2_find_nearest_line): Harden DWARF reading code. Pass
391 end pointers to reading functions and check for offsets taking
392 pointers out of range. Replace calls to read_*_leb128 with calls
393 to safe_read_leb128.
394
395 (* elf64-ppc.c (opd_entry_value): Add a check for an overlarge
396 offset.
397 * syms.c (_bfd_stab_section_find_nearest_line): Add checks for
398 computed file_name address being before the start of the string
399 table.
400
b9dc5a87
L
4012015-02-11 H.J. Lu <hongjiu.lu@intel.com>
402
403 PR ld/17878
404 * bfd.c (bfd_plugin_format): New.
405 (bfd): Add plugin_format and plugin_dummy_bfd.
406 * plugin.c (try_load_plugin): Take a pointer to bfd_boolean
407 argument to return TRUE if any plugin is found. Set plugin_format.
408 (has_plugin): New.
409 (bfd_plugin_target_p): New.
410 (bfd_plugin_specified_p): Likewise.
411 (bfd_plugin_target_p): Likewise.
412 (register_ld_plugin_object_p): Likewise.
413 (bfd_plugin_set_plugin): Set has_plugin.
414 (load_plugin): Cache try_load_plugin result.
415 (bfd_plugin_object_p): Try ld_plugin_object_p first. Check
416 plugin_format.
417 * plugin.h (bfd_plugin_target_p): New.
418 (bfd_plugin_specified_p): Likewise.
419 (register_ld_plugin_object_p): Likewise.
420 * bfd-in2.h: Regenerated.
421
55172d69
PA
4222015-02-11 Pedro Alves <palves@redhat.com>
423
424 * libbfd-in.h [__cplusplus]: Open extern "C" scope.
425 * libcoff-in.h [__cplusplus]: Open extern "C" scope.
426 * libbfd.h: Regenerate.
427 * libcoff.h: Regenerate.
428
429 * elf-bfd.h [__cplusplus]: Wrap in extern "C".
430 * mach-o.h [__cplusplus]: Wrap in extern "C".
431 * som.h [__cplusplus]: Wrap in extern "C".
432
77ef8654
NC
4332015-02-10 Nick Clifton <nickc@redhat.com>
434
435 PR binutils/17512
436 * coffcode.h (styp_to_sec_flags): Use an unsigned long type to
437 hold the flag bits.
438 * peXXigen.c (pe_print_reloc): Use unsigned types to hold the
439 size and number of relocs.
440 (pe_print_debugdata): Use a 32-bit aligned buffer to store the
441 codeview record.
442 * versados.c (process_otr): Check the esdid value before using it
443 to access the EDATA.
444
35181b3e
EM
4452015-02-09 Ed Maste <emaste@freebsd.org>
446
447 * elf32-i386.c (elf_i386_get_plt_sym_val): Avoid incrementing
448 uninitialized and unused variable.
449 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
450
989f9879
AM
4512015-02-09 Alan Modra <amodra@gmail.com>
452
453 * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault on NULL
454 tls_sec.
455 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
456 * elflink.c (elf_link_output_extsym): Don't assert on NULL tls_sec.
457
ca4be51c
AM
4582015-02-09 Alan Modra <amodra@gmail.com>
459
460 * elflink.c: Whitespace, formatting fixes.
461 (elf_link_input_bfd): Clarify comment.
462 (elf_link_output_extsym): Exclude symbols in linker created
463 sections when testing for plugin symbols.
464
1952c5cd
L
4652015-02-07 H.J. Lu <hongjiu.lu@intel.com>
466
467 PR ld/17935
468 * elf32-i386.c (elf_i386_readonly_dynrelocs): Also issue a
469 warning for relocation in readonly section for -z text.
470 (elf_i386_size_dynamic_sections): Likewise.
471 * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
472 (elf_x86_64_size_dynamic_sections): Likewise.
473
9e2dec47
L
4742015-02-06 H.J. Lu <hongjiu.lu@intel.com>
475
476 PR ld/12365
477 PR ld/14272
478 * elflink.c (_bfd_elf_fix_symbol_flags): Revert the last change.
479 (elf_link_input_bfd): Mark the plugin symbol undefined if it is
480 referenced from a non-IR file.
481
5929c344
NC
4822015-02-06 Nick Clifton <nickc@redhat.com>
483
484 PR binutils/17512
485 * peXXigen.c (rsrc_print_resource_entries): Add range check for
486 addresses that wrap around the address space.
487 (rsrc_parse_entry): Likewise.
488
60f79275
L
4892015-02-03 H.J. Lu <hongjiu.lu@intel.com>
490
491 PR ld/12365
492 PR ld/14272
493 * elflink.c (_bfd_elf_fix_symbol_flags): Mark the plugin symbol
494 undefined if it is referenced from a non-IR file.
495
64d29018
NC
4962015-02-03 Nick Clifton <nickc@redhat.com>
497
498 PR binutils/17512
499 * ecoff.c: Use bfd_alloc2 to allocate space for structure arrays.
500 (_bfd_ecoff_slurp_symbol_table): Check for a negative symbol
501 index or an out of range fdr index.
502 * elf-m10300.c (mn10300_info_to_howto): Fix typo in error message.
503 * elf32-arc.c (arc_info_to_howto_rel): Likewise.
504 * elf32-avr.c (avr_info_to_howto_rela): Likewise.
505 * elf32-cr16.c (elf_cr16_info_to_howto): Likewise.
506 * elf32-cr16c.c (elf_cr16c_info_to_howto_rel): Likewise.
507 * elf32-cris.c (cris_info_to_howto_rela): Likewise.
508 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
509 * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
510 * elf32-d30v.c (d30v_info_to_howto_rel): Likewise.
511 * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
512 * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
513 * elf32-frv.c (frv_info_to_howto_rela): Likewise.
514 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
515 * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
516 * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
517 * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
518 * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
519 * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
520 * elf32-m32r.c (m32r_info_to_howto_rel): Likewise.
521 * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
522 * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
523 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
524 * elf32-mep.c (mep_info_to_howto_rela): Likewise.
525 * elf32-metag.c (metag_info_to_howto_rela): Likewise.
526 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
527 * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
528 * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
529 * elf32-mt.c (mt_info_to_howto_rela): Likewise.
530 * elf32-nds32.c (nds32_info_to_howto_rel): Likewise.
531 * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
532 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
533 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
534 * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
535 * elf32-rx.c (rx_info_to_howto_rela): Likewise.
536 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
537 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
538 * elf32-v850.c (v850_elf_perform_relocation): Likewise.
539 * elf32-vax.c (rtype_to_howto): Likewise.
540 * elf32-visium.c (visium_info_to_howto_rela): Likewise.
541 * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
542 * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
543 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
544 * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
545 * mach-o.c: Use bfd_alloc2 to allocate space for structure arrays.
546 (bfd_mach_o_canonicalize_one_reloc): Fix check on out
547 of range symbol indicies.
548 (bfd_mach_o_canonicalize_relocs): Check for out of range alloc.
549 (bfd_mach_o_canonicalize_dynamic_reloc): Likewise.
550 (bfd_mach_o_build_dysymtab): Likewise.
551 (bfd_mach_o_write_symtab_content): Set the string table size to
552 zero upon error.
553 (bfd_mach_o_read_symtab_symbols): Reset the nsyms value if the
554 read fails.
555 * peXXigen.c (pe_print_edata): Check for numeric overflow in edt
556 fields.
557 * tekhex.c (first_phase): Check for src pointer reaching end of
558 buffer.
559
3a635617
WN
5602015-02-03 Will Newton <will.newton@linaro.org>
561
46b87d49
WN
562 * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol):
563 Set st_value to zero for undefined symbols if the reference
564 is weak or pointer_equality_needed is FALSE.
565
3a635617
WN
566 * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Improve
567 comment discussing why we clear st_value for some symbols.
568
0c4bd9d9
KLC
5692015-02-02 Kuan-Lin Chen <kuanlinchentw@gmail.com>
570
571 * elf32-nds32.c (nds32_get_section_contents): Add one more argument.
572 (nds32_elf_relocate_section): Do not relocate R_NDS32_LONGJUMP7.
573
b86ac8e3
AM
5742015-01-29 Alan Modra <amodra@gmail.com>
575
576 * elf64-ppc.c (ppc64_elf_relocate_section): Correct GOT_TLSLD
577 optimization. Tidy mask for GOT_TLSGD optimization.
578 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. Correct
579 location of nop zapping high insn too.
580
dbd1e97e
AM
5812015-01-28 Alan Modra <amodra@gmail.com>
582
583 * elf64-ppc.h (struct ppc64_elf_params): Add "object_in_toc".
584 * elf64-ppc.c (ppc64_elf_add_symbol_hook): Assume that global symbols
585 in .toc indicate xlc compiled code that might require a rw .toc.
586
3f8107ab
AM
5872015-01-28 James Bowman <james.bowman@ftdichip.com>
588
589 * Makefile.am: Add FT32 files.
590 * archures.c (enum bfd_architecture): Add bfd_arch_ft32.
591 (bfd_mach_ft32): Define.
592 (bfd_ft32_arch): Declare.
593 (bfd_archures_list): Add bfd_ft32_arch.
594 * config.bfd: Handle FT32.
595 * configure.ac: Likewise.
596 * cpu-ft32.c: New file.
597 * elf32-ft32.c: New file.
598 * reloc.c (BFD_RELOC_FT32_10, BFD_RELOC_FT32_20, BFD_RELOC_FT32_17,
599 BFD_RELOC_FT32_18): Define.
600 * targets.c (_bfd_target_vector): Add ft32_elf32_vec.
601 * bfd-in2.h: Regenerate.
602 * libbfd.h: Regenerate.
603 * Makefile.in: Regenerate.
604 * configure: Regenerate.
605 * po/SRC-POTFILES.in: Regenerate.
606
37e3922e
NC
6072015-01-27 Nick Clifton <nickc@redhat.com>
608
609 PR binutils/17512
610 * pdp11.c (aout_get_external_symbols): Return false if there are
611 no symbols.
612
877a8638
NC
613 * dwarf2.c (concat_filename): Check for an empty directory table.
614 (scan_unit_for_symbols): Check for reading off the end of the
615 unit.
616 (parse_comp_unit): Check for a DW_AT_comp_dir attribute with a
617 non-string form.
618 * elf64-ppc.c (opd_entry_value): Fail if there are no relocs
619 available.
620
18393a2e
KLC
6212015-01-26 Kuan-Lin Chen <kuanlinchentw@gmail.com>
622
623 * elf32-nds32.c (nds32_elf_pick_relax): Fix again setting.
624
055173ca
DD
6252015-01-22 DJ Delorie <dj@redhat.com>
626
627 * elf32-m32c.c (m32c_apply_reloc_24): New.
628 (m32c_elf_howto_table): Use it for R_M32C_24.
629 (m32c_elf_relocate_section): Handle R_M32C_24 specially.
630
4e5cb37e
NC
6312015-01-22 Nick Clifton <nickc@redhat.com>
632
633 PR binutils/17512
634 * coffcode.h (handle_COMDAT): When searching for the section
635 symbol, make sure that there is space left in the symbol table.
636 * vms-alpha.c (_bfd_vms_slurp_ehdr): Add range checks.
637
86eafac0
NC
6382015-01-21 Nick Clifton <nickc@redhat.com>
639
640 PR binutils/17512
641 * coffcode.h (coff_set_arch_mach_hook): Check return value from
642 bfd_malloc.
643 (coff_slurp_line_table): Return FALSE if the line number
644 information was corrupt.
645 (coff_slurp_symbol_table): Return FALSE if the symbol information
646 was corrupt.
647 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Always
648 initialise the fields of the dyld_info structure.
649 (bfd_mach_o_build_exec_seg_command): Replace assertion with an
650 error message and a return value.
651 (bfd_mach_o_layout_commands): Change the function to boolean.
652 Return FALSE if the function fails.
653 (bfd_mach_o_build_commands): Fail if bfd_mach_o_layout_commands
654 fails.
655 (bfd_mach_o_read_command): Fail if an unrecognised command is
656 encountered.
657 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Set bfd_error if the
658 read fails.
659 (slurp_symtab): Check the return from bfd_malloc.
660 (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if the copy
661 encountered an error.
662 (_bfd_XXi_final_link_postscript): Fail if a section could not be
663 copied.
664 * peicode.h (pe_bfd_object_p): Fail if the header could not be
665 swapped in.
666 * tekhex.c (first_phase): Fail if the section is too big.
667 * versados.c (struct esdid): Add content_size field.
668 (process_otr): Use and check the new field.
669 (versados_get_section_contents): Check that the section exists and
670 that the requested data is available.
671
03d5b773
CLT
6722015-01-20 Chung-Lin Tang <cltang@codesourcery.com>
673
674 * elf32-nios2.c (elf_backend_default_execstack): Define as 0.
675
1c9177d9
AM
6762015-01-20 Alan Modra <amodra@gmail.com>
677
678 PR ld/17615
679 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Don't drop
680 ELF_COMMON_DEF syms.
681
c4621b33
AM
6822015-01-19 Alan Modra <amodra@gmail.com>
683
3e2aa5bb 684 PR ld/17615
c4621b33
AM
685 * elf-bfd.h (ELF_COMMON_DEF_P): Note that this might be true for
686 linker script assignments too.
687 * elflink.c (elf_gc_sweep_symbol): Don't drop ELF_COMMON_DEF syms.
688 (bfd_elf_gc_mark_dynamic_ref_symbol): Similarly.
689
0ba38529
AM
6902015-01-19 Alan Modra <amodra@gmail.com>
691
692 * elf32-bfin.c (bfin_bfd_reloc_type_lookup): Correct loop iteration
693 to allow return of first howto.
694 * elf32-fr30.c (fr30_reloc_type_lookup): Likewise.
695 * elf32-m32c.c (m32c_reloc_type_lookup): Likewise.
696 * elf32-moxie.c (moxie_reloc_type_lookup): Likewise.
697 * elf32-or1k.c (or1k_reloc_type_lookup): Likewise.
698 * elf32-rl78.c (rl78_reloc_type_lookup): Likewise.
699 * elf32-rx.c (rx_reloc_type_lookup): Likewise.
700 * elf32-tilepro.c (tilepro_reloc_type_lookup): Likewise.
701 * elf32-xstormy16.c (xstormy16_reloc_type_lookup): Likewise.
702 * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise.
703 * elf32-nios2.c (nios2_reloc_map): Add mapping for R_NIOS2_NONE.
704 * elf32-spu.c (spu_elf_bfd_to_reloc_type): Allow return of R_SPU_NONE.
705 (spu_elf_reloc_type_lookup): Adjust to suit.
706
6346d5ca
AM
7072015-01-19 Alan Modra <amodra@gmail.com>
708
709 * bfd-in.h (bfd_get_section_limit_octets): New define, extracted from..
710 (bfd_get_section_limit): ..here.
711 * reloc.c (bfd_perform_relocation): Correct bfd_reloc_outofrange check.
712 (bfd_install_relocation, _bfd_final_link_relocate): Add same check here.
713 * elf32-sh.c (sh_elf_reloc): Correct bfd_reloc_outofrange check.
714 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Remove duplicated
715 bfd_reloc_outofrange check.
716 * bfd-in2.h: Regenerate.
717
718 * cpu-ns32k.c (_bfd_do_ns32k_reloc_contents): Return bfd_reloc_ok
719 on zero size relocs.
720 * ecoff.c (ecoff_reloc_link_order): Likewise.
721 * elf32-nds32.c (nds32_relocate_contents): Likewise.
722 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
723
724 * reloc.c (_bfd_relocate_contents): Don't bomb on zero size relocs.
725 (_bfd_clear_contents): Likewise.
726 * elfxx-mips.c (mips_elf_obtain_contents): Likewise.
727 (mips_elf_perform_relocation): Likewise.
728
729 * aoutx.h (aout_link_reloc_link_order): Allow for NULL return
730 from malloc on zero size alloc.
731 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
732 * elflink.c (elf_reloc_link_order): Likewise.
733 * linker.c (_bfd_generic_reloc_link_order): Likewise.
734 * pdp11.c (aout_link_reloc_link_order): Likewise.
735 * xcofflink.c (xcoff_reloc_link_order): Likewise.
736
737 * aoutx.h (howto_table_ext): Ensure NONE relocs have size 3,
738 bitsize 0, and complain_overflow_dont.
739 * coff-sparc.c (coff_sparc_howto_table): Likewise.
740 * elf-hppa.h (elf_hppa_howto_table): Likewise.
741 * elf-m10200.c (elf_mn10200_howto_table): Likewise.
742 * elf-m10300.c (elf_mn10300_howto_table): Likewise.
743 * elf32-arc.c (elf_arc_howto_table): Likewise.
744 * elf32-arm.c (elf32_arm_howto_table_1): Likewise.
745 * elf32-avr.c (elf_avr_howto_table): Likewise.
746 * elf32-bfin.c (bfin_howto_table): Likewise.
747 * elf32-cr16.c (cr16_elf_howto_table): Likewise.
748 * elf32-cris.c (cris_elf_howto_table): Likewise.
749 * elf32-crx.c (crx_elf_howto_table): Likewise.
750 * elf32-d10v.c (elf_d10v_howto_table): Likewise.
751 * elf32-d30v.c (elf_d30v_howto_table): Likewise.
752 * elf32-dlx.c (dlx_elf_howto_table): Likewise.
753 * elf32-epiphany.c (epiphany_elf_howto_table): Likewise.
754 * elf32-fr30.c (fr30_elf_howto_table): Likewise.
755 * elf32-frv.c (elf32_frv_howto_table): Likewise.
756 * elf32-h8300.c (h8_elf_howto_table): Likewise.
757 * elf32-i370.c (i370_elf_howto_raw): Likewise.
758 * elf32-i386.c (elf_howto_table): Likewise.
759 * elf32-i860.c (elf32_i860_howto_table): Likewise.
760 * elf32-i960.c (elf32_i960_relocate): Likewise.
761 * elf32-ip2k.c (ip2k_elf_howto_table): Likewise.
762 * elf32-iq2000.c (iq2000_elf_howto_table): Likewise.
763 * elf32-lm32.c (lm32_elf_howto_table): Likewise.
764 * elf32-m32c.c (m32c_elf_howto_table): Likewise.
765 * elf32-m32r.c (m32r_elf_howto_table): Likewise.
766 * elf32-m68hc11.c (elf_m68hc11_howto_table): Likewise.
767 * elf32-m68hc12.c (elf_m68hc11_howto_table): Likewise.
768 * elf32-m68k.c (howto_table): Likewise.
769 * elf32-mcore.c (mcore_elf_howto_raw): Likewise.
770 * elf32-mep.c (mep_elf_howto_table): Likewise.
771 * elf32-metag.c (elf_metag_howto_table): Likewise.
772 * elf32-microblaze.c (microblaze_elf_howto_raw): Likewise.
773 * elf32-mips.c (elf_mips_howto_table_rel): Likewise.
774 * elf32-moxie.c (moxie_elf_howto_table): Likewise.
775 * elf32-msp430.c (elf_msp430_howto_table): Likewise.
776 * elf32-mt.c (mt_elf_howto_table): Likewise.
777 * elf32-nds32.c (nds32_elf_howto_table): Likewise.
778 * elf32-nios2.c (elf_nios2_howto_table_rel): Likewise.
779 * elf32-or1k.c (or1k_elf_howto_table): Likewise.
780 * elf32-pj.c (pj_elf_howto_table): Likewise.
781 * elf32-ppc.c (ppc_elf_howto_raw): Likewise.
782 * elf32-rl78.c (rl78_elf_howto_table): Likewise.
783 * elf32-rx.c (rx_elf_howto_table): Likewise.
784 * elf32-s390.c (elf_howto_table): Likewise.
785 * elf32-score.c (elf32_score_howto_table): Likewise.
786 * elf32-score7.c (elf32_score_howto_table): Likewise.
787 * elf32-sh-relocs.h (R_SH_NONE): Likewise.
788 * elf32-spu.c (elf_howto_table): Likewise.
789 * elf32-tic6x.c (elf32_tic6x_howto_table): Likewise.
790 * elf32-tilepro.c (tilepro_elf_howto_table): Likewise.
791 * elf32-v850.c (v850_elf_howto_table): Likewise.
792 * elf32-vax.c (howto_table): Likewise.
793 * elf32-visium.c (visium_elf_howto_table): Likewise.
794 * elf32-xc16x.c (xc16x_elf_howto_table): Likewise.
795 * elf32-xgate.c (elf_xgate_howto_table): Likewise.
796 * elf32-xstormy16.c (xstormy16_elf_howto_table): Likewise.
797 * elf32-xtensa.c (elf_howto_table): Likewise.
798 * elf64-alpha.c (elf64_alpha_howto_table): Likewise.
799 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
800 * elf64-mmix.c (elf_mmix_howto_table): Likewise.
801 * elf64-ppc.c (ppc64_elf_howto_raw): Likewise.
802 * elf64-s390.c (elf_howto_table): Likewise.
803 * elf64-sh64.c (sh_elf64_howto_table): Likewise.
804 * elf64-x86-64.c (x86_64_elf_howto_table): Likewise.
805 * elfn32-mips.c (elf_mips_howto_table_rel): Likewise.
806 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Likewise.
807 (elfNN_aarch64_howto_none): Likewise.
808 * elfxx-ia64.c (ia64_howto_table): Likewise.
809 * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Likewise.
810 * elfxx-tilegx.c (tilegx_elf_howto_table): Likewise.
811 * nlm32-sparc.c (nlm32_sparc_howto_table): Likewise.
812
6333bc0d
L
8132015-01-15 H.J. Lu <hongjiu.lu@intel.com>
814
815 PR ld/17847
816 * elf64-x86-64.c (elf_x86_64_relocate_section): Don't complain
817 about -fPIC if the symbol is undefined when building executable.
818
cd21f5da
NC
8192015-01-15 Nick Clifton <nickc@redhat.com>
820
821 PR binutils/17512
822 * elf-m10300.c (mn10300_info_to_howto): Replace assertion with an
823 error message. Never return an invalid howto pointer.
824 * elf32-cr16.c (cr16_info_to_howto): Likewise.
825 * elf32-crx.c (elf_crx_info_to_howto): Likewise.
826 * elf32-i370.c (i370_elf_info_to_howto): Likewise.
827 * elf32-mcore.c (mcore_elf_info_to_howto): Likewise.
828 * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise.
829 * elf32-mips.c (mips_elf32_rtype_to_howto): Likewise.
830 * elf32-pj.c (pj_elf_info_to_howto): Likewise.
831 * elf32-ppc.c (ppc_elf_info_to_howto): Likewise.
832 * elf32-spu.c (spu_elf_info_to_howto): Likewise.
833 * elf32-v850.c (v850_elf_info_to_howto_rela): Likewise.
834 * elf32-vax.c (rtype_to_howto): Likewise.
835 * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise.
836 * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise.
837 * elfn32-mips.c (sh_elf_info_to_howto): Likewise.
838 * elf32-sh.c (sh_elf_info_to_howto): Likewise.
839 (sh_elf_reloc): Check that the reloc is in range.
840 * reloc.c (bfd_perform_relocation): Check that the section is big
841 enough for the entire reloc.
842 (bfd_generic_get_relocated_section_contents): Report unexpected
843 return values from perform_reloc.
844
2d071cfc
NC
8452015-01-15 Nick Clifton <nickc@redhat.com>
846
847 * elf32-msp430.c (msp430_elf_relax_section): Skip unhandled
848 relocs. Include PC-relative adjustment for R_MSP430X_ABS16
849 relaxation.
850
ca55926c
AM
8512015-01-15 Alan Modra <amodra@gmail.com>
852
853 * elflink.c (_bfd_elf_link_omit_section_dynsym): Return true for
854 any output section matching a linker created dynobj section.
855
8539e4e8
AM
8562015-01-15 Alan Modra <amodra@gmail.com>
857
858 PR 17842
859 * elflink.c (elf_link_output_sym): Assert elf_onesymtab set.
860 (bfd_elf_final_link): Always create a symbol table when emit_relocs.
861 Don't assign symtab file position unless symbols will be output.
862 Merge blocks with condition in common. Don't call
863 elf_backend_output_arch_local_syms or elf_backend_output_arch_syms
864 unless other symbols are output. Move assignment of symtab_shndx
865 file position. Localize variable.
866
52db4ec2
JW
8672015-01-14 Jiong Wang <jiong.wang@arm.com>
868
869 * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when
870 trying to defer them to runtime.
871
0941db69
JW
8722015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
873
874 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use SYMBOLIC_BIND
875 to check if a symbol should be bound symbolically.
876
0172429c
JW
8772015-01-13 Jiong Wang <jiong.wang@arm.com>
878
879 * elfnn-aarch64.c: (elfNN_aarch64_howto_table): Enable overflow check
880 for TLSLE_MOVW_TPREL_G2.
881
bab91cce
JW
8822015-01-13 Jiong Wang <jiong.wang@arm.com>
883
884 PR ld/17415
885 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Mark
886 R_AARCH64_TLSLE_ADD_TPREL_HI12 as complain_overflow_unsigned.
887 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Correct the
888 bit mask.
889
3c758495
TG
8902015-01-12 Terry Guo <terry.guo@arm.com>
891
892 * elflink.c (_bfd_elf_gc_mark_debug_special_section_group): New
893 function.
894 (_bfd_elf_gc_mark_extra_sections): Use it.
895
9d1d54d5
L
8962015-01-11 H.J. Lu <hongjiu.lu@intel.com>
897
898 PR ld/17827
899 * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): For PIE,
900 only discard space for pc-relative relocs symbols which turn
901 out to need copy relocs.
902
c6e8e93a
NC
9032015-01-09 Nick Clifton <nickc@redhat.com>
904
905 * tekhex.c (getvalue): Fix thinko in test for correct extraction
906 of value.
907 (getsym): Return false if there was not enough data to extract the
908 symbol.
909
400cf8cb
AG
9102015-01-09 Anthony Green <green@moxielogic.com>
911
912 * elf32-moxie.c (ELF_MACHINE_ALT1): Define.
913
23d4663e
NC
9142015-01-08 Nick Clifton <nickc@redhat.com>
915
916 * elf32-msp430.c (msp430_elf_relax_section): Add relaxation of
917 16-bit absolute BR instructions to 10-bit pc-relative JMP
918 instructions.
919
063bb025
NC
9202015-01-08 Nick Clifton <nickc@redhat.com>
921
922 PR binutils/17512
923 * coffcode.h (coff_slurp_symbol_table): Return false if we failed
924 to load the line table.
925 * elf.c (_bfd_elf_map_sections_to_segments): Enforce a minimum
926 maxpagesize of 1.
927 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Fail if
928 the Data Directory Size is too large.
929
6f25f223
L
9302015-01-06 H.J. Lu <hongjiu.lu@intel.com>
931
932 PR binutils/17512
933 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocation.
934 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
935
85880250
NC
9362015-01-06 Nick Clifton <nickc@redhat.com>
937
938 PR binutils/17512
e7287c7f
NC
939 * mach-o.c (bfd_mach_o_read_symtab_strtab): Zero terminate the
940 string table.
941
ec93045b
NC
942 * reloc.c (bfd_get_reloc_size): Handle a reloc size of -1.
943 (bfd_perform_relocation): Include the size of the reloc in the
944 test for an out of range relocation.
945 (bfd_generic_get_relocated_section_contents): Remove reloc range
946 test.
947
85880250
NC
948 * coff-i860.c (CALC_ADDEND): Always set an addend value.
949 * tekhex.c (getvalue): Add an end pointer parameter. Use it to
950 avoid reading off the end of the buffer.
951 (getsym): Likewise.
952 (first_phase): Likewise.
953 (pass_over): Pass an end pointer to the invoked function.
954
533d0af0
L
9552015-01-05 H.J. Lu <hongjiu.lu@intel.com>
956
957 PR binutils/17512
958 * elf32-i386.c (elf_i386_get_plt_sym_val): Return NULL on corrupt
959 input.
960 * elf64-x86-64.c (elf_x86_64_get_plt_sym_val): Likewise.
961
896ca098
NC
9622015-01-05 Nick Clifton <nickc@redhat.com>
963
964 PR binutils/17512
965 * archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
966 is at least big enough for the header to be read.
967 * elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
968 * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
969 (bfd_mach_o_read_command): Prevetn duplicate error messages about
970 unrecognized commands.
971 * syms.c (_bfd_stab_section_find_nearest_line): Add range checks
972 when indexing into the string table.
973
b90efa5b 9742015-01-01 Alan Modra <amodra@gmail.com>
ee3b52e9 975
b90efa5b 976 Update year range in copyright notice of all files.
ee3b52e9 977
b90efa5b 978For older changes see ChangeLog-2014
56882138 979\f
b90efa5b 980Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
981
982Copying and distribution of this file, with or without modification,
983are permitted in any medium without royalty provided the copyright
984notice and this notice are preserved.
985
56882138
AM
986Local Variables:
987mode: change-log
988left-margin: 8
989fill-column: 74
990version-control: never
991End: