readelf verdef and verneed
[external/binutils.git] / binutils / ChangeLog
1 2015-11-03  Alan Modra  <amodra@gmail.com>
2
3         * readelf (process_version_sections): Check DT_VERNEED and
4         DT_VERDEF for all symbols.  Report "*both*" should a symbol
5         have both a verneed and verdef.
6         (get_symbol_version_string): Reduce indentation by early
7         exits.  Don't use SHT_NOBITS heuristic to detect case where a
8         defined symbol has a verneed entry.
9
10 2015-10-30  Nick Clifton  <nickc@redhat.com>
11
12         * po/zh_CN.po: Updated (simplified) Chinese translation.
13
14 2015-10-27  Stephen Fisher  <sfisher@panix.com>
15
16         * binutils.c (process_netbsd_elf_note): New function.
17         (process_note): Call the new function for NetBSD core notes.
18
19 2015-10-22  Hans-Peter Nilsson  <hp@bitrange.com>
20
21         * objcopy.c (setup_section): Don't omit bfd_copy_private_bfd_data
22         call when extract_symbol.
23
24 2015-10-21  Ronald Hoogenboom  <rhoogenboom@irdeto.com>
25
26         PR binutils/19104
27         * objcopy.c (command_line_switch): Add OPTION_ADD_SYMBOL.
28         (copy_options): Add add-symbol.
29         (copy_usage): Likewise.
30         (parse_symflags): New function.
31         (need_sym_before): New function.
32         (create_new_symbol): New function.
33         (filter_symbols): Add code to insert new symbols.
34         (copy_main): Process OPTION_ADD_SYMBOL.
35         * doc/binutils.texi: Document new feature.
36         * NEWS: Add note about the new feature.
37
38 2015-10-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
39
40         PR binutils/19147
41         * readelf.c (print_core_note): Fix off-by-one bug.
42
43 2015-10-15  Alan Modra  <amodra@gmail.com>
44
45         * objcopy.c (copy_object): Don't omit bfd_copy_private_bfd_data
46         call when extract_symbol.
47
48 2015-10-12  Andrew Burgess  <andrew.burgess@embecosm.com>
49
50         * od-elf32_avr.c (elf32_avr_dump_avr_prop): Fix printing of align
51         specific data, fix formatting for align and org data.
52
53 2015-09-01  Claudiu Zissulescu  <claziss@synopsys.com>
54             Cupertino Miranda  <cmiranda@synopsys.com>
55
56         * readelf.c (get_machine_name): Remove A5 reference. Add ARCompact
57         and ARCv2.
58         (get_machine_flags): Handle EM_ARCV2 and EM_ARCOMPACT.
59         (guess_is_rela): Likewise.
60         (dump_relocations): Likewise.
61         (is_32bit_abs_reloc): Likewise.
62         (is_16bit_abs_reloc): Likewise.
63         (is_none_reloc): Likewise.
64         * NEWS: Mention the new feature.
65
66 2015-09-29  Andrew Stubbs  <ams@codesourcery.com>
67             H.J. Lu  <hongjiu.lu@intel.com>
68
69         PR binutils/19020
70         * objcopy.c (copy_object): Don't adjust the output section size
71         when copying from input sections.
72         (copy_section): Use input section size for the copy.  Get the
73         updated section size from bfd_convert_section_contents.
74
75 2015-09-29  H.J. Lu  <hongjiu.lu@intel.com>
76
77         PR binutils/19005
78         * objcopy.c (copy_object): Adjust the output section size to
79         skip gap fills between sections when copying from input sections
80         to output sections.
81
82 2015-09-28  Nick Clifton  <nickc@redhat.com>
83
84         * po/fr.po: Updated French translation.
85
86 2015-09-25  James Bowman  <james.bowman@ftdichip.com>
87
88         * ft32-dis.c (print_insn_ft32): Fix incorrect data field mask.
89
90 2015-09-23  Nick Clifton  <nickc@redhat.com>
91
92         PR binutils/15835
93         * readelf.c (struct elf_section_list): New structure.
94         (symtab_shndx_hdr): Replace with symtab_shndx_list.
95         (get_32bit_elf_symbols): Scan for a symbol index table matching
96         the symbol table in use.
97         (get_64bit_elf_symbols): Likewise.
98         (process_section_headers): Handle multiple symbol index sections.
99
100 2015-09-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
101
102         * readelf.c (process_dynamic_section): Handle DF_1_STUB, DF_1_PIE.
103
104 2015-09-10  Erik Ackermann  <kurterikackermann@gmail.com>
105
106         * strings.c: Add -s/--output-separator option to specify custom
107         separator string.
108         * NEWS: Mention the new feature.
109         * doc/binutils.text (strings): Document the new command line
110         option.
111
112 2015-09-09  Nick Clifton  <nickc@redhat.com>
113
114         * doc/binutils.texi (ar): Remove bogus sentance concerning thin
115         archives and invalid paths.
116
117 2015-09-03  Nick Clifton  <nickc@redhat.com>
118
119         PR binutils/18879
120         * readelf.c (get_unwind_section_word): Check for negative offsets
121         and very small sections.
122         (dump_arm_unwind): Warn if the table offset is too large.
123
124 2015-08-28  H.J. Lu  <hongjiu.lu@intel.com>
125
126         * Makefile.am (TOOL_PROGS): Add readelf.
127         * Makefile.in: Regenerated.
128
129 2015-08-24  Yaakov Selkowitz  <yselkowi@redhat.com>
130
131         * configure: Regenerate.
132
133 2015-08-17  Alan Modra  <amodra@gmail.com>
134
135         * configure: Regenerate.
136
137 2015-08-07  Andrew Burgess  <andrew.burgess@embecosm.com>
138
139         * objcopy.c (is_specified_symbol_predicate): Don't stop at first
140         match.  Non-match rules set found to FALSE.
141
142 2015-08-06  Yaakov Selkowitz  <yselkowi@redhat.com>
143
144         * configure: Regenerate.
145
146 2015-08-05  Nick Clifton  <nickc@redhat.com>
147
148         * doc/binutils.texi: Document that the --only-keep-debug option
149         to strip and objcopy preserves the section headers of stripped
150         sections.
151
152 2015-08-04  Yuriy M. Kaminskiy"  <yumkam@gmail.com>
153             Tyler Hicks  <tyhicks@canonical.com>
154
155         PR binutils/18750
156         * readelf.c (process_mips_specific): Fix incorrect escape
157         sequence handling.
158
159 2015-08-04  Nick Clifton  <nickc@redhat.com>
160
161         * ar.c (extract_file): Free cbuf if the path is invalid.
162
163 2015-07-27  H.J. Lu  <hongjiu.lu@intel.com>
164
165         * configure: Regenerated.
166
167 2015-07-24  H.J. Lu  <hongjiu.lu@intel.com>
168
169         * stabs.c (parse_stab_range_type): Use 0xffffffffffffffffLL.
170
171 2015-07-22  Alan Modra  <amodra@gmail.com>
172
173         * readelf.c (dump_relocations): Show MIN_INT addends as negative.
174
175 2015-07-20  Alan Modra  <amodra@gmail.com>
176
177         * doc/Makefile.in: Regenerate.
178
179 2015-07-16  Alan Modra  <amodra@gmail.com>
180
181         PR binutils/18672
182         * readelf.c (get_32bit_dynamic_section): Correct buffer limit test.
183         (get_64bit_dynamic_section): Likewise.
184
185 2015-07-14  H.J. Lu  <hongjiu.lu@intel.com>
186
187         * objcopy.c (copy_file): Set BFD_COMPRESS_GABI if not
188         zlib-gnu.
189         * doc/binutils.texi: Change --compress-debug-sections and
190         --compress-debug-sections=zlib to zlib-gabi.
191
192 2015-07-10  H.J. Lu  <hongjiu.lu@intel.com>
193
194          PR binutils/18656
195          * objcopy.c (setup_section): Call bfd_convert_section_size
196          to get the output section size.
197          (copy_section): Get the section size from the output section
198          and call bfd_get_full_section_contents to convert section
199          contents for output.
200
201 2015-07-10  H.J. Lu  <hongjiu.lu@intel.com>
202
203         * readelf.c (dump_section_as_strings): Warn unsupported compress
204         type and corrupted compressed section.
205         (dump_section_as_bytes): Likewise.
206         (load_specific_debug_section): Likewise.
207
208 2015-07-09  Catherine Moore  <clm@codesourcery.com>
209
210         * readelf.c (print_mips_fp_abi_value): Handle
211         Val_GNU_MIPS_ABI_FP_NAN2008.
212
213 2015-06-26  Matthew Fortune  <matthew.fortune@imgtec.com>
214
215         * readelf.c (get_mips_dynamic_type): Handle DT_MIPS_RLD_MAP_REL.
216
217 2015-06-22  Nick Clifton  <nickc@redhat.com>
218
219         * objdump.c (disassemble_bytes): Set the stop_vma field in the
220         disassemble_info structure when disassembling code sections with
221         -d.
222         * doc/binutils.texi (objdump): Document the discrepancy between -d
223         and -D.
224
225 2015-06-05  Nick Clifton  <nickc@redhat.com>
226
227         * dwarf.c (read_debug_line_header): Use reloc_at to detect
228         incomplete .debug_line headers
229
230 2015-05-29  Roland McGrath  <mcgrathr@google.com>
231
232         * readelf.c (print_gnu_note: NT_GNU_ABI_TAG): Recognize
233         GNU_ABI_TAG_SYLLABLE and GNU_ABI_TAG_NACL.
234
235 2015-05-29  Stephen Kitt  <steve@sk2.org>
236
237         * dlltool.c (make_one_lib_file): Clear .idata$6 before use.
238         (main): Fail if the output file specified by the -z option cannot
239         be opened.
240
241 2015-05-18  Nick Clifton  <nickc@redhat.com>
242
243         PR binutils/18420
244         * ia64-unwind.c (unw_decode): Add end parameter.  Pass parameter
245         on to decode functions.
246         (unw_devode_p2_p5): Pass end paraemter to UNW_DEC_SPILL_MASK.
247         (UNW_DEC_SPILL_MASK): Add end parameter.  Check that unw_rlen does
248         not take us beyond the end of the buffer.
249         * ia64-unwind.h (unw_decode): Update prototype.
250         * readelf.c (dump_ia64_unwind): Pass end pointer to unw_decode.
251
252 2015-05-15  H.J. Lu  <hongjiu.lu@intel.com>
253
254         * readelf.c (dump_section_as_strings): Change pointers from
255         char * to unsigned char *.
256
257 2015-05-15  H.J. Lu  <hongjiu.lu@intel.com>
258
259         PR binutis/18386
260         * doc/binutils.texi: Document -Mamd64 and -Mintel64.
261
262 2015-05-15  Nick Clifton  <nickc@redhat.com>
263
264         * readelf.c (options): Add "decompress".
265         (usage): Mention -z/--decompress.
266         (parse_args): Handle -z.
267         (uncompress_section_contents): Move to earlier in the file.
268         (dump_section_as_strings): If requested, decompress the section
269         before dumping.
270         (dump_section_as_bytes): Likewise.
271         * doc/binutils.texi: Document the new option.
272
273 2015-05-14  Peter Bergner  <bergner@vnet.ibm.com>
274
275         * MAINTAINERS: Add myself as PPC maintainer.
276
277 2015-05-14  H.J. Lu  <hongjiu.lu@intel.com>
278
279         * readelf.c (uncompress_section_contents): Add a parameter for
280         uncompressed size.  Don't check the zlib header.
281         (load_specific_debug_section): Updated.
282
283 2015-05-15  Nick Clifton  <nickc@redhat.com>
284
285         PR binutils/18374
286         * dwarf.h (struct dwarf_section): Add reloc_info and num_relocs
287         fields.
288         (struct dwarf_section_display): Change bitfield to boolean.
289         (reloc_at): Add prototype.
290         * dwarf.c (display_loc_list): Ignore list terminators if there are
291         relocs against them.
292         (display_debug_loc): Issue a warning if there are relocs against
293         the .debug_loc section.
294         (display_displays): Initialise reloc_info and num_relocs fields.
295         * objdump.c (load_specific_debug_section): Initialise reloc_info
296         and num_relocs fields.
297         (reloc_at): New function.
298         * readelf.c (is_32bit_abs_reloc): Add IA64's R_IA64_DIS32LSB
299         reloc.
300         (reloc_at): New function.
301         (apply_relocations): Add relocs_return and num_relocs_return
302         parameters.  Fill them in with the loaded relocs if non-NULL.
303         (dump_section_as_bytes): Update call to apply_relocations.
304         (load_specific_debug_section): Initialise reloc_info and
305         num_relocs fields.
306
307 2015-05-13  H.J. Lu  <hongjiu.lu@intel.com>
308
309         * elfedit.c (elf_class): Return ELF_CLASS_BOTH by default.
310
311 2015-05-13  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
312
313         * MAINTAINERS: Add myself as s390 and s390x maintainer.
314
315 2015-05-12  Stephen Kitt  <steve@sk2.org>
316
317         * dlltool.c (main): Accept -t as an abbreviation for
318         --temp-prefix.
319
320 2015-05-11  H.J. Lu  <hongjiu.lu@intel.com>
321
322         * dwarf.c (dwarf_regnames_iamcu): New.
323         (init_dwarf_regnames_iamcu): Likewise.
324         (init_dwarf_regnames): Call init_dwarf_regnames_iamcu for EM_IAMCU.
325         * dwarf.h (init_dwarf_regnames_iamcu): New.
326         * objdump.c (dump_dwarf): Call init_dwarf_regnames_iamcu for
327         bfd_arch_iamcu.
328
329 2015-05-11  H.J. Lu  <hongjiu.lu@intel.com>
330
331         * elfedit.c (enum elfclass): New.
332         (input_elf_class): Change type to enum elfclass.
333         (output_elf_class): New.
334         (elf_class): Change return type to enum elfclass.  Support EM_386
335         and EM_IAMCU.
336         (update_elf_header): Check if input and output ELF classes match.
337         (elf_machine): Support EM_386 and EM_IAMCU.
338         (main): Update input_elf_class.  Set output_elf_class.
339         * doc/binutils.texi: Update elfedit.
340
341 2015-05-11  H.J. Lu  <hongjiu.lu@intel.com>
342
343         * dwarf.c (init_dwarf_regnames): Replace EM_486 with EM_IAMCU.
344         * readelf.c (guess_is_rela): Likewise.
345         (dump_relocations): Likewise.
346         (get_machine_name): Likewise.
347         (get_elf_section_flags): Likewise.
348         (process_section_headers): Likewise.
349         (is_32bit_abs_reloc): Likewise.
350         (is_32bit_pcrel_reloc): Likewise.
351
352 2015-04-30  Nick Clifton  <nickc@redhat.com>
353
354         * readelf.c (get_machine_flags): Add description of MeP flags.
355
356 2015-04-27  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
357
358         * readelf.c (display_s390_gnu_attribute): New function.
359         (process_s390_specific): New function.
360         (process_arch_specific): Call process_s390_specific.
361
362 2015-04-24  Nick Clifton  <nickc@redhat.com>
363
364         PR 18313
365         * ieee.c (ieee_read_cxx_class): Initialise the varargs variable.
366         * readelf.c (uncompress_section_contents): Zero initialise the
367         zstream structure.
368
369 2015-04-23  H.J. Lu  <hongjiu.lu@intel.com>
370
371         PR binutils/18209
372         * objcopy.c (setup_section): Copy compress status.
373
374 2015-04-15  H.J. Lu  <hongjiu.lu@intel.com>
375
376         * NEWS: Mention
377         --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi].
378
379 2015-04-14  Nick Clifton  <nickc@redhat.com>
380
381         * readelf.c (target_specific_reloc_handling): Add code to handle
382         RL78 complex relocs.
383
384 2015-04-13  Doug Evans  <dje@google.com>
385
386         PR binutils/18218
387         * readelf.c (printable_section_name): Constify sec argument.
388         (apply_relocations): Ditto.  New arg "size".  All callers updated.
389         (load_specific_debug_section): Constify sec argument.
390         Remove side-effect of modifying sec->sh_size.
391
392 2015-04-09  H.J. Lu  <hongjiu.lu@intel.com>
393
394         * objcopy.c (do_debug_sections): Use bit patterns.
395         (copy_object): Return FALSE for compress_zlib, compress_gnu_zlib
396         and compress_gabi_zlib on non-ELF input.
397         (copy_file): Don't check non-ELF input here.
398
399 2015-04-09  Nick Clifton  <nickc@redhat.com>
400
401         * readelf.c (get_machine_flags): Report the setting of the string
402         insn using bits.
403
404 2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>
405
406         * objcopy.c (do_debug_sections): Add compress_zlib,
407         compress_gnu_zlib and compress_gabi_zlib.
408         (copy_options): Use optional_argument on compress-debug-sections.
409         (copy_usage): Update --compress-debug-sections.
410         (copy_file): Handle compress_zlib, compress_gnu_zlib and
411         compress_gabi_zlib.
412         (copy_main): Handle
413         --compress-debug-sections={none|zlib|zlib-gnu|zlib-gabi}.
414         * doc/binutils.texi: Document
415         --compress-debug-sections={none|zlib|zlib-gnu|zlib-gabi}.
416
417 2015-04-08  H.J. Lu  <hongjiu.lu@intel.com>
418
419         * objcopy.c (copy_usage): Replace "--interleave [<number>]" with
420         --interleave[=<number>].
421
422 2015-04-05  H.J. Lu  <hongjiu.lu@intel.com>
423
424         * readelf.c (get_elf_section_flags): Support SHF_COMPRESSED.
425         (get_compression_header): New.
426         (process_section_headers): Dump compression header if needed.
427         (uncompress_section_contents): Don't free compressed_buffer here.
428         (load_specific_debug_section): Free the compressed buffer, update
429         the section buffer and the section size if uncompress is
430         successful.
431
432 2015-04-02  H.J. Lu  <hongjiu.lu@intel.com>
433
434         * configure: Regenerated.
435
436 2015-04-02  Mike Frysinger  <vapier@gentoo.org>
437
438         * MAINTAINERS: Update my e-mail address.
439
440 2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>
441
442         * configure: Regenerated.
443
444 2015-03-31  H.J. Lu  <hongjiu.lu@intel.com>
445
446         * configure.ac: Revert the AM_ZLIB change.
447         * Makefile.in: Regenerated.
448         * aclocal.m4: Likewise.
449         * configure: Likewise.
450
451 2015-03-31  H.J. Lu  <hongjiu.lu@intel.com>
452
453         * Makefile.am (ZLIB): New.
454         (ZLIBINC): Likewise.
455         (AM_CFLAGS): Add $(ZLIBINC).
456         (readelf_LDADD): Add $(ZLIB).
457         * configure.ac (AM_ZLIB): Removed.
458         (zlibdir): New.  AC_SUBST.
459         (zlibinc): Likewise.
460         Add --with-system-zlib.
461         * Makefile.in: Regenerated.
462         * config.in: Likewise.
463         * configure: Likewise.
464
465 2015-03-19  Nick Clifton  <nickc@redhat.com>
466
467         * readelf.c (get_machine_flags): Decode RL78's G13 and G14 flags.
468
469 2015-03-18  Jon Turney  <jon.turney@dronecode.org.uk>
470             Nick Clifton  <nickc@redhat.com>
471
472         PR binutils/18087
473         * doc/binutils.texi: Note that when objcopy compresses debug
474         sections the compression is only performed if it makes the section
475         smaller.
476
477 2015-03-10  H.J. Lu  <hongjiu.lu@intel.com>
478
479         PR binutils/18101
480         * readelf.c (parse_args): Move nothing to do warning to ...
481         (main): Here.
482
483 2015-03-10  Nick Clifton  <nickc@redhat.com>
484
485         PR binutils/18101
486         * readelf.c (parse_args): Enhance check for nothing to do by
487         accounting for the --wide option.
488
489         PR binutils/17636
490         * objcopy.c (copy_object): Avoid calling fatal as that does not
491         allow the parent to clean up temporary files.
492
493 2015-03-10  Yuri Gribov  <y.gribov@samsung.arm>
494
495         PR ld/16572
496         * readelf.c: Remove support for ELF_ARM_HASENTRY.
497
498 2015-03-05  Nick Clifton  <nickc@redhat.com>
499
500         PR binutils/18064
501         * doc/binutils.texi (objcopy): Extend description of
502         --add-gnu-debuglink option to explain that the separate debug info
503         file must exist.  Add a description of what to do if the debug
504         info file is built in one place but then installed into a separate
505         location.
506
507 2015-03-05  Nick Clifton  <nickc@redhat.com>
508
509         PR binutils/17994
510         * dlltool.c (temp_file_to_remove): New local array.
511         (unlink_temp_files): New functions - unlinks any file in the
512         temp_file_to_remove array, unless dotdeltemps is set.
513         (gen_exp_file): Add temp files to array.
514         (make_head): Likewise.
515         (make_delay_head): Likewise.
516         (make_tail): Likewise.
517         (gen_lib_file): Call unlink_temp_files.
518
519 2015-02-28  Andrew Burgess  <andrew.burgess@embecosm.com>
520
521         * objcopy.c (update_sections): New list.
522         (command_line_switch): Add OPTION_UPDATE_SECTION.
523         (copy_options): Add update-section.
524         (copy_usage): Document new option.
525         (is_update_section): New function.
526         (is_strip_section_1): Add check for attempt to update and remove
527         the same section.
528         (copy_object): Update size and content of requested sections.
529         (skip_section): Don't copy for updated sections.
530         (copy_main): Handle --update-section.
531         * doc/binutils.texi (objcopy): Add description of --update-section
532         option.
533         * NEWS: Mention --update-section option.
534
535 2015-02-26  Nick Clifton  <nickc@redhat.com>
536
537         PR binutils/17512
538         * coffgrok.c (do_type): Check for an out of range tag index.
539         Check for integer overflow computing array dimension.
540         (do_define): Likewise.
541
542 2015-02-26  Andrew Burgess  <andrew.burgess@embecosm.com>
543
544         * objcopy.c (init_section_add): Rename optarg to arg in order to
545         avoid shadowing a global variable.
546
547 2015-02-26  Nick Clifton  <nickc@redhat.com>
548
549         PR binutils/17512
550         * resrc.c (write_rc_messagetable): Tighten check for invalid
551         message lengths.
552
553         * dwarf.c (display_debug_loc): Pacify the undefined behaviour
554         sanitizer by simplifying address difference calculation.
555         (struct Frame_Chunk): Change type of cfa_offset to dwarf_vma in
556         order to avoid arithmetic overflows.
557         (frame_display_row): Cast cfa_offset before printing it.
558         (display_debug_frames): Likewise.
559         Check for an unexpected segment size.
560         Chnage type of 'l' local to dwarf_vma and cast it back to an int
561         when printing.
562         (process_cu_tu_index): Tighten check for an invalid ncols value.
563         * readelf.c (process_corefile_note_segment): Check for
564         inote.descdata extending beyond the end of the section.
565         (process_v850_notes): Likewise.
566
567 2015-02-26  Terry Guo  <terry.guo@arm.com>
568
569         * readelf.c (arm_attr_tag_ABI_HardFP_use): Update how we
570         display it.
571
572 2015-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
573
574         * objcopy.c (init_section_add): New function.
575         (section_add_load_file): New function.
576         (copy_main): Make use of new functions.
577
578 2015-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
579
580         * od-elf32_avr.c: Add elf32-avr.h include.
581         (OPT_AVRPROP): Define.
582         (options[]): Add 'avr-prop' entry.
583         (elf32_avr_help): Add avr-prop help text.
584         (elf32_avr_dump_avr_prop): New function.
585         (elf32_avr_dump): Add check for avr-prop.
586
587 2015-02-24  Nick Clifton  <nickc@redhat.com>
588
589         * readelf.c (get_machine_flags): Remove deprecated V850 machine
590         flags.
591         (get_v850_section_type_name): New function.  Handles V850 special
592         sections.
593         (get_section_type_name): Add support for V850.
594         (get_v850_elf_note_type): New function.  Returns the name of a
595         V850 note.
596         (print_v850_note): New function.  Prints a V850 note.
597         (process_v850_notes): New function.  Prints V850 notes.
598         (process_note_sections): Add support for V850.
599
600 2015-02-24  Mike Frysinger  <vapier@gentoo.org>
601
602         PR binutils/17531
603         * readelf.c (process_symbol_table): Declare chained.  Increment it
604         in every loop.  Abort when chained is larger than nchains.  Move
605         error check outside of chain loop.
606
607 2015-02-24  Dmitry Antipov  <dantipov@nvidia.com>
608
609         * readelf.c (find_symbol_for_address): Use a binary search to
610         speed up symbol location.  Skip check for function symbol type.
611         (*_unw_aux_info): Add funtab and nfuns fields contains a sorted
612         list of function symbols.
613         (dump_ia64_unwind): Initialise the funtab and nfuns fields and
614         pass them to find_symbol_for_address.
615         (dump_hppa_unwind): Likewise.
616         (arm_print_vma_and_name): Pass funtab to find_symbol_for_address.
617         (dump_arm_unwind): Initialise the funtab and nfuns fields.
618
619 2015-02-24  Nick Clifton  <nickc@redhat.com>
620
621         * objdump.c (dump_section): Extend the warning message displayed
622         when a section cannot be loaded.
623
624 2015-02-21  Mike Frysinger  <vapier@gentoo.org>
625
626         * readelf.c (process_program_headers): Add newline to warning
627         message.
628
629 2015-02-20  Andreas Arnez  <arnez@linux.vnet.ibm.com>
630
631         * readelf.c (get_note_type): Add NT_S390_VXRS_LOW and
632         NT_S390_VXRS_HIGH.
633
634 2015-02-13  Nick Clifton  <nickc@redhat.com>
635
636         PR binutils/17512
637         * dwarf.c (read_leb128): Fix test for shift becoming too large.
638
639         * coffgrok.c (do_define): Add check for type size overflow.
640         * srconv.c (walk_tree_sfile): Check that enough sections are
641         available before parsing.
642         (prescan): Likewise.
643
644         PR binutils/17531
645         * dwarf.c (display_debug_aranges): Add check for an excessive
646         ar_length value.
647         (process_cu_tu_index): Check for a row * columns sum being too
648         large.
649
650 2015-02-13  Alan Modra  <amodra@gmail.com>
651
652         * dwarf.c: Formatting, whitespace.
653         (process_debug_info): Style fix.
654
655 2015-02-11  Nick Clifton  <nickc@redhat.com>
656
657         * rl78-decode.opc: Add 'a' attribute to instructions that support
658         [HL+0] addressing.
659         * rl78-decode.c: Regenerate.
660         * rl78-dis.c (print_insn_rl78): Display the offset in [HL+0]
661         addresses.
662
663 2015-02-11  Nick Clifton  <nickc@redhat.com>
664
665         PR binutils/17531
666         * dwarf.c (display_debug_pubnames_worker): Work around compiler
667         bug checking address ranges.
668         (display_debug_frames): Likewise.
669         (display_gdb_index): Likewise.
670         (process_cu_tu_index): Add range check on the ncols value.
671
672 2015-02-10  Nick Clifton  <nickc@redhat.com>
673
674         PR binutils/17512
675         * dwarf.c (eh_addr_size): Use an unsigned type.
676         (size_of_encoded_value): Return an unsigned type.
677         (read_leb128): Break if the shift becomes too big.
678         (process_extended_line_op): Do not read the address if the length
679         is too long.
680         (read_cie): Warn and fail if the pointer size or segment size are
681         too big.
682         * dwarf.h (DWARF2_External_LineInfo): Delete unused and incorrect
683         structure definition.
684         (DWARF2_External_PubNames): Likewise.
685         (DWARF2_External_CompUnit): Likewise.
686         (DWARF2_External_ARange): Likewise.
687         (DWARF2_Internal_LineInfo): Use dwarf_vma type for
688         li_prologue_length.
689         (eh_addr_size): Update prototype.
690
691         PR binutils/17531
692         * dwarf.c (process_debug_info): Zero the debug information array
693         since correct initialisation cannot be relied upon.
694         (process_cu_tu_index): Improve range checks.
695
696         PR binutils/17531
697         * dwarf.c (display_debug_pubnames_worker): Use dwarf_vma type for
698         offset.
699         * readelf.c (dump_relocations): Handle printing offsets which are
700         MIN_INT.
701         (process_corefile_note_segment): Add range check of the namesz
702         field.
703
704 2015-02-09  Mark Wielaard  <mjw@redhat.com>
705
706         * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
707         and DW_LANG_Fortran08.
708
709 2015-02-06  Nick Clifton  <nickc@redhat.com>
710
711         PR binutils/17512
712         * dwarf.c (display_debug_frames): Fix range checks to work on
713         32-bit binaries complied on a 64-bit host.
714
715         PR binutils/17531
716         * dwarf.c (xcmalloc): Fail if the arguments are too big.
717         (xcrealloc): Likewise.
718         (xcalloc2): Likewise.
719         * readelf.c (process_mips_specific): Fail if an option has an
720         invalid size.
721
722 2015-02-05  Alan Modra  <amodra@gmail.com>
723
724         PR binutils/17926
725         * dwarf.c (dwarf_select_sections_by_letters): Don't refer to optarg.
726
727 2015-02-04  Nick Clifton  <nickc@redhat.com>
728
729         PR binutils/17531
730         * dwarf.c (read_and_display_attr_value): Test for a block length
731         being so long that it wraps around to before the start of the block.
732         (process_debug_info): Test for section_begin wrapping around to
733         before the start of the section.
734         (display_gdb_index): Test for num_cus being so large that the end
735         address wraps around to before the start of the section.
736         (process_cu_tu_index): Test for j being so large that the section
737         index pool wraps around to before the start of the section.
738
739 2015-02-03  Nick Clifton  <nickc@redhat.com>
740
741         PR binutils/17531
742         * dwarf.c (process_debug_info): Add range check.
743         (display_debug_pubnames_worker): Likewise.
744         (display_gdb_index): Fix range check.
745         (process_cu_tu_index): Add range check.
746         * readelf.c (get_data): Change parameter types from size_t to
747         bfd_size_type.  Add checks for loss of accuracy when casting from
748         bfd_size_type to size_t.
749         (get_dynamic_data): Likewise.
750         (process_section_groups): Limit number of error messages.
751
752 2015-02-03  Nick Clifton  <nickc@redhat.com>
753
754         PR binutils/17512
755         * objdump.c (display_any_bfd): Fail if archives nest too deeply.
756
757 2015-01-28  James Bowman  <james.bowman@ftdichip.com>
758
759         * readelf.c: Add FT32 support.
760
761 2015-01-27  Nick Clifton  <nickc@redhat.com>
762
763         PR binutils/17512
764         * dlltool.c (identify_search_archive): If the last archive was the
765         same as the current archive, terminate the loop.
766
767         * addr2line.c (slurp_symtab): If the symcount is zero, free the
768         symbol table pointer.
769
770         * rcparse.y: Add checks to avoid integer divide by zero.
771         * rescoff.c (read_coff_rsrc): Add check on the size of the
772         resource section.
773         (read_coff_res_dir): Add check on the nesting level.
774         Check for resource names overrunning the buffer.
775         * resrc.c (write_rc_messagetable): Update formatting.
776         Add check of 'elen' being zero.
777
778 2015-01-23  Nick Clifton  <nickc@redhat.com>
779
780         * nlmconv.c (powerpc_mangle_relocs): Fix build errors introduced
781         by recent delta, when compiling on for a 32-bit host.
782
783 2015-01-21  Nick Clifton  <nickc@redhat.com>
784
785         PR binutils/17512
786         * addr2line.c (main): Call bfd_set_error_program_name.
787         * ar.c (main): Likewise.
788         * coffdump.c (main): Likewise.
789         * cxxfilt.c (main): Likewise.
790         * dlltool.c (main): Likewise.
791         * nlmconv.c (main): Likewise.
792         * nm.c (main): Likewise.
793         * objdump.c (main): Likewise.
794         * size.c (main): Likewise.
795         * srconv.c (main): Likewise.
796         * strings.c (main): Likewise.
797         * sysdump.c (main): Likewise.
798         * windmc.c (main): Likewise.
799         * windres.c (main): Likewise.
800         * objcopy.c (main): Likewise.
801         (copy_relocations_in_section): Check for relocs without associated
802         symbol pointers.
803
804 2015-01-21  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
805
806         * MAINTAINERS: Add self to ARM maintainers list.
807
808 2015-01-21  Nick Clifton  <nickc@redhat.com>
809
810         PR binutils/17512
811         * coffgrok.c (do_type): Check that computed ref exists.
812         (doit): Add range checks when computing section for scope.
813
814 2015-01-12  H.J. Lu  <hongjiu.lu@intel.com>
815
816         * dwarf.c (process_debug_info): Properly check abbrev size.
817
818 2015-01-12  Nick Clifton  <nickc@redhat.com>
819
820         PR binutils/17531
821         * dwarf.c (process_debug_info): Check for abbrev_base being larger
822         than the section size.
823         (process_cu_tu_index): Use xcalloc2 to allocate the CU and TU
824         arrays.
825         (xcalloc2): New function.  Like xcalloc, but checks for overflow.
826         (display_debug_addr): Use xcalloc to allocate the debug_addr_info
827         array.  Check for an address_base that is too large.
828
829         * dwarf.h (xcalloc2): Prototype.
830
831 2015-01-12  Alan Modra  <amodra@gmail.com>
832
833         * prdbg.c (print_debugging_info): Don't use void* for function
834         pointer param.
835         * budbg.h (print_debugging_info): Update prototype.
836
837 2015-01-08  Nick Clifton  <nickc@redhat.com>
838
839         PR binutils/17512
840         * ojcopy.c (copy_object): Free the symbol table if no symbols
841         could be loaded.
842         (copy_file): Use bfd_close_all_done to close files that could not
843         be copied.
844
845         * sysdump.c (getINT): Fail if reading off the end of the buffer.
846         Replace call to abort with a call to fatal.
847         (getCHARS): Prevetn reading off the end of the buffer.
848
849         * nlmconv.c (i386_mangle_relocs): Skip relocs without an
850         associated symbol.
851         (powerpc_mangle_relocs): Skip unrecognised relocs.  Check address
852         range before applying a reloc.
853
854 2015-01-07  Nick Clifton  <nickc@redhat.com>
855
856         PR binutils/17512
857         * dlltool.c (scan_obj_file): Break loop if the last archive
858         displayed matches the current archive.
859
860         * objdump.c (display_any_bfd): Add a depth limit to nested archive
861         display in order to avoid infinite loops.
862         * srconv.c: Replace calls to abort with calls to fatal with an
863         error message.
864
865 2015-01-06  Nick Clifton  <nickc@redhat.com>
866
867         PR binutils/17512
868         * coffdump.c (dump_coff_section): Check for a symbol being
869         available before printing its name.
870         (main): Check the return value from coff_grok.
871         * coffgrok.c: Reformat and tidy.
872         Add range checks to most functions.
873         (coff_grok): Return NULL if the input bfd is not in a COFF
874         format.
875         * coffgrok.h: Reformat and tidy.
876         (struct coff_section): Change the nrelocs field to unsigned.
877         * srconv.c (main): Check the return value from coff_grok.
878
879 2015-01-05  Nick Clifton  <nickc@redhat.com>
880
881         PR binutils/17512
882         * nm.c (print_symbol): Add 'is_synthetic' parameter.  Use it to
883         help initialize the info.elfinfo field.
884         (print_size_symbols): Add 'synth_count' parameter.  Use it to set
885         the is_synthetic parameter when calling print_symbol.
886         (print_symbols): Likewise.
887         (display_rel_file): Pass synth_count to printing function.
888         (display_archive): Break loop if the last archive displayed
889         matches the current archive.
890         * size.c (display_archive): Likewise.
891
892 2015-01-05  Nick Clifton  <nickc@redhat.com>
893
894         PR binutils/17531
895         * dwarf.c (alloc_num_debug_info_entries): New variable.
896         (process_debug_info): Set it.  Use it to avoid displaying
897         attributes for which there is no info.
898         (display_debug_abbrev): Check that the debug_info_entry index is
899         valid before using it.
900         (display_loc_list_dwo): Likewise.
901         (process_cu_tu_index): Add range check for an overlarge dw_sect
902         value.
903         (free_debug_memory): Reset alloc_num_debug_info_entries.
904         * readelf.c (slurp_ia64_unwind_table): Warn if the reloc could not
905         be indentified.
906         (dynamic_section_mips_val): Warn if the timestamp is invalid.
907         (print_mips_got_entry): Add a data_end parameter.  Warn if a read
908         would go beyond the end of the data, and return an error value.
909         (process_mips_specific): Do not read options from beyond the end
910         of the section.
911         Correct code to display optional data at the end of an option.
912         Warn if there are too many GOT symbols.
913         Update calls to print_mips_got_entry, and handle error returns.
914
915 2015-01-05  Daniel Klauer  <daniel.c.klauer@web.de>
916
917         PR binutils/17489
918         * doc/binutils.texi (dlltool): Correct description of --kill-at
919         option.
920
921 2015-01-01  Alan Modra  <amodra@gmail.com>
922
923         * version.c (print_version): Just print current year.
924
925 2015-01-01  Alan Modra  <amodra@gmail.com>
926
927         Update year range in copyright notice of all files.
928
929 For older changes see ChangeLog-2014
930 \f
931 Copyright (C) 2015 Free Software Foundation, Inc.
932
933 Copying and distribution of this file, with or without modification,
934 are permitted in any medium without royalty provided the copyright
935 notice and this notice are preserved.
936
937 Local Variables:
938 mode: change-log
939 left-margin: 8
940 fill-column: 74
941 version-control: never
942 End: