4 * objcopy.c (add_redefine_syms_file): Avoid symbol buffer
9 * MAINTAINERS: Update my email address.
13 * readelf.c (get_note_type): Handle NT_S390_HIGH_GPRS notes.
17 * Makefile.in: Regenerate.
18 * doc/Makefile.in: Regenerate.
19 * ar.c: Fix shadowed variable warnings.
21 * coffgrok.c: Likewise.
22 * configure: Likewise.
23 * dlltool.c: Likewise.
24 * dllwrap.c: Likewise.
27 * nlmconv.c: Likewise.
29 * objcopy.c: Likewise.
30 * objdump.c: Likewise.
32 * readelf.c: Likewise.
38 * sysdump.c: Likewise.
39 * sysinfo.y: Likewise.
40 * wrstabs.c: Likewise.
44 * addr2line.c (pretty_print): New variable.
45 (long_options): Add an entry for -p/--pretty-print.
46 (usage): Document -p/--pretty-print.
47 (translate_addresses): Handle pretty_print. Reindent.
48 (main): Handle option -p.
49 * doc/binutils.texi (addr2line): Document -p/--pretty-print.
50 * NEWS: Mention new feature.
54 * addr2line.c (translate_addresses): Display addresses
56 (with_addresses): New variable.
57 (long_options): Add option '-a'.
58 (usage): Add usage for option '-a'.
59 (main): Handle option '-a'.
60 * doc/binutils.texi (addr2line): Document option '-a'.
61 * NEWS: Mention new feature.
65 * dwarf.c (dwarf_select_sections_by_names): Handle pubtypes correctly.
66 (debug_displays): Remove duplicate entry for debug_pubtypes.
71 * readelf.c (get_machine_flags): Handle E_MIPS_MACH_OCTEON2 case.
76 * dwarf.c (do_debug_pubtypes): New variable.
77 (dwarf_select_sections_by_names): Handle .debug_pubtypes.
78 (dwarf_select_sections_by_letters): Add 't' for .debug_pubtype.
79 (dwarf_select_sections_all): Set do_debug_pubtypes.
80 (debug_displays): Add support for .debug_pubtypes.
81 * dwarf.h (do_debug_pubtypes): Export.
82 * objdump.c (usage): Add -wt or --dwarf=pubtypes.
83 * readelf.c (usage): Likewise.
84 (process_section_headers): Enable debug display if
85 do_debug_pubtypes is set.
86 * doc/binutils.texi: Document -wt/--dwarf=pubtypes option.
91 * dlltool.c (PAGE_SIZE): Delete.
92 (PAGE_MASK): Provide default definition based on COFF_PAGE_SIZE.
93 Check for DLLTOOL_DEFAULT_MX86_64 and DLLTOOL_DEFAULT_I386.
97 * readelf.c (get_machine_name, get_osabi_name): Handle more
102 * configure: Regenerate.
106 * readelf.c: Include xc16x.h.
107 (dump_relocations): Handle relocations for the xc16x target.
108 (get_machine_name): Accept EM_C166 for xc16x targets.
109 (is_32bit_abs_reloc): Add support for xc16c 32-bit absolute reloc.
110 (is_16bit_abs_reloc): Add support for xc16c 16-bit absolute reloc.
111 (is_none_reloc): Add support for xc16c null reloc.
115 * Makefile.am (syslex.o): Use $(NO_WERROR) not -Wno-error.
116 (sysinfo.o): Likewise.
117 * Makefile.in: Regenerate.
121 * arlex.l: Enable noinput, nounput flex options.
122 * syslex.l: Likewise.
127 * readelf.c (arm_attr_tag_CPU_arch): Add v7E-M.
131 * windmc.c (set_endianess): Use bfd_get_target_info.
132 * windres.c (set_endianess): Likewise.
133 (find_arch_match): Removed.
137 * po/id.po: Updated Indonesian translation.
141 * configure.in: Stop checking for fopen64 and stat64.
142 * strings.c (file_off, file_open, statbuf, file_stat): Remove.
143 (strings_file): Change file_off to file_ptr, file_open to fopen,
144 statbuf to struct stat and file_stat to stat.
145 (get_char): Change parameter type file_off * to file_ptr *.
146 (print_strings): Change parameter and variable `start' type file_off to
148 * configure: Regenerate.
149 * config.in: Regenerate.
153 * configure.in: Call ACX_LARGEFILE. Stop calling AC_PLUGINS,
154 AC_SYS_LARGEFILE and checking the Solaris largefile exception.
155 * aclocal.m4: Regenerate.
156 * configure: Regenerate.
160 * bucomm.c (get_file_size): Update comment for the error return value.
164 * readelf.c (slurp_hppa_unwind_table): Don't relocate address twice.
168 * dllwrap.c (is_leading_underscore): New variable.
169 (cpu_type): New enum type.
170 (which_cpu): New variable.
171 (usage): Add new options --no-leading-underscore
172 and --leading-underscore.
173 (long_options): Likewise.
174 (OPTION_NO_LEADING_UNDERSCORE): New define.
175 (OPTION_LEADING_UNDERSCORE): Likewise.
176 (main): Initialize which_host, pass new options
177 to dlltool, do underscoring dependent on
178 is_leading_underscore, and do '@12' decoration
183 * readelf.c (arm_attr_tag_VFP_arch): Add VFPv4 and VFPv4-D16.
187 * dlltool.c (leading_underscore): New local variable.
188 (asm_prefix): Interpret leading_underscore.
190 (add_excludes): Use leading_underscore for making
192 (gen_exp_file): Use leading_underscore for internal
194 (usage): Add display of --no-leading-underscore and
195 --leading-underscore option.
196 (OPTION_NO_LEADING_UNDERSCORE): New.
197 (OPTION_LEADING_UNDERSCORE): New.
198 (long_options): Add --no-leading-underscore and
199 --leading-underscore option.
200 (main): Handle new options.
201 * doc/binutils.text: Add documentation of the options
202 --no-leading-underscore and --leading-underscore.
206 * deflex.l: Allow '<' and '>' in ID names.
208 * defparse.y (EQUAL): New token constant.
209 (opt_import_name): New rule for emptry or '==' ID.
210 (expline): Add opt_import_name as last line element.
212 * dlltool.c (ifunct): New member its_name.
214 (append_import): Add its_name argument.
215 (defexports): Likewise.
216 (defimport): Likewise.
217 (scan_drectve_symbols): Adjust calls to def_exports.
218 (dump_def_info): Print new optinal import/export table
220 (generate_idata_ofile): Use its_name member.
221 (make_one_lib_file): Likewise.
222 (nfunc): Take its_name in account on sort.
223 * dlltool.h (def_exports): Add its_name as argument.
224 (def_import): Likewise.
225 * doc/binutils.texi: Add new def file syntax extension.
226 * deflex.l (EQUAL): Add rule for '=='.
227 * NEWS: Mention new feature.
231 * readelf.c (dynamic_info): Correct size of array.
235 * MAINTAINERS (BUILD SYSTEM, TESTSUITES): Remove myself.
240 * prdbg.c (tg_end_struct_type): Warning fix.
243 * dlltool.c (dll_name_list_append): Declare variable at start
245 (dll_name_list_count, dll_name-list_print): Likewise.
249 * MAINTAINERS: Add myself as m32r maintainer.
254 * Makefile.am (sysinfo.o, syslex.o): Place source file after all
255 command line switches.
256 * Makefile.in: Regenerate.
261 * dlltool.c (bfd_get_errmsg): New macro.
262 (scan_obj_file): Use it.
263 (make_one_lib_file): Use it.
265 (make_delay_head): Use it.
267 (gen_lib_file): Use it.
268 (identify_dll_for_implib): Use it.
269 (identify_search_archive): Use it.
273 * readelf.c (usage): Add mention of --debug-dump=frames-interp.
274 Wrap output to 80 columns.
275 * objdump.c (usage): Likewise.
276 * doc/binutils.texi (readelf): Add note about =frames-interp.
280 * addr2line.c (slurp_symtab): Don't use bfd_read_minisymbols.
284 * doc/binutils.texi (c++filt): Remove spurious description of
285 nonexistent --java command line switch for cxxfilt.
289 * readelf.c: Add support for RX target.
290 * MAINTAINERS: Add DJ and NickC as maintainers for RX.
294 * configure.in: Don't invoke configure.tgt on $enable_targets.
295 * configure: Regenerate.
300 * readelf.c (get_elf_section_flags): Allow SHN_BEFORE and
301 SHN_AFTER section link values in x86 binaries.
302 (process_section_headers): Likewise.
307 * readelf.c: Remove duplicate declaration of variable do_wide.
308 * dwarf.h: Add export of do_wide.
312 * dwarf.c (get_TAG_name): Add missing DWARF-3 and new DWARF-4 tags.
313 (get_FORM_name): Add new DWARF-4 forms.
314 (read_and_display_attr_value): Add DW_FORM_ref_sig8, DW_LANG_Python.
315 (get_AT_name): Add new DWARF-4 and GNU-specific attributes.
316 (process_debug_info): Add do_types parameter; change all callers.
317 Add support for .debug_types sections.
318 (display_debug_types): New function.
319 (debug_displays): Add .debug_types section.
320 * readelf.c (process_section_headers): Add .debug_types section.
321 (display_debug_section): Simplify call to streq.
325 * readelf.c (print_dynamic_symbol): Format entries as for
327 (process_symbol_table): Use -7s format string for visibility.
331 * objdump.c (disassemble_section): Use bfd_get_arch_size
332 instead of assuming that the address size is 32 bits.
336 * readelf.c (get_ppc_dynamic_type): Add TLSOPT.
337 (get_ppc64_dynamic_type): Likewise.
341 * po/es.po: Updated Spanish translation.
342 * po/vi.po: Updated Vietnamese translation.
346 * readelf.c (process_version_sections, process_symbol_table):
347 Use symbolic constants.
351 * po/binutils.pot: Updated by the Translation project.
355 * obcopy.c (copy_object): New parameter `input_arch', architecture
356 of input file, if not specified in input file itself; all callers
357 updated; `binary_architecture' hack removed.
358 (copy_archive, copy_file): New parameter `input_arch', for
360 (copy_main): Accept `-B' (`--binary-architecture') option also
361 for any arch-less input ifile format, not only `binary'; remove
362 bfd_external_binary_architecture hack; instead, add `input_arch'
363 to calls to `copy_file'.
364 * windres.c, windmc.c : Obsolete and useless external references
365 to `bfd_external_binary_architecture' or `bfd_external_machine'
367 * doc/binutils.texi: Mention that -B parameter can be used for any
368 input file type which does not have its own architecture.
372 Update sources to compile cleanly with -Wc++-compat:
373 * addr2line.c (slurp_symtab): Fix casts. Introduce variable
374 minisyms to avoid aliasing varning.
376 (normalize): Use name del instead of delete.
377 (display_target_list,display_info_table): Change loop counter
379 * bucomm.c: Add casts.
380 * debug.c: Update function to use new names.
381 (struct debug_baseclass): Rename member from virtual to
383 (struct debug_type_s, struct debug_field_s, struct
384 debug_baseclass_s, struct debug_method_s, struct
385 debug_method_variant_s, struct debug_type_s): Rename struct from
386 avoid name collision.
387 * debug.h: Use new struct names.
388 * dwarf.c: Add casts.
389 (free_debug_memory): Change loop counter variable a to int.
391 (enum ieee_var_kind): Move to top level.
392 (ieee_class_baseclass): Rename parameter virtual to is_virtual.
393 (ieee_class_method_var): Rename variable virtual to is_virtual.
395 * objcopy.c: Add casts.
396 (copy_archive): Rename variable delete to del.
397 * objdump.c: Add casts.
398 (dump_dwarf_section): Change loop counter variable i to int.
399 * prdbg.c: Add casts.
400 (pr_class_baseclass,tg_class_baseclass): Rename parameters virtual
402 * readelf.c: Add casts.
403 (struct ia64_unw_table_entry,struct hppa_unw_table_entry): Move to
406 * stabs.c (parse_stab_type, parse_stab_range_type,
407 (parse_stab_cpp_abbrev): Rename parameter from typename to
409 (parse_stab_baseclasses): Rename variable virtual to is_virtual.
410 * strings.c: Add casts.
411 * wrstabs.c (stab_class_baseclass): Rename parameter virtual to
417 readelf.c (get_elf_section_flags): Add support for SHF_EXCLUDE and
419 (process_section_headers): Warn about out of range sh_link
420 values. When displaying detailed section header information
421 annote the SHN_BEFORE and SHN_AFTER values.
425 * dwarf.c (byte_get_little_endian): Handle size of 3.
426 (byte_get_big_endian): Likewise.
427 * readelf.c (byte_put_little_endian): Likewise.
428 (byte_put_big_endian): Likewise.
429 (is_24bit_abs_reloc): New function.
430 (is_none_reloc): Formatting.
431 (apply_relocations): Use is_24bit_abs_reloc. Handle pj and xtensa
436 * readelf.c (is_none_reloc <EM_XTENSA_OLD>, is_none_reloc <EM_XTENSA>):
441 * dwarf.c (process_debug_info): Support section padding abbrev codes.
445 * po/binutils.pot: Regenerate.
449 * Makefile.am (sysdump.o): Depend on sysroff.c.
450 * Makefile.in: Regenerate.
454 * ieee.c (ieee_read_cxx_misc, ieee_read_cxx_class,
455 ieee_read_reference): Rename variables named class to cxxclass.
459 * BRANCHES: Add binutils-2_20-branch.
463 * NEWS: Add marker for 2.20.
467 * dlltool.c (delayimp_name): Add new global variable
468 (usage, long_options, main): Add new option "-y" / "--output-delaylib"
469 (struct mac): Add fields how_dljtab_size, how_dljtab_roff1,
470 how_dljtab_roff2, how_dljtab, trampoline.
471 (i386_dljtab): Add binary stub for x86 delay import.
472 (i386_trampoline): Add text assembly stub for x86 delay import.
473 (mtable): Add delay import data for M386 and MX86 only.
474 (make_delay_head): New function.
475 (make_one_lib_file): New arg delay creates delay-load import stub.
476 (gen_lib_file): New arg delay likewise.
477 (HOW_JTAB, HOW_JTAB_SIZE, HOW_JTAB_ROFF): New arg delay likewise.
478 (HOW_JTAB_ROFF2, HOW_JTAB_ROFF3): New macros for delay import.
479 (make_tail): Convert hard TABS embedded in strings to "\t" escapes.
480 * NEWS: Mention new feature. Also fix whitespace.
481 * doc/binutils.texi: Updated dlltool documentation.
485 * configure.com: Do not copy makefile.vms-in to makefile.vms
486 * makefile.vms-in: Renamed to...
487 * makefile.vms: ... this usual name as it is not processed anymore.
488 Remove WRITE_DEBUG_OBJS (unused) and reorder object files for
493 * Makefile.am (arparse.o, arlex.o, sysroff.o, defparse.o)
494 (deflex.o, nlmheaders.o, rcparse.o, mcparse.o): Supply correct
495 source file name for generated files which may be in $(srcdir).
496 * Makefile.in: Regenerate.
500 * version.c (print_version): Change to "Copyright 2009".
504 * makefile.vms-in: Remove unused VERSION variable. Remove unused
506 * configure.com: Ported to Itanium VMS. Create build.com DCL script.
510 * nlmconv.c (main): Rename variable new to new_name.
514 * Makefile.am (sysinfo$(EXEEXT_FOR_BUILD)): Replace
515 CFLAGS/LDFLAGS with CFLAGS_FOR_BUILD/LDFLAGS_FOR_BUILD.
516 (syslex.o): Likewise.
517 (sysinfo.o): Likewise.
518 (bin2c$(EXEEXT_FOR_BUILD)): Likewise.
519 * Makefile.in: Regenerated.
523 * doc/binutils.texi (--only-keep-debug): Relocate stray para here ...
524 (--subsystem): ... from here.
528 * objdump.c (find_symbol_for_address): Avoid costly call to
533 * Makefile.am (am__skiplex, am__skipyacc): New.
534 * Makefile.in: Regenerate.
538 * Makefile.am (syslex.o): Depend on sysinfo.h config.h.
539 * Makefile.in: Regenerate.
543 * Makefile.am (AM_CPPFLAGS): Renamed from ...
544 (INCLUDES): ... this.
545 (bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
546 (installcheck-local): Renamed from ...
547 (installcheck): ... this.
548 * Makefile.in: Regenerate.
550 * Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus, add no-dist and
552 (MKDEP, CLEANFILES): Remove now-unneeded variables.
553 (DEP, DEP1, dep.sed, dep, dep-in, dep-am): Remove.
554 (mkdep section): Remove.
555 (BUILT_SOURCES): New variable, list $(GENERATED_HFILES).
556 (EXTRA_ar_SOURCES): New, list $(CFILES).
557 (syslex.o): Depend on syslex.c.
558 (sysinfo.o): Depend on sysinfo.c.
559 (arparse.h, defparse.h, nlmheaders.h rcparse.h mcparse.h):
560 Remove dependencies, now tracked by automake.
561 (srconv.o): Depend on sysroff.c.
562 (objdump.o, arparse.o, arlex.o, sysroff.o, defparse.o, deflex.o)
563 (nlmheader.o, rcparse.o, mcparse.o, rclex.o, mclex.o, dlltool.o)
564 (rescoff.o, nlmconv.o): Rewrite using automake-style dependency
565 tracking rules; only list the dependency upon the primary source
566 file, but no included headers.
567 * Makefile.in: Regenerate.
569 * Makefile.am (install-pdf, install-pdf-recursive, install-html)
570 (install-html-recursive): Remove.
571 * Makefile.in: Regenerate.
572 * doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
573 (html__strip_dir, install-html, install-html-am): Remove.
574 * doc/Makefile.in: Regenerate.
576 * Makefile.in: Regenerate.
577 * aclocal.m4: Likewise.
578 * config.in: Likewise.
579 * configure: Likewise.
580 * doc/Makefile.in: Likewise.
584 * readelf.c (is_32bit_abs_reloc): Treat R_PARISC_SECREL32 as a
585 32-bit absolute reloc for the purposes of processing debug
590 * readelf.c (get_arm_section_type_name): Added support for
591 new sections headers.
596 * objcopy.c (strip_main): Check return from smart_rename.
597 (copy_main): Likewise.
602 * objdump.c (dump_section_header): Skip sections that we are
607 * readelf.c (guess_is_rela): Handle EM_L1OM.
608 (dump_relocations): Likewise.
609 (get_machine_name): Likewise.
610 (get_section_type_name): Likewise.
611 (get_elf_section_flags): Likewise.
612 (get_symbol_index_type): Likewise.
613 (is_32bit_abs_reloc): Likewise.
614 (is_32bit_pcrel_reloc): Likewise.
615 (is_64bit_abs_reloc): Likewise.
616 (is_64bit_pcrel_reloc): Likewise.
617 (is_none_reloc): Likewise.
621 * readelf.c (get_symbol_binding): For Linux targeted files return
622 UNIQUE for symbols with the STB_GNU_UNIQUE binding.
623 * doc/binutils.texi: Document the meaning of the 'u' symbol
624 binding in the output of nm and objdump --syms.
628 * NEWS: Mention --insn-width.
630 * objdump.c (insn_width): New.
631 (usage): Display --insn-width.
632 (option_values): Add OPTION_INSN_WIDTH.
633 (long_options): Add --insn-width.
634 (disassemble_bytes): Handle insn_width.
635 (main): Handle OPTION_INSN_WIDTH.
637 * doc/binutils.texi: Document --insn-width.
641 * dwarf.c (display_debug_lines): If do_debug_lines has not been
642 set then default to displaying raw .debug_line section contents.
646 Support unordered .debug_info references to .debug_ranges.
647 * dwarf.c (struct range_entry, range_entry_compar): New.
648 (display_debug_ranges): Remove variables last_offset, first, j,
649 seen_first_offset, use_debug_info and next. New variables
650 range_entries and range_entry_fill. Create the sorted copy
651 range_entries. Remove the FIXME error on detected unordered references.
652 * dwarf.h (debug_info <range_lists>): New comment.
657 * README: Document use of LDFLAGS="--static".
661 * Makefile.am: Run "make dep-am".
662 * Makefile.in: Regenerated.
666 * Makefile.am (dwarf.o): Refer to dwarf2.h, not elf/dwarf2.h.
667 * Makefile.in: Rebuild.
668 * dwarf.c: Include dwarf2.h, not elf/dwarf2.h.
672 * objdump.c (dump_dwarf_section): Handle .eh_frame like other dwarf
674 * dwarf.h (struct dwarf_section_display): Remove eh_frame field.
675 * dwarf.c (debug_displays): Adjust for removed field.
679 * dwarf.c (decode_location_expression): Handle DW_OP_stack_value
680 and DW_OP_implicit_value.
685 * rclex.c (handle_quotes): Do not complain about whitespace
686 separating quoted strings.
687 (rclex_string): Ignore whitespace when looking for a new opening
688 quote following a closing quote.
693 * bucomm.c (get_file_size): Return -1 on error.
695 * objcopy.c (copy_file): Report empty file.
699 * dwarf.c (display_debug_lines_raw): Include the name of the
700 section in warning message.
701 (struct debug_display): Enable reloc processing for .debug_line
702 and .debug_ranges sections.
704 * readelf.c: Add --relocated-dump command line option to dump the
705 relocated contents of a specified section.
706 (request_dump): New function.
707 (parse_args): Use it.
708 (dump_section_as_bytes): Add parameter to indicate whether the
709 contents should be relocated.
710 (target_specific_reloc_handling): Add code for a R_MN10300_16
711 reloc found after a R_MN10300_SYM_DIFF reloc.
712 (debug_apply_relocations): Rename to apply_relocations.
713 (get_section_contents): New function. Replaces common code found
714 in dump_section_as_strings and dump_section_as_bytes.
715 * doc/binutils.texi: Document new command line option.
716 * NEWS: Mention the new feature.
720 * readelf.c (target_specific_reloc_handling): New function:
721 Processes relocs in a target specific manner.
722 (debug_apply_relocations): Use the new function.
723 * dwarf.c (display_debug_loc): End the dump with a blank line.
724 (struct debug_display): Enable reloc processing for .debug_aranges
725 and .debug_loc sections.
729 * ar.c (usage): Do not use #ifdef inside _("...).
730 * nm.c (usage): Likewise.
735 * objdump.c (disassemble_bytes): Set the
736 USER_SPECIFIED_MACHINE_TYPE flag in the disassemble_info structure
737 if the user has invoked the -m switch.
738 * doc/binutils.texi: Document the additional behaviour of
739 objdump's -m switch for ARM targets.
743 * configure.in: Merge cegcc and mingw32ce target name changes from
748 * configure.in: Add arm*-*-cegcc* and arm*-*-mingw32ce* targets.
749 * configure: Regenerate.
754 * objdump.c (disassemble_bytes): Set the DISASSEMBLE_DATA bit in
755 the flags field of the disassemble_info structure if the -D switch
760 * NEWS: Mention new feature added to gprof.
764 * readelf.c (process_symbol_table): Set gnubuckets to NULL after
765 freeing it and before returning.
769 * readelf.c (process_symbol_table): Don't return early if
770 .hash/.gnu.hash is empty/unusable and not -D.
775 * winduni.c (wind_MultiByteToWideChar): Do not pass MB_PRECOMPOSED
776 to MultiByteToWideChar when using the CP_UTF8 or CO_UTF7 types.
780 * strings.c (main): Delay parsing of decimal digits.
784 * dep-in.sed: Don't use \n in replacement part of s command.
785 * Makefile.am (DEP1): LC_ALL for uniq.
787 * Makefile.in: Regenerate.
791 * MAINTAINERS: Add myself as Mach-O maintainer.
796 * doc/binutils.texi (nm): Correct -S description.
800 * po/da.po: Updated Danish translation.
804 * readelf.c (display_debug_section): Do not display debug sections
805 with the NOBITS section type.
809 * aclocal.m4: Include ../config/plugins.m4.
810 * configure.in: Use AC_PLUGINS.
811 * configure: Regenerate.
812 * Makefile.in: Regenerate.
813 * doc/Makefile.in: Regenerate.
817 * ar.c (main): Call bfd_plugin_set_program_name.
818 * nm.c (main): Call bfd_plugin_set_program_name.
822 * sysdump.c (tab): Use puts rather than two printfs.
826 * po/id.po: Updated Indonesian translation.
827 * po/binutils.pot: Updated template file.
831 * ar.c: Include plugin.h.
832 (main): Handle the --plugin option.
833 * nm.c: Include plugin.h.
834 (OPTION_PLUGIN): New.
835 (long_options): Add plugin.
836 (main): Handle OPTION_PLUGIN.
837 * NEWS: Mention the new feature.
838 * doc/binutils: Documement the new command line options.
839 * configure.in: Check for --enable-plugins.
840 * configure: Regenerate.
844 * dep-in.sed: Output one filename per line with all lines having
845 continuation backslash. Prefix first line with "A", following
847 * Makefile.am (DEP): Don't use dep.sed here.
848 (DEP1): Run $MKDEP on single files, use dep.sed here on dependencies,
850 * Makefile.in: Regenerate.
854 * makefile.vms-in: Fix CFLAGS, add addr2line.exe target.
856 * configure.com: Fix it: handle alloca and define TARGET in config.h.
860 * Makefile.am: Run "make dep-am".
861 * Makefile.in: Regenerate.
865 * objcopy.c (set_long_section_mode): Check input_bfd is coff
866 before accessing coff specific fields of bfd.
870 * MAINTAINERS: Add myself as PE/COFF co-maintainer.
874 * winduni.c (iconv_onechar): Only define when HAVE_ICONV
875 is defined, but not when __CYGWIN__ or _WIN32 are defined.
876 See wind_iconv_cp for call logic of this local funtion.
881 * winduni.c: Replace test of HAVE_ICONV_H with a test of
883 (iconv_onechar): Use ICONV_CONST instead of "const".
884 (wind_MultiByteToWideChar): Initialise local strings.
888 * readelf.c (dump_relocations): Display a relocation against an
889 ifunc symbol as if it were a function invocation.
890 (get_symbol_type): Handle STT_GNU_IFUNC.
894 * NEWS: Tweak verilog support description.
899 * readelf.c (slurp_ia64_unwind_table): Correct 64-bit unwind table
900 read, and merge with 32-bit case.
904 * NEWS: Mention verilog support added to bfd.
908 * objcopy.c (copy_object): Copy pe_opthdr before changing PE
913 * dwarf.c (process_extended_line_op): Add DW_LNE_set_discriminator.
914 Add missing newlines to HP extensions.
918 * objcopy.c (set_pe_subsystem): Replace efi-rom with sal-rtd.
919 * doc/binutils.texi: Likewise.
924 * objcopy.c: Include coff/i386.h and coff/pe.h.
925 (pe_file_alignment): New.
926 (pe_heap_commit): Likewise.
927 (pe_heap_reserve): Likewise.
928 (pe_image_base): Likewise.
929 (pe_section_alignment): Likewise.
930 (pe_stack_commit): Likewise.
931 (pe_stack_reserve): Likewise.
932 (pe_subsystem): Likewise.
933 (pe_major_subsystem_version): Likewise.
934 (pe_minor_subsystem_version): Likewise.
935 (set_pe_subsystem): Likewise.
936 (convert_efi_target): Likewise.
937 (command_line_switch): Add OPTION_FILE_ALIGNMENT,
938 OPTION_HEAP, OPTION_IMAGE_BASE, OPTION_SECTION_ALIGNMENT,
939 OPTION_STACK and OPTION_SUBSYSTEM.
940 (copy_options): Likewise.
941 (copy_usage): Add --file-alignment, --heap, --image-base,
942 --section-alignment, --stack and --subsystem.
943 (copy_object): Set up PE parameters.
944 (copy_main): Process Add OPTION_FILE_ALIGNMENT,
945 OPTION_HEAP, OPTION_IMAGE_BASE, OPTION_SECTION_ALIGNMENT,
946 OPTION_STACK and OPTION_SUBSYSTEM. Convert EFI target to
949 * NEWS: Mention --file-alignment, --heap, --image-base,
950 --section-alignment, --stack and --subsystem command line
953 * doc/binutils.texi: Document --file-alignment, --heap,
954 --image-base, --section-alignment, --stack and --subsystem
955 command line options for objcopy.
959 * MAINTAINERS: Add myself as Moxie port maintainer.
963 * objcopy.c (enum long_section_name_handling): New enum type.
964 (enum command_line_switch): Add OPTION_LONG_SECTION_NAMES.
965 (copy_options[]): Add entry for --long-section-names option.
966 (copy_usage): Document it.
967 (set_long_section_mode): New subroutine.
968 (copy_file): Call it.
969 (copy_main): Accept OPTION_LONG_SECTION_NAMES and parse arg.
970 * doc/binutils.texi: Update objcopy documentation with details
975 * dlltool.c (set_dll_name_from_def): Accept new second arg that
976 indicates if we are building DLL or EXE, and use it to add a
977 default suffix to the output filename when none is already present.
978 (def_name): Indicate we are building an EXE when calling it.
979 (def_library): Indicate we are building a DLL when calling it.
984 * doc/binutils.texi (strings): Document the -V alias for the
986 * strings.c (usage): Likewise.
991 * configure.in: Import Solaris specific largefile test from
993 * configure: Regenerate.
997 * MAINTAINERS: Add self.
1001 * dwarf.c (display_debug_ranges): Add the base address to the
1002 displayed values for 'Begin' and 'End'.
1006 * readelf.c (process_file_header): Don't report a corrupt string
1007 table index if it is zero.
1011 * dwarf.c (dwarf_regnames): Moved before frame_need_space.
1012 (dwarf_regnames_count): Likewise.
1013 (frame_need_space): Return int.
1014 (display_debug_frames): Check invalid registers.
1018 * readelf.c (debug_apply_relocations): Check relocations
1019 against STT_SECTION symbol.
1023 * readelf.c (debug_apply_relocations): Allow relocations
1024 against function symbols.
1028 * sysdep.h: Include alloca-conf.h instead of config.h and remove
1029 existing #if's handling alloca.
1030 * Makefile.am: Run "make dep-am".
1031 * Makefile.in: Regenerate.
1035 * configure.tgt: Extend AIX 5 behavior to AIX 6 and above.
1036 * configure.in: Likewise.
1037 * configure: Regenerate.
1042 * objcopy.c (copy_object): Clear HAS_RELOC when stripping all.
1046 * ar.c (deterministic): New global variable.
1047 (main): Recognize new 'D' option, which enables 'deterministic mode'.
1048 (usage): Document new 'D' option.
1049 (write_archive): Set BFD_DETERMINISTIC_OUTPUT in output archive's
1050 flags if deterministic mode was requested.
1051 * doc/binutils.texi (ar): Document deterministic mode ('D' option).
1056 * objcopy.c (filter_symbols): Properly handle common symbols
1057 in relocatable file.
1061 * po/es.po: Updated Spanish translation.
1065 * objdump.c (disassemble_section): If the computed next offset is
1066 not beyond the current offset then just continue to the end.
1070 * MAINTAINERS: Add myself as VMS maintainer.
1074 * readelf.c: Update formatting.
1078 * Makefile.am: Run "make dep-am".
1079 * Makefile.in: Regenerate.
1083 * objdump.c (disassemble_section): Mask address before sign extending.
1087 * ieee.c (parse_ieee_ty): Add support for undocumented 'v' type.
1088 (parse_ieee_bb): Set the filename if it has not already been
1093 * readelf.c (adjust_relative_path): New function.
1094 (struct archive_info): New type.
1095 (setup_archive): New function.
1096 (release_archive): New function.
1097 (setup_nested_archive): New function.
1098 (get_archive_member_name): New function.
1099 (get_archive_member_name_at): New function.
1100 (make_qualified_name): New function.
1101 (process_archive): Factor out code for reading archive index and
1102 long filename table to setup_archive. Add support for thin archives.
1106 * po/sk.po: Updated Slovak translation.
1110 * configure: Regenerate.
1114 * objdump.c (load_specific_debug_section): New function, from
1116 (load_debug_section): Use load_specific_debug_section.
1117 (dump_dwarf_section): Likewise.
1121 * readelf.c (parse_args): Select all sections explicitly for -w.
1125 * windres.c (set_endianess): Copy name without leading '-'.
1129 * NEWS: Mention feature match between objdump and readelf for dumping
1132 * doc/binutils.texi (objdump): Document -W/--dwarf improvments to
1135 * objdump.c (usage): Update documentation for -W/--dwarf.
1136 (enum option_values): Add OPTION_DWARF.
1137 (long_options): --dwarf can accept arguments.
1138 (dump_dwarf_section): Also check enabled field.
1139 (main): Option -W can accept arguments, code moved to
1140 dwarf.c and call dwarf_select_sections_all instead.
1141 * readelf.c (process_section_headers): Remove do_debug_lines_decoded.
1142 (parse_args): Move code to...
1143 * dwarf.c (dwarf_select_sections_by_letters,
1144 dwarf_select_sections_by_names): : ...here (new functions).
1145 (do_debug_lines_decoded): Remove and replaced by ...
1146 (FLAG_DEBUG_LINES_RAW, FLAG_DEBUG_LINES_DECODED): ... new macros.
1147 (display_debug_lines): Adjust for previous change.
1148 (dwarf_select_sections_all): New function.
1149 (debug_displays): Add initializer for enabled field.
1150 * dwarf.h (do_debug_lines_decoded): Remove.
1151 Add prototypes for the new functions.
1152 (struct dwarf_section_display): Add enabled field.
1156 * po/vi.po: Updated Vietnamese translation.
1160 * readelf.c (get_machine_flags): Handle E_MIPS_MACH_XLR.
1164 * NEWS: Move --as-needed change to ...
1169 * configure.in: AC_SUBST pdfdir.
1170 * Makefile.am: Add install-pdf, install-pdf-am,
1171 and install-pdf-recursive targets.
1172 * doc/Makefile.am: Define pdf__strip_dir. Add
1173 install-pdf and install-pdf-am targets.
1174 * po/Make-in: Add install-pdf target.
1175 * configure: Regenerate.
1176 * Makefile.in: Regenerate.
1177 * doc/Makefile.in: Regenerate.
1182 * NEWS: Mention --prefix=PREFIX and --prefix-strip=LEVEL.
1184 * doc/binutils.texi: Document --prefix=PREFIX and
1185 --prefix-strip=LEVEL.
1187 * objdump.c: Include "filenames.h".
1189 (prefix_strip): Likewise.
1190 (prefix_length): Likewise.
1191 (usage): Add --prefix=PREFIX and --prefix-strip=LEVEL.
1192 (option_values): Add OPTION_PREFIX and OPTION_PREFIX_STRIP.
1193 (long_options): Likewise.
1194 (show_line): Handle prefix and prefix_strip.
1195 (main): Handle OPTION_PREFIX and OPTION_PREFIX_STRIP.
1197 * readelf.c (PATH_MAX): Moved to ...
1202 * NEWS: Mention --as-needed change.
1207 * bucomm.c (bfd_nonfatal_message): Use bfd_get_archive_filename.
1208 (bfd_get_archive_filename): Constify param.
1209 * bucomm.h (bfd_get_archive_filename): Update prototype.
1210 * objcopy.c (RETURN_NONFATAL): Delete.
1211 (copy_unknown_object): Don't call bfd_get_archive_filename for
1212 bfd_nonfatal_message filename, instead just pass bfd.
1213 (copy_object): Likewise.
1214 (copy_archive, copy_file): Likewise. Expand RETURN_NONFATAL. On
1215 bfd_close errors, do not pass the bfd to bfd_nonfatal_message.
1216 (setup_bfd_headers): Fix error message.
1221 * objdump.c (disassemble_section): When the target uses signed
1222 addresses make sure that we compute signed values.
1226 * MAINTAINERS: Remove Thiemo Seufer's name from the list of MIPS
1232 * dlltool.c (xlate): When strip text after the @ sign, look for
1233 the last one not the first one.
1237 * configure.in (commonbfdlib): Delete.
1238 * configure: Regenerate.
1242 Cleanup code related to --identify option.
1244 * dlltool.c (file scope): Removed globals identify_ms,
1245 identify_member_contains_symname_result,
1246 identify_dll_name_list_head, and identify_dll_name_list_tail.
1247 Renamed existing typedef dll_name_list_type to
1248 dll_name_list_node_type.
1249 Added new typedefs dll_name_list_type, symname_search_data_type,
1250 and identify_data_type.
1251 (identify_append_dll_name_to_list): Renamed to...
1252 (dll_name_list_append): ...here. Changed signature to accept list
1253 argument rather than use global.
1254 (identify_count_dll_name_list): Renamed to...
1255 (dll_name_list_count): ...here. Changed signature to accept list
1256 argument rather than use global.
1257 (identify_print_dll_name_list): Renamed to...
1258 (dll_name_list_print): ...here. Changed signature to accept list
1259 argument rather than use global.
1260 (identify_free_dll_name_list): Renamed to...
1261 (dll_name_list_free_contents): ...here.
1262 (dll_name_list_free): New function.
1263 (dll_name_list_create): New function.
1264 (identify_process_section_p): Changed signature to accept
1265 ms_style_implib argument rather than use global.
1266 (identify_member_contains_symname): Expect incoming void * data to
1267 be symname_search_data_type.
1268 (identify_dll_for_implib): Use new functions dll_name_list_create
1269 and dll_name_list_free. Use new types symname_search_data_type
1270 and identify_data_type to communicate with search routines.
1271 (identify_search_section): Expect incoming void * data to be
1272 identify_data_type. Use its contents rather than global
1277 Add --identify-strict option. Handle ms-style implibs:
1279 * dlltool.c (file scope): Added new globals identify_ms and
1280 identify_strict. New typedef dll_name_list_type, and globals
1281 identify_dll_name_list_head and identify_dll_name_list_tail. Added
1282 new global identify_member_contains_symname_result.
1283 (identify_append_dll_name_to_list): New function.
1284 (identify_count_dll_name_list): New function.
1285 (identify_print_dll_name_list): New function.
1286 (identify_free_dll_name_list): New function.
1287 (identify_search_archive): Changed signature to take function
1288 pointer to operation to apply to each member, and data to pass on
1290 (identify_search_member): Changed signature to accept user data
1292 (identify_member_contains_symname): New function.
1293 (identify_dll_for_implib): Rewrite. Now determines whether implib
1294 is ms- or binutils- style, before searching sections for
1295 dllname. Allows multiple dllnames.
1296 (identify_process_section_p): Search alternate section for dllname
1297 when implib is ms-style.
1298 (identify_search_section): Add additional conditions to excludes
1299 candidate sections from consideration.
1300 (usage): Added --identify-strict.
1301 (long_options): Added --identify-strict.
1302 (main): Handle --identify-strict option.
1303 * doc/binutils.texi: Document --identify-strict option.
1304 * NEWS: Document --identify and --identify-strict options.
1309 * doc/binutils.texi (objdump -R): Note effect of -d or -D.
1313 * objdump.c (disassemble_section): Don't assume non-instruction
1314 data if object symbol at given address is in different section.
1318 * dlltool.c (create_for_pep): New.
1319 (flush_page): Use create_for_pep instead of using
1320 macro DLLTOOL_MX86_64 clause.
1321 (generate_idata_ofile): Likewise.
1322 (make_one_lib_file): Likewise.
1323 (make_head): Likewise.
1324 (make_tail): Likewise.
1325 (main): Initialize create_for_pep.
1329 * dlltool.c (use_nul_prefixed_import_tables): New.
1330 (make_head): Make prefix leading zero prefix element for
1331 idata$4 and idata$5 dependent to new flag.
1332 (usage): Add new option --use-nul-prefixed-import-tables.
1333 (OPTION_USE_NUL_PREFIXED_IMPORT_TABLES): New.
1334 (long_options): Add --use-nul-prefixed-import-tables.
1336 * doc/binutils.texi: Add new option documentation for
1337 --use-nul-prefixed-import-tables.
1338 * NEWS: Add new option.
1342 * windres.c (set_endianess): Get architecture name
1343 for internal target names like "pe-arm-wince-little".
1344 (find_arch_match): New helper.
1345 * ChangeLog: Reset it.
1346 * ChangeLog-2008: Moved old ChangeLog.
1348 For older changes see ChangeLog-2008
1350 Copyright (C) 2009 Free Software Foundation, Inc.
1352 Copying and distribution of this file, with or without modification,
1353 are permitted in any medium without royalty provided the copyright
1354 notice and this notice are preserved.
1360 version-control: never