+2009-12-11 Nick Clifton <nickc@redhat.com>
+
+ * archive.cc: Fix shadowed variable warnings.
+ * arm.cc: Likewise.
+ * compressed_output.cc: Likewise.
+ * compressed_output.h: Likewise.
+ * configure: Likewise.
+ * dwarf_reader.cc: Likewise.
+ * dynobj.cc: Likewise.
+ * dynobj.h: Likewise.
+ * ehframe.cc: Likewise.
+ * ehframe.h: Likewise.
+ * errors.cc: Likewise.
+ * expression.cc: Likewise.
+ * fileread.cc: Likewise.
+ * fileread.h: Likewise.
+ * freebsd.h: Likewise.
+ * i386.cc: Likewise.
+ * icf.cc: Likewise.
+ * incremental.h: Likewise.
+ * layout.cc: Likewise.
+ * layout.h: Likewise.
+ * mapfile.cc: Likewise.
+ * merge.cc: Likewise.
+ * merge.h: Likewise.
+ * object.cc: Likewise.
+ * object.h: Likewise.
+ * options.h: Likewise.
+ * output.cc: Likewise.
+ * output.h: Likewise.
+ * parameters.cc: Likewise.
+ * plugin.cc: Likewise.
+ * powerpc.cc: Likewise.
+ * reduced_debug_output.cc: Likewise.
+ * reduced_debug_output.h: Likewise.
+ * reloc.cc: Likewise.
+ * reloc.h: Likewise.
+ * resolve.cc: Likewise.
+ * script-sections.cc: Likewise.
+ * script.cc: Likewise.
+ * script.h: Likewise.
+ * sparc.cc: Likewise.
+ * symtab.cc: Likewise.
+ * symtab.h: Likewise.
+ * target-select.cc: Likewise.
+ * target-select.h: Likewise.
+ * token.h: Likewise.
+ * workqueue.cc: Likewise.
+ * workqueue.h: Likewise.
+ * x86_64.cc: Likewise.
+
+2009-12-10 Doug Kwan <dougkwan@google.com>
+
+ * arm.cc (attributes.h): New include.
+ (Arm_relobj::Arm_relobj): Initialize attributes_section_data_.
+ (Arm_relobj::~Arm_relobj): Delete object pointed by
+ attributes_section_data_.
+ (Arm_relobj::attributes_section_data): New method definition.
+ (Arm_relobj::attributes_section_data_): New data member declaration.
+ (Arm_dynobj::Arm_dynobj): Initialize attributes_section_data_.
+ (Arm_dynobj::~Arm_dynobj): Delete object pointed by
+ attributes_section_data_.
+ (Arm_dynobj::attributes_section_data): New method definition.
+ (Arm_dynobj::attributes_section_data_): New data member declaration.
+ (Target_arm::Target_arm): Initialize attributes_section_data_. Change
+ initialization value of may_use_blx_ to false.
+ (Target_arm::using_thumb2, Target_arm::using_thumb_only,
+ Target_arm::may_use_arm_nop, Target_arm::may_use_thumb2_nop): Use
+ object attributes to compute results instead of hard-coding.
+ (Target_arm::do_attribute_arg_type, Target_arm::do_attributes_order,
+ Target_arm::get_secondary_compatible_arch,
+ Target_arm::set_secondary_compatible_arch
+ Target_arm::tag_cpu_arch_combine, Target_arm::aeabi_enum_name,
+ Target_arm::tag_cpu_name_value, Target_arm::merge_object_attributes):
+ New method declarations.
+ (Target_arm::get_aeabi_object_attribute): New method definition.
+ (Target_arm::attributes_section_data_): New data member declaration.
+ (read_arm_attributes_section): New template definition.
+ (Arm_relobj::do_read_symbols): Read attributes section if it exists.
+ (Arm_dynobj::do_read_symbols): Ditto.
+ (Target_arm::do_finalize_sections): Merge attributes sections from
+ input. Check for BLX use after attributes section merging.
+ Fix __exidx_start and __exidx_end visibility. Create an
+ .ARM.attributes section if necessary.
+ (Target_arm::get_secondary_compatible_arch,
+ Target_arm::set_secondary_compatible_arch,
+ Target_arm::tag_cpu_arch_combine, Target_arm::aeabi_enum_name,
+ Target_arm::tag_cpu_name_value, Target_arm::merge_object_attributes,
+ Target_arm::do_attribute_arg_type, Target_arm::do_attributes_order):
+ New method definitions.
+
+2009-12-09 Ian Lance Taylor <iant@google.com>
+
+ * plugin.cc (Plugin::load): Don't cast from void* to a function
+ pointer.
+
+2009-12-09 Ian Lance Taylor <iant@google.com>
+
+ * dynobj.cc (Sized_dynobj::do_read_symbols): Clear version
+ information fields.
+
+2009-12-09 H.J. Lu <hongjiu.lu@intel.com>
+
+ * testsuite/Makefile.am (two_file_shared_1_pic_2_test_DEPENDENCIES):
+ Replace two_file_shared_1.so with two_file_shared_2.so.
+ * testsuite/Makefile.in: Regenerated.
+
+2009-12-08 Doug Kwan <dougkwan@google.com>
+
+ * Makefile.am (CCFILES): Add attributes.cc and int_encoding.cc.
+ (HFILES): Add attributes.h and int_encoding.h.
+ * Makefile.in: Regenerate.
+ * dwarf_reader.cc (read_unsigned_LEB_128, read_signed_LEB_128): Move
+ function definitions to int_encoding.cc
+ * dwarf_reader.h (read_unsigned_LEB_128, read_signed_LEB_128): Move
+ prototypes to int_encoding.h
+ * reduced_debug_output.cc (int_encoding.h): New include.
+ (write_unsigned_LEB_128, get_length_as_unsigned_LEB_128): Move
+ function definitions to int_encoding.cc
+ (insert_into_vector, read_from_pointer): Move template definitions to
+ int_encoding.h
+ * attributes.cc: New file.
+ * attributes.h: New file.
+ * int_encoding.cc: New file.
+ * int_encoding.h: New file.
+
+2009-12-07 Rafael Avila de Espindola <espindola@google.com>
+
+ PR gold/11055
+ * incremental-dump.cc (dump_incremental_inputs): New.
+ (main): Use dump_incremental_inputs.
+
+2009-12-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gold/10893
+ * i386.cc (Target_i386::Scan::globa): Use is_func instead of
+ checking elfcpp::STT_FUNC.
+ (Target_i386::Relocate::relocate): Likewise.
+ * x86_64.cc (Target_x86_64::Scan::global): Likewise.
+
+ * symtab.cc (Symbol_table::sized_write_symbol): Turn IFUNC
+ symbols from shared libraries into normal FUNC symbols.
+
+ * symtab.h (Symbol): Add is_func and use it.
+
+2009-12-05 Doug Kwan <dougkwan@google.com>
+
+ * arm.cc (Target_arm::arm_info): Initialize new fields
+ attributes_section and attributes_vendor.
+ * i386.cc (Target_i386::i386_info): Same.
+ * object.cc (Sized_relobj::do_layout): Skip attribute section.
+ * gold/powerpc.cc (Target_powerpc::powerpc_info): Initialize new
+ fields attributes_section and attributes_vendor.
+ * sparc.cc (Target_sparc::sparc_info): Same.
+ * target.h (Target::attributes_section, Target::attributes_vendor,
+ Target::is_attributes_section, Target::attribute_arg_type,
+ Target::attributes_order): New method definitions.
+ (Target::Target_info::attributes_section,
+ Target::Target_info::attributes_vendor): New fields.
+ (Target::do_attribute_arg_type, Target::do_attributes_order): New
+ virtual method definitions.
+ * x86_64.cc (Target_x86_64::x86_64_info): Initialize new fields
+ attributes_section and attributes_vendor.
+ * testsuite/testfile.cc (Target_test::test_target_info): Same.
+
+2009-12-05 Doug Kwan <dougkwan@google.com>
+
+ * arm.cc: Update comments about interworking and stub generation.
+ (Target_arm::Relocate::reloc_is_non_pic): Update list of relocations
+ considered as non-PIC.
+ (Arm_relocate_functions::base_abs): Fix formatting.
+ (Arm_relocate_functions::got_prel): Fix comment. Change interface
+ of function to use GOT entry address instead of offset.
+ (Target_arm::Scan::global): Issue an error if a symbol would need a
+ PLT does not get one because it is untyped. Remove code to create
+ dynamic symbols for relative branches.
+ (Target_arm::Relocate::relocate: Use 0 instead of false since function
+ takes unsigned integer instead of boolean.
+
+2009-12-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * testsuite/Makefile.am (constructor_test_LDADD): New. Empty.
+ (two_file_test_LDADD): Likewise.
+ (common_test_1_LDADD): Likewise.
+ (exception_test_LDADD) Likewise.
+ (weak_test_LDADD): Likewise.
+ (many_sections_test_LDADD): Likewise.
+ (initpri1_LDADD): Likewise.
+ (script_test_1_LDADD): Likewise.
+ (script_test_2_LDADD): Likewise.
+ (justsyms_LDADD): Likewise.
+ (binary_test_LDADD): Likewise.
+ (large_LDADD): Likewise.
+ * testsuite/Makefile.in: Regenerated.
+
+2009-12-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * resolve.cc (symbol_to_bits): Treat STB_GNU_UNIQUE as STB_GLOBAL.
+ (Symbol_table::override_with_special): Likewise.
+ (Symbol_table::add_from_object): Likewise.
+
+2009-12-04 Rafael Avila de Espindola <espindola@google.com>
+
+ * incremental.cc (Incremental_inputs::sized_create_inputs_section_data):
+ Don't set the data_offset twice.
+
+2009-12-04 Rafael Avila de Espindola <espindola@google.com>
+
+ * testsuite/Makefile.in: Regenerate.
+
+2009-12-03 Doug Kwan <dougkwan@google.com>
+
+ * arm.cc: Remove comment about missing .ARM.exidx section symbols.
+ (Target_arm::do_finalize_sections): Add parameter for symbol table
+ pointer. Add __exidx_start and __exidx_end symbols as appropriate.
+ * i386.cc (Target_i386::do_finalize_sections): Add an additional
+ parameter for symbol table pointer.
+ * layout.cc (Layout::finalize): Call Target::finalize_sections with
+ an additional parameter for a pointer to symbol table.
+ * powerpc.cc (Target_powerpc::do_finalize_sections): Add an additional
+ parameter for a symbol table pointer.
+ * sparc.cc (Target_sparc::do_finalize_sections): Ditto.
+ * target.h (Target::finalize_sections, Target::do_finalize_sections):
+ Ditto.
+ * x86_64.cc (Target_x86_64::do_finalize_sections): Add an additional
+ parameter for a symbol table pointer.
+
+2009-12-03 Rafael Avila de Espindola <espindola@google.com>
+
+ * incremental.cc (Incremental_inputs_header)
+ (Incremental_inputs_header_write, Incremental_inputs_entry)
+ (Incremental_inputs_entry_write): Move ...
+ * incremental.h (Incremental_inputs_header)
+ (Incremental_inputs_header_write, Incremental_inputs_entry)
+ (Incremental_inputs_entry_write): here.
+
+2009-12-02 Rafael Avila de Espindola <espindola@google.com>
+
+ * incremental.cc (make_sized_incremental_binary): Set the target.
+ Error if it is incompatible.
+ * output.h (Output_file): Add filename method.
+
+2009-12-02 Rafael Avila de Espindola <espindola@google.com>
+
+ * incremental.cc (Incremental_inputs_entry): Remove unused argument
+ from the get_* methods.
+
+2009-12-02 Rafael Avila de Espindola <espindola@google.com>
+
+ * incremental-dump.cc (main): Check that the offeset of a script is 0.
+ * incremental.cc (Incremental_inputs::sized_create_inputs_section_data):
+ Write 0 for the data_offset of scripts.
+
2009-12-02 Rafael Avila de Espindola <espindola@google.com>
* testsuite/Makefile.am: Add the incremental_test.sh test.
bit instead of a flag indicating that the thumb-bit is used. Adjust
calls to methods in Arm_relocate_functions for this change.
-2009-11-08 Ian Lance Taylor <ian@airs.com>
+2009-11-08 Ian Lance Taylor <iant@google.com>
PR 10925
* reloc.cc: Instantiate