4 * configure.in (ALL_LINGUAS): Add id.
5 * configure: Regenerate.
9 * windmc.c (res_alloc): Remove unnecessary cast.
10 * windres.c (res_alloc, reswr_alloc): Likewise.
14 * readelf.c: Tidy up code formatting.
18 * readelf.c (display_power_gnu_attribute): Decode
19 Tag_GNU_Power_ABI_Struct_Return.
23 * embedspu.sh: Pass -Wa,-noexecstack to $CC.
27 * dlltool.c (PAGE_SIZE): Make sure it has bfd_vma type.
28 (PAGE_MASK): Likewise.
29 (sfunc): Change to address size of bfd_vma for base-file.
30 (flush_page): Likewise.
31 (gen_exp_file): Likewise.
35 * readelf.c (process_section_headers): Do not cut the section names and
36 types if running with --wide.
40 * dwarf.c (display_debug_frames): Change text for uniformity.
41 (process_debug_info): Likewise.
42 (display_debug_aranges): Likewise. Indent address output.
43 (display_debug_pubnames): Print offset in hex.
48 * stabs.c (parse_stab_string): Parse and ignore =Y<name> strings
49 generated by the SUNPro C++ compiler.
54 * stabs.c (parse_stab_sun_builtin_type): Parse, but ignore SUN's
55 'b' and 'v' extensions.
60 * configure: Regenerate for new libtool.
63 * doc/Makefile.in: Ditto.
67 * objcopy.c (setup_section): Set elf_group_id.
71 * dwarf.c (size_of_encoded_value, get_encoded_value): Move up.
72 (decode_location_expression): Add section parameter. Handle
73 DW_OP_GNU_encoded_addr.
74 (read_and_display_attr_value): Update decode_location_expression call.
75 (display_debug_loc, display_debug_frames): Likewise.
80 * dwarf.c (print_dwarf_vma): Don't call printf without format string.
84 Suppress warnings on NONE relocations to discarded sections.
85 * readelf.c (is_none_reloc): New function.
86 (debug_apply_relocations): Ignore is_none_reloc() relocations.
90 Fix loading large elf64 binaries on 32bit hosts.
91 * configure.in: Call AC_SYS_LARGEFILE.
92 * config.in: Regenerate.
93 * configure: Regenerate.
101 * BRANCHES: Add 2.18 and 2.19 release branches.
105 * NEWS: Add a marker for the 2.19 features.
109 * readelf.c (load_specific_debug_section): New function, from
111 (load_debug_section): Use load_specific_debug_section.
112 (display_debug_section): Use load_specific_debug_section. Check for
113 multiple sections with the same name.
117 * objdump.c (dump_stabs): Add sections for Darwin.
121 * sysdep.h: Include "binary-io.h".
122 (O_BINARY): Don't define here.
123 * bin2c.c (O_BINARY, O_TEXT, SET_BINARY): Don't define here.
124 * strings.c: Likewise.
125 (main): Remove #ifdef SET_BINARY.
126 * Makefile.am: Run "make dep-am"
127 * Makefile.in: Regenerate.
131 * configure.in: Update a number of obsolete autoconf macros.
132 * configure: Regenerate.
133 * aclocal.m4: Regenerate.
137 * readelf.c (is_32bit_pcrel_reloc): Fix hppa entry.
138 (is_64bit_pcrel_reloc): New.
139 (debug_apply_relocations): Use it. Handle hppa pcrel bias.
144 * configure.in: Invoke AC_USE_SYSTEM_EXTENSIONS.
145 * Makefile.in: Regenerate.
146 * aclocal.m4: Regenerate.
147 * config.in: Regenerate.
148 * configure: Regenerate.
149 * doc/Makefile.in: Regenerate.
154 * rename.c (smart_rename): Punctuate error messages.
161 * readelf.c (get_mips_symbol_other): Handle STO_MIPS_PLT and
163 (slurp_rela_relocs, slurp_rel_relocs): Handle MIPS ELF64 here.
164 (dump_relocations, debug_apply_relocations): Don't handle it here.
165 (get_mips_dynamic_type): Handle DT_MIPS_PLTGOT and DT_MIPS_RWPLT.
166 (print_mips_pltgot_entry): New function.
167 (process_mips_specific): Dump the PLT GOT.
171 * readelf.c (is_64bit_abs_reloc): Return true for R_MIPS_64.
176 * objcopy.c (copy_object): Don't setup_bfd_headers when extract_symbol.
177 (setup_section): Don't zero vma and lma when extract_symbol.
178 (copy_section): Discard relocations when extract_symbol.
179 * doc/binutils.texi: Update --extract-symbol description.
183 * Makefile.am (POTFILES.in): Set LC_ALL=C.
184 * Makefile.in: Regenerate.
188 * readelf.c (get_osabi_name <ELFOSABI_AROS>): Change name.
192 * dwarf.c (dwarf_regnames_i386): Remove AVX registers.
193 (dwarf_regnames_x86_64): Likewise.
197 * dlltool.c, dwarf.c, objdump.c, readelf.c, resrc.c, resres.c,
198 windmc.c: Silence gcc warnings.
202 * readelf.c (print_vma): Typo fix.
207 * readelf.c (print_dec_vma, print_hex_vma): Delete.
208 (print_vma): Use BFD_VMA_FMT.
209 * size.c (size_number, rprint_number): Likewise.
213 * readelf.c (display_power_gnu_attribute): Display
214 single-precision hard float.
218 * readelf.c (get_note_type): Handle VSX notes.
222 * objdump.c (load_debug_section): Initialize section_is_compressed
224 * readelf.c (load_debug_section): Likewise.
230 * readelf.c (get_machine_flags): Deal with Blackfin specific
235 * readelf.c (get_machine_flags): Deal with Blackfin specific
240 * config.in: Add HAVE_ZLIB_H
241 * configure.in: Add test for libz and zlib.h
242 * configure: Regenerate.
243 * dwarf.c (debug_displays): Add .zdebug_* strings.
244 * dwarf.h (struct dwarf_section): Add fields uncompressed_namd
246 * objdump.c (load_debug_section): Call
247 bfd_uncompress_section_contents when loading a compressed
249 (dump_dwarf_section): Recognize compressed section name.
250 (mach_o_dwarf_sections): Rename as
251 mach_o_uncompressed_dwarf_sections.
252 (mach_o_compressed_dwarf_sections): New variable.
253 (generic_dwarf_section): Rename as
254 generic_uncompressed_dwarf_sections.
255 (generic_compressed_dwarf_sections): New variable.
256 (check_mach_o_dwarf): Save and restore
257 mach_o_compressed_dwarf_sections.
258 * readelf.c: Add #include for config.h and zlib.h
259 (process_section_headers): Recognize compressed section name.
260 (uncompress_section_contents): New function.
261 (load_debug_section): Call uncompress_section_contents when
262 loading a compressed section.
263 (display_debug_section): Recognize compressed section name.
267 * objdump.c (find_symbol_for_address): Prefer symbols in current
272 * ieee.c (write_ieee_debugging_info): Use bfd_make_section_with_flags.
273 * nlmconv.c (main, powerpc_build_stubs): Likewise.
274 * rescoff.c (write_coff_file): Likewise.
275 * resres.c (write_res_file): Likewise.
276 * windmc.c (windmc_write_bin): Likewise.
280 * readelf.c (guess_is_rela): Add EM_CR16_OLD.
281 (dump_relocations): Likewise.
282 (get_machine_name): Likewise.
283 (is_32bit_abs_reloc): Likewise.
287 * configure: Regenerate.
291 * readelf.c (guess_is_rela): Add EM_M32C_OLD.
292 (dump_relocations): Likewise.
293 (process_section_headers): Likewise.
294 (is_32bit_abs_reloc): Likewise.
295 (is_16bit_abs_reloc): Likewise.
300 * objdump.c (dump_bfd): If the -g option found no STABS or IEEE
301 debug information to display, try dumping DWARF information
303 * rddbg.c (read_debugging_info): Add a parameter to suppress the
304 display of a warning message when no debug information is found.
305 * budbg.h (read_debugging_info): Update prototype.
306 * objcopy.c (copy_object): Continue to allow read_debugging_info
307 to produce warning messages.
308 * doc/binutils.texi (--debugging): Document new behaviour of the
309 -g/--debugging option.
313 * MAINTAINERS: Remove myself as m68k maintainer.
317 * Makefile.in: Regenerate.
318 * doc/Makefile.in: Regenerate.
322 * embedspu.sh: Test for presence of ._ea by looking at section
323 table rather than looking at relocs. Correct toe_addr substitution.
327 * embedspu.sh: Take note of R_SPU_PPU32/64 relocs without a symbol,
328 and if present, put image in ".data.speelf". Put program handle
329 in ".data.spehandle".
333 * readelf.c (print_symbol): Add code to display non-printing
338 * doc/binutils.texi (strings): Add "unicode" to the documentation
339 of strings in order to make explicit that it supports this
344 * readelf.c (process_program_headers): Correct section in segment
351 * objdump.c (slurp_file): Open the file in binary mode.
352 * ar.c: Remove conditional definition of O_BINARY.
354 * rename.c: Likewise.
355 * strings.c: Likewise.
356 * sysdep.h: Add conditional definition of O_BINARY.
360 * aclocal.m4: Regenerate.
361 * configure: Regenerate.
366 * objcopy.c (stuct symlist): Rename to
367 is_specified_symbol_predicate_data.
368 (strip_specific_list): Rename to strip_specific_htab.
369 (strip_unneeded_list): Rename to strip_unneeded_htab.
370 (keep_specific_list): Rename to keep_specific_htab.
371 (localize_specific_list): Rename to localize_specific_htab.
372 (globalize_specific_list): Rename to globalize_specific_htab.
373 (keepglobal_specific_list): Rename to keepglobal_specific_htab.
374 (weaken_specific_list): Rename to weaken_specific_htab.
375 (eq_string): New function.
376 (create_symbol_htab): New function.
377 (create_symbol_htabs): New function.
378 (add_specific_symbol): Change to use hash tables.
379 (is_specified_symbol_predicate): New function.
380 (is_specified_symbol): Use hash table lookup.
381 (is_strip_section): Update to use new functions and hash tables.
382 (filter_symbols): Likewise.
383 (copy_object): Likewise.
384 (copy_section): Likewise.
385 (strip_main): Likewise.
386 (copy_main): Likewise.
391 * readelf.c (get_gnu_elf_note_type): Recognize NT_GNU_GOLD_VERSION.
395 * dwarf.c (display_debug_lines): Rename to
396 display_debug_lines_raw.
397 (display_debug_lines_decoded): New function. Displays the
398 interpreted contents of a .debug_line section.
399 (display_debug_lines): New function: Selects either a raw dump or
400 a decoded dump (or both) as requested by the user.
401 * dwarf.h (do_debug_lines_decoded): New extern.
402 * readelf.c: Add support for -wL or --debug-dump=decodedline
403 option to display the decoded contents of a .debug_line section.
404 * doc/binutils.texi: Document the new option.
405 * NEWS: Mention the new feature.
409 * dwarf.c: Remove trailing whitespace throughout file.
413 * po/sk.po: Updated Slovak translation.
417 * dwarf.c (dwarf_regnames_i386): Add AVX registers.
418 (dwarf_regnames_x86_64): Likewise.
422 Add support for thin archives.
423 * ar.c (make_thin_archive): New global flag.
424 (map_over_members): Deal with full pathnames in thin archives.
425 (usage, main): Add 'T' option for building thin archives.
426 (replace_members): Pass thin archive flag to ar_emul_append.
427 * arsup.c (ar_open): Initialize new flag.
428 * binemul.c (ar_emul_append): Add new parameter for
429 flattening nested archives.
430 (do_ar_emul_default_append): New function.
431 (ar_emul_default_append): Factored out recursive code.
432 * binutils/binemul.h (ar_emul_default_append): Add new parameter.
433 (struct bin_emulation_xfer_struct): New parameter for ar_append.
434 * dlltool.c (gen_lib_file): Initialize thin archive flag.
435 * emul_aix.c (ar_emul_aix_internal): Add new flatten
436 parameter, currently unimplemented.
438 * objcopy.c (copy_archive): Preserve thin archive flag.
439 * doc/binutils.texi: Update ar documentation.
440 * NEWS: Mention the new feature.
444 * readelf.c (process_mips_specific): Declare addr_size as int.
448 * readelf.c (print_mips_got_entry): New function.
449 (process_mips_specific): Print GOT information.
453 * aclocal.m4: Regenerate.
454 * configure: Likewise.
455 * Makefile.in: Likewise.
456 * doc/Makefile.in: Likewise.
460 * rcparse.y (resid): Allow control text to span multiple lines.
464 * readelf.c: Use %u throughout when printing sh_link or sh_info,
465 %lu when printing sh_addralign.
466 (process_version_sections): Use identical formats when printing
467 all offset and sh_link fields.
471 * Makefile.am: Run "make dep-am".
472 * Makefile.in: Regenerate.
473 * doc/Makefile.in: Regenerate.
474 * configure: Regenerate.
479 * readelf.c (SECTION_HEADER_INDEX, SECTION_HEADER_NUM): Delete.
480 Remove use throughout file.
481 (SECTION_HEADER): Likewise.
482 (dump_relocations): Don't adjust st_shndx for reserved range.
483 (process_file_header): Mask SHN_XINDEX to values seen in external
484 elf structs. Simplify valid section index tests.
485 (get_32bit_elf_symbols, get_64bit_elf_symbols): Mask SHN_XINDEX.
486 Map reserved st_shndx to internal form.
487 (process_section_groups): Test that group symbol st_shndx is in
488 range, not just non-zero. Delete reserved range check.
489 (get_symbol_index_type): Mask "type" to 16 bits when printing PRC,
494 * readelf.c (arm_attr_tag_VFP_arch): Add "VFPv3-D16".
498 * MAINTAINERS: Update my email address.
502 * dwarf.c (decode_location_expression): Handle
503 DW_OP_PGI_omp_thread_num.
507 * objdump.c (objdump_print_addr): Initialise "sym".
512 * ar.c (usage): Mention -t command line switch.
513 * doc/binutils.texi (ranlib): Document -t command line switch.
517 * objdump.c (objdump_print_addr): If displaying file offsets, show
518 the offset even if there are no symbols available.
519 (dump_section): Display nothing if none of the section is going to
520 be dumped. Display the file offset, if requested, of the location
521 from where the dump starts.
522 * doc/binutils.texi (objdump): Mention that dumping via the -s
523 switch is also affected by the -F option.
527 Re-apply this patch which was accidentally deleted:
530 * doc/binutils.texi: Use "Binutils Index" for index name.
534 * objdump.c (display_file_offsets): New variable.
535 (long_options): Add -F/--file-offsets.
536 (objdump_print_addr_with_sym): If displaying file offsets, print
537 the offset of the given address.
538 (disassemble_bytes): If displaying file offsets, tell the user how
539 many zeroes are skipped and the file offset of the point where
541 (disassemble_section): Only display the name of the section if
542 data is going to be dumped from it.
543 (main): Handle new option. Produce error messages if the start or
544 stop addresses do not make sense.
545 * doc/binutils.texi: Document the new feature.
546 * NEWS: Mention the new feature.
552 * strings.c (integer_arg): Delete function.
553 (string_min): Initialise to 4.
554 (main): Use strtoul to parse integer arguments.
555 Move check for an invalid string length to after all the arguments
557 (usage): Use indentation to indicate that -<n> is a another form
558 of the --bytes= command line option.
562 * dlltool.c (mcore_elf_cache_filename): Add a const qualifier to
564 (scan_obj_filename): Do not drop the const qualifier when calling
565 mcore_elf_cache_filename.
566 (struct fname_cache): Add const qualifier to filename field.
571 * strings.c (main): Set string_min to 4 if it is <= 0.
575 * objdump.c (main): Don't pass unadorned NULL to concat.
580 * configure: Regenerated.
584 * readelf.c (get_machine_flags): Handle Octeon.
588 * readelf.c (dump_relocations): Decode OpenVMS-specific sections.
589 (get_ia64_dynamic_type): Decode OpenVMS-specific tags.
590 (get_dynamic_type): Handle IA64-specific tags.
591 (get_ia64_section_type_name): Handle OpenVMS-specific sections.
592 (get_section_type_name): Handle OS-specific sections (and
593 particularly IA64 OpenVMS one).
594 (get_elf_section_flags): Makes flags static. Add entries for IA64 and
599 * dwarf.c (print_dwarf_vma): New function. Display the value of a
600 dwarf_vma type at a specified precision. Use mingw field type
601 specifier if necessary.
602 (display_debug_loc): Use dwarf_vma type for begin and end values.
603 Use print_dwarf_vma to display their values. Use byte_get_signed
604 in order to correctly detect the -1 escape value.
605 (display_debug_aranges): Likewise.
606 (display_debug_ranges): Likewise.
610 * dwarf.c (display_debug_loc): Correct test for base address
611 entry when 64-bit host dumping 32-bit object.
615 * MAINTAINERS: Remove myself as ix86 maintainer. Add for SPU.
620 * rclex.c (yylex): Also allow the hypen character.
624 * dwarf.c: Include "elf/common.h".
625 (eh_addr_size): Changed to int.
626 (dwarf_regnames_i386): New.
627 (dwarf_regnames_x86_64): Likewise.
628 (dwarf_regnames): Likewise.
629 (dwarf_regnames_count): Likewise.
630 (init_dwarf_regnames): Likewise.
632 (frame_display_row): Properly support different address size.
633 Call regname to get register name.
634 (display_debug_frames): Call regname to get register name.
635 Display DW_CFA_def_cfa_register as DW_CFA_def_cfa_register
636 instead of DW_CFA_def_cfa_reg.
638 * dwarf.h (init_dwarf_regnames): New.
640 * objdump.c: Include "elf-bfd.h".
641 (dump_dwarf): Call init_dwarf_regnames on ELF input.
643 * readelf.c (guess_is_rela): Change argument to int.
644 (parse_args): Remove the undocumented upper case options for
646 (process_file_header): Call init_dwarf_regnames.
650 * readelf.c (process_section_headers): Add m16c handler.
651 (is_16bit_abs_reloc): Recognize R_M32C_16.
655 * prdbg.c: Correct formatter style use.
656 * readelf.c: Likewise.
657 * strings.c: Likewise.
661 * po/ru.po: Updated Russian translation.
665 * MAINTAINERS: Update my email address.
669 * dwarf.c (process_debug_info): Include the CU offset and corrupt
670 version value when reporting unrecognised DWARF version numbers.
671 (load_debug_info): Remember a failed attempt to load and parse the
672 .debug_info section and do not repeat such attempts.
673 (display_debug_lines): Check the return value from load_debug_info
674 and return whilst displaying a warning message if the load failed.
675 (display_debug_loc): Likewise.
676 (display_debug_ranges): Likewise.
677 (DEBUG_INFO_UNAVAILABLE): Value stored in num_debug_info_entries
678 when the .debug_info section could not be loaded/parsed.
679 (process_debug_info): Display the length of the compilation unit
680 in hex, so that it corresponds with the offsets that will follow.
681 Tell the user if the length was 32-bit or 64-bit.
682 If a DIE abbreviation could not be found, tell the user the offset
684 (free_debug_memory): Do not attempt to free any entries in the
685 debug_information array if num_debug_info_entries is set to
686 DEBUG_INFO_UNAVAILABLE.
690 * readelf.c (is_64bit_abs_reloc): Handle R_S390_64.
695 * bucomm.c (list_supported_architectures): Free architecture list
697 * windres.c (set_endianess): Likewise.
698 * windmc.c (set_endianess): Likewise.
703 * binutils/rclex.c: (yylex): Add ':', '_', '\\', and '/' to post
704 characters for name tokens.
708 * prdbg.c (print_vma): Print as long long, if host supports it.
712 * dwarf.c (read_and_display_attr_value): Prefix values that are
713 displayed in hexadecimal with 0x.
714 For the DW_AT_import attribute display the abbreviation number and
715 tag of the imported DIE.
716 (process_debug_info): Warn about lengths that reserved by the
717 DWARF3 specification.
718 Provide more information when corrupted DIEs are detected.
719 Warn if DIE corruption makes the sibling level negative.
721 For older changes see ChangeLog-2007
727 version-control: never