binutils 2.21.1 release?

Alan Modra amodra@gmail.com
Tue Feb 1 02:31:00 GMT 2011


Is a 2.21.1 release planned soon?

How do you feel about the following collection of backports?  This
brings non-target parts of 2.21 reasonably up to date with current
mainline, with the exception of gold.  Some of the patches don't do
much (formatting, refactoring) but the idea behind applying them is
simply to make it easier to apply later mainline patches on 2.21.
I've mostly avoided target-specific patches because I figure it's up
to target maintainers to push them as they see necessary.

The bug fixes I really want to see in a 2.21.1 release are my fixes to
ld script expression handling.

bfd/
	2011-01-22  Richard Sandiford  <rdsandiford@googlemail.com>
	* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Ignore
	common sections too.

	2011-01-14  Alan Modra  <amodra@gmail.com>
	* bfd.c (bfd_perror): Flush stdout before and stderr after printing
	error.
	(_bfd_default_error_handler): Likewise.
	* elf.c (print_segment_map): Likewise.
	* libbfd.c (warn_deprecated): Likewise.
	* som.c (som_sizeof_headers): No need to do so here.
	* coff-i860.c: Replace use of printf for error messages with
	_bfd_error_handler.
	* coff-ppc.c: Likewise.
	* coff-sh.c: Likewise.
	* elf32-bfin.c: Likewise.
	* elf32-dlx.c: Likewise.
	* elf32-mep.c: Likewise.
	* elf32-v850.c: Likewise.
	* mach-o.c: Likewise.
	* pef.c: Likewise.

	2010-12-24  Alan Modra  <amodra@gmail.com>
	* compress.c (decompress_contents): Style.
	(bfd_get_full_section_contents): Do not decompress directly into
	caller buffer or directly return cached section contents.
	Check malloc return for compressed_buffer.

	2010-12-13  Alan Modra  <amodra@gmail.com>
	* aoutx.h (aout_link_check_ar_symbols): Formatting.
	* cofflink.c (coff_link_check_ar_symbols): Likewise.
	* elflink.c (elf_link_add_archive_symbols): Likewise.
	* pdp11.c (aout_link_check_ar_symbols): Likewise.
	* xcofflink.c (xcoff_link_check_dynamic_ar_symbols,
	xcoff_link_check_dynamic_ar_symbols): Likewise.
	* aoutx.h (aout_link_check_archive_element): Simplify code dealing
	with add_archive_element substitute BFD.
	* cofflink.c (coff_link_check_archive_element): Likewise.
	* ecoff.c (ecoff_link_check_archive_element): Likewise.
	(ecoff_link_add_archive_symbols): Likewise.
	* linker.c (generic_link_check_archive_element): Likewise.
	* pdp11.c (aout_link_check_archive_element): Likewise.
	* vms-alpha.c (alpha_vms_link_add_archive_symbols): Likewise.
	* xcofflink.c (xcoff_link_check_archive_element): Likewise.
	* aoutx.h (aout_link_check_archive_element): Free symbols from old
	bfd if !keep_memory.
	* cofflink.c (coff_link_check_archive_element): Likewise.
	* pdp11.c (aout_link_check_archive_element): Likewise.
	* xcofflink.c (xcoff_link_check_archive_element): Likewise.

	2010-12-12  H.J. Lu  <hongjiu.lu@intel.com>
	* elflink.c (elf_link_add_archive_symbols): Remove subsbfd.

	2010-12-06  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
	PR ld/12288
	* plugin.c (message): Add putchar for the trailing `\n'.

	2010-12-04  Alan Modra  <amodra@gmail.com>
	PR ld/12277
	* elflink.c (elf_link_output_extsym): Set bfd_error on symbol
	and section errors.  Allow better translation of error messages.

	2010-11-24  Joel Brobecker  <brobecker@adacore.com>
	* Makefile.am (OPTIONAL_BACKENDS): Add rs6000-core.lo.
	(OPTIONAL_BACKENDS_CFILES): Add rs6000-core.c.
	* Makefile.in: Regenerate.

	2010-11-24  Alan Modra  <amodra@gmail.com>
	PR ld/12253
	* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct
	DW_EH_PE_datarel handling.  Truncate .eh_frame_hdr address to
	ptr_size.

	2010-11-08  Alan Modra  <amodra@gmail.com>
	* hash.c (bfd_hash_hash): Extract from..
	(bfd_hash_lookup): ..here.
	(bfd_hash_rename): New function.
	* section.c (bfd_rename_section): New function.
	* bfd-in.h (bfd_hash_rename): Declare.
	* bfd-in2.h: Regenerate.
	* elf.c (_bfd_elf_make_section_from_shdr): Rename input sections
	when compressing or decompressing.  Don't assert name match.
	* elf64-hppa.c (get_reloc_section): Don't assert name match.
	* elfxx-ia64.c (get_reloc_section): Likewise.

	2010-11-05  Joseph Myers  <joseph@codesourcery.com>
	* elf-attrs.c (_bfd_elf_merge_unknown_attribute_low,
	_bfd_elf_merge_unknown_attribute_list): Correct test for matching
	string attributes.

opcodes/
	2011-01-21  Dave Murphy  <davem@devkitpro.org>
	* ppc-opc.c (NON32, NO371): Remove PPC_OPCODE_PPCPS.

	2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
	* i386-gen.c (process_copyright): Update copyright to 2011.

binutils/
	2011-01-19  Maciej W. Rozycki  <macro@codesourcery.com>
	* readelf.c (process_object): Free dynamic_section after use.

	2011-01-18  H.J. Lu  <hongjiu.lu@intel.com>
	PR binutils/12408
	* readelf.c (process_archive): Free and reset dump_sects
	after processing each archive member.

	2011-01-11  Andreas Schwab  <schwab@redhat.com>
	* readelf.c (print_symbol): Handle symbol characters as unsigned.
	Whitespace fixes.

	2011-01-06  Vladimir Siminov  <sv@sw.ru>
	* bucomm.c (get_file_size): Check for negative sizes and issue a
	warning message if encountered.

	2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
	* version.c (print_version): Update copyright to 2011.

	2010-12-15  Kai Tietz  <kai.tietz@onevision.com>
	* dwarf.c (display_gdb_index): Fix printf types for
	used formatters.

	2010-12-03  Doug Evans  <dje@google.com>
	* dwarf.c: #include "bfd_stdint.h".
	(do_gdb_index): New global.
	(display_gdb_index): New function.
	(dwarf_select_sections_by_names) Add "gdb_index".
	(dwarf_select_sections_all): Set do_gdb_index.
	(debug_displays): Add .gdb_index.
	* dwarf.h (do_gdb_index): Declare.
	* objdump.c (usage): Add gdb_index.
	* readelf.c (usage): Add gdb_index.
	(process_section_headers): Process ".gdb_index".
	* doc/binutils.texi (readelf): Document gdb_index dump.
	(objdump): Ditto.

	2010-11-26  Alan Modra  <amodra@gmail.com>
	* dwarf.c (decode_location_expression, display_debug_frames): Move
	code handling DW_EH_PE_pcrel into..
	(get_encoded_value): ..here.

	2010-11-21  H.J. Lu  <hongjiu.lu@intel.com>
	PR binutils/12235
	* elfcomm.c: New.
	* elfcomm.h: Likewise.
	* Makefile.am (HFILES): Add elfcomm.h.
	(CFILES): Add elfcomm.c.
	(ELFLIBS): New.
	(readelf_SOURCES): Add $(ELFLIBS).
	(elfedit_SOURCES): Likewise.
	(objdump_SOURCES): Likewise.
	* Makefile.in: Regenerated.
	* dwarf.c: Include "elfcomm.h".
	(byte_get): Removed.
	(byte_get_little_endian): Likewise.
	(byte_get_big_endian): Likewise.
	(byte_get_signed): Likewise.
	(error): Likewise.
	(warn): Likewise.
	* dwarf.h (dwarf_vma): Defined with HOST_WIDEST_INT.
	(dwarf_size_type): Likewise.
	(byte_get): Removed.
	(byte_get_signed): Likewise.
	(byte_get_little_endian): Likewise.
	(byte_get_big_endian): Likewise.
	(error): Likewise.
	(warn): Likewise.
	* elfedit.c: Include "elfcomm.h".  Don't include "aout/ar.h".
	Call error () instead of non_fatal ().
	(streq): Removed.
	(strneq): Likewise.
	(const_strneq): Likewise.
	(non_fatal): Likewise.
	(BYTE_GET): Likewise.
	(BYTE_PUT): Likewise.
	(byte_get): Likewise.
	(byte_put): Likewise.
	(byte_get_little_endian): Likewise.
	(byte_get_big_endian): Likewise.
	(byte_put_little_endian): Likewise.
	(byte_put_big_endian): Likewise.
	(adjust_relative_path): Likewise.
	(archive_info): Likewise.
	(setup_archive): Likewise.
	(release_archive): Likewise.
	(setup_nested_archive): Likewise.
	(get_archive_member_name): Likewise.
	(get_archive_member_name_at): Likewise.
	(make_qualified_name): Likewise.
	* objdump.c: Include "elfcomm.h".
	* readelf.c: Include "elfcomm.h".  Don't include "aout/ar.h".
	(BYTE_GET): Removed.
	(BYTE_GET_SIGNED): Removed.
	(streq): Likewise.
	(strneq): Likewise.
	(const_strneq): Likewise.
	(byte_put): Likewise.
	(byte_put_little_endian): Likewise.
	(byte_put_big_endian): Likewise.
	(adjust_relative_path): Likewise.
	(archive_info): Likewise.
	(setup_archive): Likewise.
	(release_archive): Likewise.
	(setup_nested_archive): Likewise.
	(get_archive_member_name): Likewise.
	(get_archive_member_name_at): Likewise.
	(make_qualified_name): Likewise.

	2010-11-18  Alan Modra  <amodra@gmail.com>
	PR binutils/11742
	* readelf.c (get_archive_member_name): Formatting.  Properly
	handle full size ar_name.

	2010-11-17  Alan Modra  <amodra@gmail.com>
	* ar.c (print_contents): Don't internationalize strings without words.
	* dwarf.c (process_extended_line_op): Likewise.
	(process_debug_info): Likwise.
	(display_debug_lines_raw): Likewise.
	(display_debug_lines_decoded): Likewise.
	(display_debug_abbrev): Likewise.
	* readelf.c (process_file_header): Likewise.
	(GET_OP): Likewise.
	(decode_arm_unwind): Likewise.
	(process_mips_specific): Likewise.
	* resrc.c (run_cmd): Likewise.
	(rcparse_warning): Likewise.
	* objdump.c (dump_headers): Don't print "Pg".

	2010-11-08  Alan Modra  <amodra@gmail.com>
	* objcopy.c (copy_main): No need to rename sections when compressing
	or decompressing.

gas/
	2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
	* gas.c (parse_args): Update copyright to 2011.

	2010-12-16  Maciej W. Rozycki  <macro@codesourcery.com>
	* symbols.c (symbol_clone_if_forward_ref): Call tc_new_dot_label
	for new fake labels created off the dot special symbol.
	* config/tc-mips.h (tc_new_dot_label): New macro.
	(mips_record_label): New prototype.
	* config/tc-mips.c (my_getExpression): Remove MIPS16 fake label
	annotation.
	(s_cons, s_float_cons, s_gpword, s_gpdword): Only clear labels
	recorded once data expressions have been evaluated.
	(mips_define_label): Move code to record labels over to...
	(mips_record_label): ... this new function.
	* doc/internals.texi: Document tc_new_dot_label.

	2010-12-04  Maciej W. Rozycki  <macro@codesourcery.com>
	PR gas/12282
	* expr.c (expr_build_dot): Make a clone of the symbol to return if
	needed.

	2010-12-02  Richard Sandiford  <richard.sandiford@linaro.org>
	* symbols.c (S_FORCE_RELOC): Return true for indirect functions
	even if !strict.
	* expr.c (operand): Don't convert absolute symbols to constants
	if S_FORCE_RELOC is true.
	(expr): Only reduce subtractions between different symbols if
	S_FORCE_RELOC is false for both of them.
	* write.c (fixup_segment): Don't remove symbols if S_FORCE_RELOC
	is true for them, regardless of their segment.

	2010-12-01  Maciej W. Rozycki  <macro@codesourcery.com>
	* symbols.h (dot_symbol): New declaration.
	(dot_symbol_init): New prototype.
	* symbols.c (dot_symbol): New variable.
	(symbol_clone): Assert it's not dot_symbol being cloned.
	(dot_symbol_init): New function.
	(symbol_clone_if_forward_ref): Create a new temporary symbol
	when trying to clone dot_symbol.
	* expr.c (current_location): Refer to dot_symbol instead of
	making a new temporary symbol.
	* read.c (read_a_source_file): Update dot_symbol as we go.
	* as.c (main): Call dot_symbol_init.

	2010-12-01  Maciej W. Rozycki  <macro@codesourcery.com>
	* symbols.c (symbol_clone_if_forward_ref): Don't limit cloning
	to expr_section symbols; clone all equated symbols.  Clear
	sy_resolving of the cloned copy.
	* expr.c (operand): Only clone equated symbols on a final
	(i.e. non-equated) reference.

ld/
	2011-01-22  H.J. Lu  <hongjiu.lu@intel.com>
	* Makefile.am (CXX): Removed.
	* configure.in: Add AC_PROG_CXX.
	* Makefile.in: Regenerated.
	* configure: Likewise.

	2011-01-22  Richard Sandiford  <rdsandiford@googlemail.com>
	* plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's
	private data and GP size.

	2011-01-21  Alan Modra  <amodra@gmail.com>
	* ldexp.c (fold_binary): Set result section for arithmetic and
	logical operations to NULL when both operands are in same section.
	* ld.texinfo (Expression Section): Describe this.

	2011-01-14  Alan Modra  <amodra@gmail.com>
	* ldmain.c (main): Flush stdout before and stderr after printing
	message.
	* ldmisc.c (einfo): Similarly.
	* plugin.c (message): Likewise.
	* emultempl/ppc64elf.em: Likewise.
	* emultempl/xtensaelf.em: Likewise.
	* emulparams/elf32mcore.sh: Use einfo rather than printf.
	* emultempl/beos.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/pep.em: Likewise.

	2011-01-14  Alan Modra  <amodra@gmail.com>
	* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
	attempt to put non-alloc orphans before debug sections, just place
	them after .comment.

	2011-01-14  J. Park  <grassman@gmail.com>
	PR ld/12339
	* ldlang.c (sort_def_symbol): Handle bfd_link_hash_warning symbols.

	2011-01-14  Alan Modra  <amodra@gmail.com>
	* Makefile.am: Sort emulation rules.
	(eelf32am33lin.c): Delete.
	(ALL_EMULATION_SOURCES): Sort, add missing entries.
	(ALL_64_EMULATION_SOURCES): Likewise.
	* Makefile.in: Regenerate.

	2011-01-13  Alan Modra  <amodra@gmail.com>
	PR ld/12356
	* ld.texinfo (Miscellaneous Commands): Describe LD_FEATURE.
	(Expression Section): Update.
	* ld.h (ld_config_type): Add sane_expr.
	* ldgram.y (ifile_p1): Add LD_FEATURE.
	* ldlex.l (LD_FEATYRE): New.
	* ldemul.c (after_parse_default): Delete code handling ld_compatibility.
	* ldexp.h (struct ldexp_control): Delete uses_defined.
	* ldexp.c: Remove all uses of uses_defined.
	(fold_name): Test config.sane_expr rather than ld_compatibility.
	(exp_fold_tree_1): Likewise.  Adjust handling of assignments
	during first phase.
	* ldlang.h (ld_compatibility): Delete.
	(lang_ld_feature): Declare.
	* ldlang.c (ld_compatibility): Delete.
	(open_input_bfds): Only handle assignments for --defsym.
	(lang_ld_feature): New function.

	2011-01-13  Alan Modra  <amodra@gmail.com>
	PR ld/12356
	* ldexp.h (exp_assop): Delete.
	(exp_assign, exp_defsym): Declare.
	* ldexp.c (exp_assop): Make static, handle all assignment variations.
	(exp_assign, exp_defsym): New functions.
	(exp_provide): Use exp_assop.
	* ldgram.y (defsym_expr): Use exp_defsym.
	* ldctor.c, * ldgram.y, * ldlang.c, * mri.c, * emultempl/beos.em,
	* emultempl/pe.em, * emultempl/pep.em, * emultempl/spuelf.em,
	* emultempl/xtensaelf.em: Update exp_assop -> exp_assign.

	2011-01-12  Alan Modra  <amodra@gmail.com>
	PR ld/12380
	* ldexp.h (enum phase_enum): Comment.  Add exp_dataseg_done.
	* ldexp.c (fold_unary <DATA_SEGMENT_END>): Rearrange code.  Test
	for exp_dataseg_done rather than expld.phase == lang_final_phase_enum
	to detect when we've finished sizing sections.
	(fold_binary <DATA_SEGMENT_ALIGN>): Likewise.
	(fold_binary <DATA_SEGMENT_RELRO_END>): Likewise.  Also test
	that we are not inside an output section statement.
	* ldlang.c (lang_size_sections): Set exp_dataseg_done on exit if
	not exp_dataseg_relro_adjust or exp_dataseg_adjust.  Don't set
	lang_final_phase_enum here.
	(lang_process): Set lang_final_phase_enum here.

	2011-01-05  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12364
	* plugin.c (get_symbols): Check if owner_sec->owner is NULL
	before accessing its flags field.

	2011-01-01  H.J. Lu  <hongjiu.lu@intel.com>
	* ldver.c (ldversion): Update copyright to 2011.

	2010-12-20  Alan Modra  <amodra@gmail.com>
	* ld.texinfo (Expression Section): Describe treatment of numbers
	and absolute symbols.
	* ldemul.c (after_open_default): Look up __ld_compatibility.
	* ldexp.c (fold_name): Convert absolute symbols to numbers when
	inside output section definitions, or when __ld_compatibility >= 221.
	(exp_fold_tree_1): Convert numbers to absolute when not in output
	section definition and __ld_compatibility < 221.  Don't always
	convert values outside an output section definition to absolute.
	* ldexp.h (uses_defined): Comment.
	* ldlang.c (ld_compatibility): New variable.
	* ldlang.h (ld_compatibility): Declare.
	* emultempl/aix.em, * emultempl/armcoff.em, * emultempl/beos.em,
	* emultempl/elf32.em, * emultempl/genelf.em, * emultempl/lnk960.em,
	* emultempl/m68kcoff.em, * emultempl/mmo.em, * emultempl/pe.em,
	* emultempl/pep.em, * emultempl/sunos.em, * emultempl/z80.em: Call
	after_open_default from after_open function.

	2010-12-20  Alan Modra  <amodra@gmail.com>
	PR ld/12001
	Revert 2010-11-03 Nick Clifton
	* ldlang.c (ldlang_def_chain_list): Delete.
	(insert_defined, ldlang_add_def, lang_place_defineds): Delete.
	(lang_process): Don't call lang_place_defineds.
	(lang_add_assignment): Don't do anything special for --defsym.
	* ldexp.h (struct ldexp_control): Add uses_defined.
	(exp_fold_tree_no_dot): Declare.
	* ldexp.c (exp_fold_tree): Clear uses_defined.
	(exp_fold_tree_no_dot): Likewise.  Make global.
	(fold_name <DEFINED>): Set uses_defined.
	(exp_fold_tree_1 <etree_assign>): Define symbol during first phase
	even when the value being assigned isn't valid.
	* ldlang.c (open_input_bfds): Process assignment statements.
	(lang_process): Bump lang_statement_iteration.
	(scan_for_self_assignment): Formatting.
	(print_assignment): Style.

	2010-12-13  Alan Modra  <amodra@gmail.com>
	* ldlang.c (load_symbols): Correct last change.

	2010-12-12  H.J. Lu  <hongjiu.lu@intel.com>
	* ldlang.c (load_symbols): Optimize for add_archive_element.

	2010-12-06  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12288
	* plugin.c (message): Don't add the trailing `\n' for
	LDPL_ERROR.

	2010-12-06  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12288
	* testplug.c: Remove the trailing `\n' from TV_MESSAGE.

	2010-12-06  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
	PR ld/12288
	* plugin.c (message): Use putchar for the trailing `\n'.

	2010-12-06  H.J. Lu  <hongjiu.lu@intel.com>
		    Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
	PR ld/12289
	* ldmain.c (main): Don't call plugin_call_cleanup.
	* plugin.c (plugin_call_cleanup): Make it static.
	(message): Don't call plugin_call_cleanup.
	(plugin_load_plugins): Call xatexit with plugin_call_cleanup.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12289
	* plugin.c (message): Call plugin_call_cleanup on fatal
	error.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	* plugin.c (message): Add a space after `:' in error message.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	* plugin.c (asymbol_from_plugin_symbol): Add the trailing `\n'
	to einfo.
	(get_symbols): Likewise.
	(plugin_notice): Likewise.
	(plugin_multiple_definition): Likewise.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12288
	* plugin.c (message): Add the trailing `\n'.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	* ldfile.c (ldfile_open_file_search): Check maybe_archive instead
	of is_archive.
	* emultempl/aix.em: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/pep.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/vms.em: Likewise.
	* ldlang.c (new_afile): Set maybe_archive instead of is_archive..
	* ldlang.h (lang_input_statement_struct): Replace is_archive
	with maybe_archive.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	* plugin.c (asymbol_from_plugin_symbol): Properly convert LTO
	plugin visibility to ELF visibility.
	(is_visible_from_outside): Re-indent.

	2010-11-21  H.J. Lu  <hongjiu.lu@intel.com>
	* ldfile.c: Re-indent plugin code.
	* ldlang.c: Likewise.
	* ldmain.c: Likewise.
	* plugin.c: Likewise.

	2010-11-20  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12246
	* plugin.c (asymbol_from_plugin_symbol): Set alignment of
	common symbol to 1 for For ELF targets.

	2010-11-20  H.J. Lu  <hongjiu.lu@intel.com>
	PR ld/12247
	* lexsup.c (parse_args): Properly report loading plugin error.

binutils/testsuite/
	2010-11-08  Alan Modra  <amodra@gmail.com>
	* binutils-all/objdump.W: Adjust expected result for debug section
	rename.

gas/testsuite/
	2010-12-02  Richard Sandiford  <richard.sandiford@linaro.org>
	* gas/i386/ifunc-2.s, gas/i386/ifunc-2.l: New test.
	* gas/i386/ifunc-3.s, gas/i386/ifunc-3.d: Likeise.
	* gas/i386/i386.exp: Run them.

ld/testsuite/
	2010-12-20  Alan Modra  <amodra@gmail.com>
	PR ld/12001
	* ld-scripts/default-script2.d: Revert 2010-11-03 change.

	2010-12-05  H.J. Lu  <hongjiu.lu@intel.com>
	* ld-plugin/plugin-vis-1.d: Updated.

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list