3 * configure.com: Get version from configure.in of bfd.
4 * makefile.vms-in (DEBUG_OBJS): Add dwarf.obj.
5 (CFLAGS): Update flags.
10 * nm.c (filter_symbols): Only call memcpy when from != to.
15 * objdump.c (disassemble_bytes): Don't skip leading zeros when
16 end of section calculation overflows.
20 * MAINTAINERS: Take over from Anil Paranjpe as H8300 maintainer.
25 * configure.in (ALL_LINGUAS): Add id.
26 * configure: Regenerate.
30 * windmc.c (res_alloc): Remove unnecessary cast.
31 * windres.c (res_alloc, reswr_alloc): Likewise.
35 * readelf.c: Tidy up code formatting.
39 * readelf.c (display_power_gnu_attribute): Decode
40 Tag_GNU_Power_ABI_Struct_Return.
44 * embedspu.sh: Pass -Wa,-noexecstack to $CC.
48 * dlltool.c (PAGE_SIZE): Make sure it has bfd_vma type.
49 (PAGE_MASK): Likewise.
50 (sfunc): Change to address size of bfd_vma for base-file.
51 (flush_page): Likewise.
52 (gen_exp_file): Likewise.
56 * readelf.c (process_section_headers): Do not cut the section names and
57 types if running with --wide.
61 * dwarf.c (display_debug_frames): Change text for uniformity.
62 (process_debug_info): Likewise.
63 (display_debug_aranges): Likewise. Indent address output.
64 (display_debug_pubnames): Print offset in hex.
69 * stabs.c (parse_stab_string): Parse and ignore =Y<name> strings
70 generated by the SUNPro C++ compiler.
75 * stabs.c (parse_stab_sun_builtin_type): Parse, but ignore SUN's
76 'b' and 'v' extensions.
81 * configure: Regenerate for new libtool.
84 * doc/Makefile.in: Ditto.
88 * objcopy.c (setup_section): Set elf_group_id.
92 * dwarf.c (size_of_encoded_value, get_encoded_value): Move up.
93 (decode_location_expression): Add section parameter. Handle
94 DW_OP_GNU_encoded_addr.
95 (read_and_display_attr_value): Update decode_location_expression call.
96 (display_debug_loc, display_debug_frames): Likewise.
101 * dwarf.c (print_dwarf_vma): Don't call printf without format string.
105 Suppress warnings on NONE relocations to discarded sections.
106 * readelf.c (is_none_reloc): New function.
107 (debug_apply_relocations): Ignore is_none_reloc() relocations.
111 Fix loading large elf64 binaries on 32bit hosts.
112 * configure.in: Call AC_SYS_LARGEFILE.
113 * config.in: Regenerate.
114 * configure: Regenerate.
122 * BRANCHES: Add 2.18 and 2.19 release branches.
126 * NEWS: Add a marker for the 2.19 features.
130 * readelf.c (load_specific_debug_section): New function, from
132 (load_debug_section): Use load_specific_debug_section.
133 (display_debug_section): Use load_specific_debug_section. Check for
134 multiple sections with the same name.
138 * objdump.c (dump_stabs): Add sections for Darwin.
142 * sysdep.h: Include "binary-io.h".
143 (O_BINARY): Don't define here.
144 * bin2c.c (O_BINARY, O_TEXT, SET_BINARY): Don't define here.
145 * strings.c: Likewise.
146 (main): Remove #ifdef SET_BINARY.
147 * Makefile.am: Run "make dep-am"
148 * Makefile.in: Regenerate.
152 * configure.in: Update a number of obsolete autoconf macros.
153 * configure: Regenerate.
154 * aclocal.m4: Regenerate.
158 * readelf.c (is_32bit_pcrel_reloc): Fix hppa entry.
159 (is_64bit_pcrel_reloc): New.
160 (debug_apply_relocations): Use it. Handle hppa pcrel bias.
165 * configure.in: Invoke AC_USE_SYSTEM_EXTENSIONS.
166 * Makefile.in: Regenerate.
167 * aclocal.m4: Regenerate.
168 * config.in: Regenerate.
169 * configure: Regenerate.
170 * doc/Makefile.in: Regenerate.
175 * rename.c (smart_rename): Punctuate error messages.
182 * readelf.c (get_mips_symbol_other): Handle STO_MIPS_PLT and
184 (slurp_rela_relocs, slurp_rel_relocs): Handle MIPS ELF64 here.
185 (dump_relocations, debug_apply_relocations): Don't handle it here.
186 (get_mips_dynamic_type): Handle DT_MIPS_PLTGOT and DT_MIPS_RWPLT.
187 (print_mips_pltgot_entry): New function.
188 (process_mips_specific): Dump the PLT GOT.
192 * readelf.c (is_64bit_abs_reloc): Return true for R_MIPS_64.
197 * objcopy.c (copy_object): Don't setup_bfd_headers when extract_symbol.
198 (setup_section): Don't zero vma and lma when extract_symbol.
199 (copy_section): Discard relocations when extract_symbol.
200 * doc/binutils.texi: Update --extract-symbol description.
204 * Makefile.am (POTFILES.in): Set LC_ALL=C.
205 * Makefile.in: Regenerate.
209 * readelf.c (get_osabi_name <ELFOSABI_AROS>): Change name.
213 * dwarf.c (dwarf_regnames_i386): Remove AVX registers.
214 (dwarf_regnames_x86_64): Likewise.
218 * dlltool.c, dwarf.c, objdump.c, readelf.c, resrc.c, resres.c,
219 windmc.c: Silence gcc warnings.
223 * readelf.c (print_vma): Typo fix.
228 * readelf.c (print_dec_vma, print_hex_vma): Delete.
229 (print_vma): Use BFD_VMA_FMT.
230 * size.c (size_number, rprint_number): Likewise.
234 * readelf.c (display_power_gnu_attribute): Display
235 single-precision hard float.
239 * readelf.c (get_note_type): Handle VSX notes.
243 * objdump.c (load_debug_section): Initialize section_is_compressed
245 * readelf.c (load_debug_section): Likewise.
251 * readelf.c (get_machine_flags): Deal with Blackfin specific
256 * readelf.c (get_machine_flags): Deal with Blackfin specific
261 * config.in: Add HAVE_ZLIB_H
262 * configure.in: Add test for libz and zlib.h
263 * configure: Regenerate.
264 * dwarf.c (debug_displays): Add .zdebug_* strings.
265 * dwarf.h (struct dwarf_section): Add fields uncompressed_namd
267 * objdump.c (load_debug_section): Call
268 bfd_uncompress_section_contents when loading a compressed
270 (dump_dwarf_section): Recognize compressed section name.
271 (mach_o_dwarf_sections): Rename as
272 mach_o_uncompressed_dwarf_sections.
273 (mach_o_compressed_dwarf_sections): New variable.
274 (generic_dwarf_section): Rename as
275 generic_uncompressed_dwarf_sections.
276 (generic_compressed_dwarf_sections): New variable.
277 (check_mach_o_dwarf): Save and restore
278 mach_o_compressed_dwarf_sections.
279 * readelf.c: Add #include for config.h and zlib.h
280 (process_section_headers): Recognize compressed section name.
281 (uncompress_section_contents): New function.
282 (load_debug_section): Call uncompress_section_contents when
283 loading a compressed section.
284 (display_debug_section): Recognize compressed section name.
288 * objdump.c (find_symbol_for_address): Prefer symbols in current
293 * ieee.c (write_ieee_debugging_info): Use bfd_make_section_with_flags.
294 * nlmconv.c (main, powerpc_build_stubs): Likewise.
295 * rescoff.c (write_coff_file): Likewise.
296 * resres.c (write_res_file): Likewise.
297 * windmc.c (windmc_write_bin): Likewise.
301 * readelf.c (guess_is_rela): Add EM_CR16_OLD.
302 (dump_relocations): Likewise.
303 (get_machine_name): Likewise.
304 (is_32bit_abs_reloc): Likewise.
308 * configure: Regenerate.
312 * readelf.c (guess_is_rela): Add EM_M32C_OLD.
313 (dump_relocations): Likewise.
314 (process_section_headers): Likewise.
315 (is_32bit_abs_reloc): Likewise.
316 (is_16bit_abs_reloc): Likewise.
321 * objdump.c (dump_bfd): If the -g option found no STABS or IEEE
322 debug information to display, try dumping DWARF information
324 * rddbg.c (read_debugging_info): Add a parameter to suppress the
325 display of a warning message when no debug information is found.
326 * budbg.h (read_debugging_info): Update prototype.
327 * objcopy.c (copy_object): Continue to allow read_debugging_info
328 to produce warning messages.
329 * doc/binutils.texi (--debugging): Document new behaviour of the
330 -g/--debugging option.
334 * MAINTAINERS: Remove myself as m68k maintainer.
338 * Makefile.in: Regenerate.
339 * doc/Makefile.in: Regenerate.
343 * embedspu.sh: Test for presence of ._ea by looking at section
344 table rather than looking at relocs. Correct toe_addr substitution.
348 * embedspu.sh: Take note of R_SPU_PPU32/64 relocs without a symbol,
349 and if present, put image in ".data.speelf". Put program handle
350 in ".data.spehandle".
354 * readelf.c (print_symbol): Add code to display non-printing
359 * doc/binutils.texi (strings): Add "unicode" to the documentation
360 of strings in order to make explicit that it supports this
365 * readelf.c (process_program_headers): Correct section in segment
372 * objdump.c (slurp_file): Open the file in binary mode.
373 * ar.c: Remove conditional definition of O_BINARY.
375 * rename.c: Likewise.
376 * strings.c: Likewise.
377 * sysdep.h: Add conditional definition of O_BINARY.
381 * aclocal.m4: Regenerate.
382 * configure: Regenerate.
387 * objcopy.c (stuct symlist): Rename to
388 is_specified_symbol_predicate_data.
389 (strip_specific_list): Rename to strip_specific_htab.
390 (strip_unneeded_list): Rename to strip_unneeded_htab.
391 (keep_specific_list): Rename to keep_specific_htab.
392 (localize_specific_list): Rename to localize_specific_htab.
393 (globalize_specific_list): Rename to globalize_specific_htab.
394 (keepglobal_specific_list): Rename to keepglobal_specific_htab.
395 (weaken_specific_list): Rename to weaken_specific_htab.
396 (eq_string): New function.
397 (create_symbol_htab): New function.
398 (create_symbol_htabs): New function.
399 (add_specific_symbol): Change to use hash tables.
400 (is_specified_symbol_predicate): New function.
401 (is_specified_symbol): Use hash table lookup.
402 (is_strip_section): Update to use new functions and hash tables.
403 (filter_symbols): Likewise.
404 (copy_object): Likewise.
405 (copy_section): Likewise.
406 (strip_main): Likewise.
407 (copy_main): Likewise.
412 * readelf.c (get_gnu_elf_note_type): Recognize NT_GNU_GOLD_VERSION.
416 * dwarf.c (display_debug_lines): Rename to
417 display_debug_lines_raw.
418 (display_debug_lines_decoded): New function. Displays the
419 interpreted contents of a .debug_line section.
420 (display_debug_lines): New function: Selects either a raw dump or
421 a decoded dump (or both) as requested by the user.
422 * dwarf.h (do_debug_lines_decoded): New extern.
423 * readelf.c: Add support for -wL or --debug-dump=decodedline
424 option to display the decoded contents of a .debug_line section.
425 * doc/binutils.texi: Document the new option.
426 * NEWS: Mention the new feature.
430 * dwarf.c: Remove trailing whitespace throughout file.
434 * po/sk.po: Updated Slovak translation.
438 * dwarf.c (dwarf_regnames_i386): Add AVX registers.
439 (dwarf_regnames_x86_64): Likewise.
443 Add support for thin archives.
444 * ar.c (make_thin_archive): New global flag.
445 (map_over_members): Deal with full pathnames in thin archives.
446 (usage, main): Add 'T' option for building thin archives.
447 (replace_members): Pass thin archive flag to ar_emul_append.
448 * arsup.c (ar_open): Initialize new flag.
449 * binemul.c (ar_emul_append): Add new parameter for
450 flattening nested archives.
451 (do_ar_emul_default_append): New function.
452 (ar_emul_default_append): Factored out recursive code.
453 * binutils/binemul.h (ar_emul_default_append): Add new parameter.
454 (struct bin_emulation_xfer_struct): New parameter for ar_append.
455 * dlltool.c (gen_lib_file): Initialize thin archive flag.
456 * emul_aix.c (ar_emul_aix_internal): Add new flatten
457 parameter, currently unimplemented.
459 * objcopy.c (copy_archive): Preserve thin archive flag.
460 * doc/binutils.texi: Update ar documentation.
461 * NEWS: Mention the new feature.
465 * readelf.c (process_mips_specific): Declare addr_size as int.
469 * readelf.c (print_mips_got_entry): New function.
470 (process_mips_specific): Print GOT information.
474 * aclocal.m4: Regenerate.
475 * configure: Likewise.
476 * Makefile.in: Likewise.
477 * doc/Makefile.in: Likewise.
481 * rcparse.y (resid): Allow control text to span multiple lines.
485 * readelf.c: Use %u throughout when printing sh_link or sh_info,
486 %lu when printing sh_addralign.
487 (process_version_sections): Use identical formats when printing
488 all offset and sh_link fields.
492 * Makefile.am: Run "make dep-am".
493 * Makefile.in: Regenerate.
494 * doc/Makefile.in: Regenerate.
495 * configure: Regenerate.
500 * readelf.c (SECTION_HEADER_INDEX, SECTION_HEADER_NUM): Delete.
501 Remove use throughout file.
502 (SECTION_HEADER): Likewise.
503 (dump_relocations): Don't adjust st_shndx for reserved range.
504 (process_file_header): Mask SHN_XINDEX to values seen in external
505 elf structs. Simplify valid section index tests.
506 (get_32bit_elf_symbols, get_64bit_elf_symbols): Mask SHN_XINDEX.
507 Map reserved st_shndx to internal form.
508 (process_section_groups): Test that group symbol st_shndx is in
509 range, not just non-zero. Delete reserved range check.
510 (get_symbol_index_type): Mask "type" to 16 bits when printing PRC,
515 * readelf.c (arm_attr_tag_VFP_arch): Add "VFPv3-D16".
519 * MAINTAINERS: Update my email address.
523 * dwarf.c (decode_location_expression): Handle
524 DW_OP_PGI_omp_thread_num.
528 * objdump.c (objdump_print_addr): Initialise "sym".
533 * ar.c (usage): Mention -t command line switch.
534 * doc/binutils.texi (ranlib): Document -t command line switch.
538 * objdump.c (objdump_print_addr): If displaying file offsets, show
539 the offset even if there are no symbols available.
540 (dump_section): Display nothing if none of the section is going to
541 be dumped. Display the file offset, if requested, of the location
542 from where the dump starts.
543 * doc/binutils.texi (objdump): Mention that dumping via the -s
544 switch is also affected by the -F option.
548 Re-apply this patch which was accidentally deleted:
551 * doc/binutils.texi: Use "Binutils Index" for index name.
555 * objdump.c (display_file_offsets): New variable.
556 (long_options): Add -F/--file-offsets.
557 (objdump_print_addr_with_sym): If displaying file offsets, print
558 the offset of the given address.
559 (disassemble_bytes): If displaying file offsets, tell the user how
560 many zeroes are skipped and the file offset of the point where
562 (disassemble_section): Only display the name of the section if
563 data is going to be dumped from it.
564 (main): Handle new option. Produce error messages if the start or
565 stop addresses do not make sense.
566 * doc/binutils.texi: Document the new feature.
567 * NEWS: Mention the new feature.
573 * strings.c (integer_arg): Delete function.
574 (string_min): Initialise to 4.
575 (main): Use strtoul to parse integer arguments.
576 Move check for an invalid string length to after all the arguments
578 (usage): Use indentation to indicate that -<n> is a another form
579 of the --bytes= command line option.
583 * dlltool.c (mcore_elf_cache_filename): Add a const qualifier to
585 (scan_obj_filename): Do not drop the const qualifier when calling
586 mcore_elf_cache_filename.
587 (struct fname_cache): Add const qualifier to filename field.
592 * strings.c (main): Set string_min to 4 if it is <= 0.
596 * objdump.c (main): Don't pass unadorned NULL to concat.
601 * configure: Regenerated.
605 * readelf.c (get_machine_flags): Handle Octeon.
609 * readelf.c (dump_relocations): Decode OpenVMS-specific sections.
610 (get_ia64_dynamic_type): Decode OpenVMS-specific tags.
611 (get_dynamic_type): Handle IA64-specific tags.
612 (get_ia64_section_type_name): Handle OpenVMS-specific sections.
613 (get_section_type_name): Handle OS-specific sections (and
614 particularly IA64 OpenVMS one).
615 (get_elf_section_flags): Makes flags static. Add entries for IA64 and
620 * dwarf.c (print_dwarf_vma): New function. Display the value of a
621 dwarf_vma type at a specified precision. Use mingw field type
622 specifier if necessary.
623 (display_debug_loc): Use dwarf_vma type for begin and end values.
624 Use print_dwarf_vma to display their values. Use byte_get_signed
625 in order to correctly detect the -1 escape value.
626 (display_debug_aranges): Likewise.
627 (display_debug_ranges): Likewise.
631 * dwarf.c (display_debug_loc): Correct test for base address
632 entry when 64-bit host dumping 32-bit object.
636 * MAINTAINERS: Remove myself as ix86 maintainer. Add for SPU.
641 * rclex.c (yylex): Also allow the hypen character.
645 * dwarf.c: Include "elf/common.h".
646 (eh_addr_size): Changed to int.
647 (dwarf_regnames_i386): New.
648 (dwarf_regnames_x86_64): Likewise.
649 (dwarf_regnames): Likewise.
650 (dwarf_regnames_count): Likewise.
651 (init_dwarf_regnames): Likewise.
653 (frame_display_row): Properly support different address size.
654 Call regname to get register name.
655 (display_debug_frames): Call regname to get register name.
656 Display DW_CFA_def_cfa_register as DW_CFA_def_cfa_register
657 instead of DW_CFA_def_cfa_reg.
659 * dwarf.h (init_dwarf_regnames): New.
661 * objdump.c: Include "elf-bfd.h".
662 (dump_dwarf): Call init_dwarf_regnames on ELF input.
664 * readelf.c (guess_is_rela): Change argument to int.
665 (parse_args): Remove the undocumented upper case options for
667 (process_file_header): Call init_dwarf_regnames.
671 * readelf.c (process_section_headers): Add m16c handler.
672 (is_16bit_abs_reloc): Recognize R_M32C_16.
676 * prdbg.c: Correct formatter style use.
677 * readelf.c: Likewise.
678 * strings.c: Likewise.
682 * po/ru.po: Updated Russian translation.
686 * MAINTAINERS: Update my email address.
690 * dwarf.c (process_debug_info): Include the CU offset and corrupt
691 version value when reporting unrecognised DWARF version numbers.
692 (load_debug_info): Remember a failed attempt to load and parse the
693 .debug_info section and do not repeat such attempts.
694 (display_debug_lines): Check the return value from load_debug_info
695 and return whilst displaying a warning message if the load failed.
696 (display_debug_loc): Likewise.
697 (display_debug_ranges): Likewise.
698 (DEBUG_INFO_UNAVAILABLE): Value stored in num_debug_info_entries
699 when the .debug_info section could not be loaded/parsed.
700 (process_debug_info): Display the length of the compilation unit
701 in hex, so that it corresponds with the offsets that will follow.
702 Tell the user if the length was 32-bit or 64-bit.
703 If a DIE abbreviation could not be found, tell the user the offset
705 (free_debug_memory): Do not attempt to free any entries in the
706 debug_information array if num_debug_info_entries is set to
707 DEBUG_INFO_UNAVAILABLE.
711 * readelf.c (is_64bit_abs_reloc): Handle R_S390_64.
716 * bucomm.c (list_supported_architectures): Free architecture list
718 * windres.c (set_endianess): Likewise.
719 * windmc.c (set_endianess): Likewise.
724 * binutils/rclex.c: (yylex): Add ':', '_', '\\', and '/' to post
725 characters for name tokens.
729 * prdbg.c (print_vma): Print as long long, if host supports it.
733 * dwarf.c (read_and_display_attr_value): Prefix values that are
734 displayed in hexadecimal with 0x.
735 For the DW_AT_import attribute display the abbreviation number and
736 tag of the imported DIE.
737 (process_debug_info): Warn about lengths that reserved by the
738 DWARF3 specification.
739 Provide more information when corrupted DIEs are detected.
740 Warn if DIE corruption makes the sibling level negative.
742 For older changes see ChangeLog-2007
748 version-control: never