* fileread.cc: (File_read::View::~View): Use the new
[deliverable/binutils-gdb.git] / gold / ChangeLog
index cb3254933cd4dd2c776861af0c192dc9a3f2699f..56991ab65c5a6f1247cf704852d9bad08d876b98 100644 (file)
@@ -1,3 +1,169 @@
+2009-10-27  Mikolaj Zalewski  <mikolajz@google.com>
+
+       * fileread.cc: (File_read::View::~View): Use the new
+       data_ownership_ filed.
+       (File_read::~File_read): Dispose the new whole_file_view_.
+       (File_read::open): Mmap the whole file if needed.
+       (File_read::open): Use whole_file_view_ instead of contents_.
+       (File_read::find_view): Use whole_file_view_ if applicable.
+       (File_read::do_read): Use whole_file_view_ instead of contents_.
+       (File_read::make_view): Use whole_file_view_ instead of contents_,
+       update File_read::View::View call.
+       (File_read::find_or_make_view): Update File_read::View::View
+       call.
+       * fileread.h: (File_read::File_read): Initialize whole_file_view_,
+       remove contents_
+       (File_read::View::Data_ownership): New enum.
+       (File_read::View::View): Replace bool mapped_ with Data_ownership
+       argument.
+       (File_read::View::mapped_): Remove (replaced by data_ownership_).
+       (File_read::View::data_ownership_): New field.
+       (File_read::contents_): Remove (replaced by whole_file_view_).
+       (File_read::whole_file_view_): New field.
+       * options.h (class General_options): Add --keep-files-mapped.
+
+2009-10-27  Cary Coutant  <ccoutant@google.com>
+
+       * symtab.cc (add_from_pluginobj): Pass correct value for is_ordinary.
+       * testsuite/Makefile.am (plugin_test_5): New test case.
+       * testsuite/Makefile.in: Regenerate.
+
+2009-10-25  Doug Kwan  <dougkwan@google.com>
+
+       * object.h (Sized_relobj::View_size, Sized_relobj::Views): Change
+       from private to protected to allow access by child class.
+       (Sized_relobj::do_relocate_sections): New method declaration.
+       (Sized_relobj::relocate_sections): Virtualize.
+       * reloc.cc (Sized_relobj::do_relocate_sections): Rename from 
+       Sized_relobj::relocate_sections.  Instantiate template explicitly
+       for different target sizes and endianity.
+
+2009-10-24  Doug Kwan  <dougkwan@google.com>
+
+       * arm.cc (Arm_output_section, Arm_relobj): Forward class declarations.
+       (Arm_input_section::as_arm_input_section): New method.
+       (Arm_output_section): New class definition.
+       (Arm_output_section::create_stub_group,
+       Arm_output_section::group_sections): New method definitions.
+
+2009-10-22  Doug Kwan  <dougkwan@google.com>
+
+       * arm.cc (Arm_input_section): New class definition.
+       (Arm_input_section::init, Arm_input_section:do_write,
+       Arm_input_section::set_final_data_size,
+       Arm_input_section::do_reset_address_and_file_offset): New method
+       definitions.
+
+2009-10-21  Doug Kwan  <dougkwan@google.com>
+
+       * arm.cc (Stub_table, Arm_input_section): New forward class
+       declarations.
+       (Stub_table): New class defintion.
+       (Stub_table::add_reloc_stub, Stub_table::relocate_stubs
+       Stub_table::do_reset_address_and_file_offset, Stub_table::do_write):
+       New method definition.
+
+2009-10-21  Doug Kwan  <dougkwan@google.com>
+
+       * arm.cc: Update copyright comments.
+       (Target_arm): New forward class template declaration.
+       (Arm_address): New type.
+       (ARM_MAX_FWD_BRANCH_OFFSET, ARM_MAX_BWD_BRANCH_OFFSET,
+       THM_MAX_FWD_BRANCH_OFFSET, THM_MAX_BWD_BRANCH_OFFSET,
+       THM2_MAX_FWD_BRANCH_OFFSET, THM2_MAX_BWD_BRANCH_OFFSET): New
+       constants.
+       (Insn_template): Same.
+       (DEF_STUBS): New macro.
+       (Stub_type): New enum type.
+       (Stub_template): New class definition.
+       (Stub): Same.
+       (Reloc_stub): Same.
+       (Stub_factory): Same.
+       (Target_arm::Target_arm): Initialize may_use_blx_ and
+       should_force_pic_veneer_.
+       (Target_arm::may_use_blx, Target_arm::set_may_use_blx,
+       Target_arm::should_force_pic_veneer,
+       Target_arm::set_should_force_pic_veneer, Target_arm::using_thumb2,
+       Target_arm::using_thumb_only, Target_arm:;default_target): New
+       method defintions.
+       (Target_arm::may_use_blx_, Target_arm::should_force_pic_veneer_):
+       New data member declarations.
+       (Insn_template::size, Insn_template::alignment): New method defintions.
+       (Stub_template::Stub_template): New method definition.
+       (Reloc_stub::Key::name, Reloc_stub::stub_type_for_reloc,
+       Reloc_stub::do_fixed_endian_write, Reloc_stub::do_write): Same.
+       (Stub_factory::Stub_factory): New method definition.
+       * gold.h (string_hash): New template.
+       * output.h (Input_section_specifier::hash_value): Use
+       gold::string_hash.
+       (Input_section_specifier::string_hash): Remove.
+       * stringpool.cc (Stringpool_template::string_hash): Use
+       gold::string_hash.
+
+2009-10-20  Doug Kwan  <dougkwan@google.com>
+
+       * object.cc (Sized_relobj::do_finalize_local_symbols): Handle section
+       symbols of relaxed input sections.
+       * output.h (Output_section::find_relaxed_input_section): Make
+       method public.
+
+2009-10-16  Doug Kwan  <dougkwan@google.com>
+
+       * dynobj.cc (Versions::Versions): Initialize version_script_.
+       Only insert base version symbol definition for a shared object
+       if version script defines any version versions.
+       (Versions::define_base_version): New method definition.
+       (Versions::add_def): Check that base version is not needed.
+       (Versions::add_need): Define base version lazily.
+       * dynobj.h (Versions::define_base_version): New method declaration.
+       (Versions::needs_base_version_): New data member declaration.
+       * testsuite/Makefile.am (check_SCRIPTS): Add no_version_test.sh
+       (check_DATA): Add no_version_test.stdout.
+       (libno_version_test.so, no_version_test.o no_version_test.stdout):
+       New make rules.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/no_version_test.c: New file.
+       * testsuite/no_version_test.sh: Ditto.
+
+2009-10-16  Doug Kwan  <dougkwan@google.com>
+
+       * expression.cc (class Segment_start_expression): New class definition.
+       (Segment_start_expression::value): New method definition.
+       (script_exp_function_segment_start): Return a new
+       Segment_start_expression.
+       * gold/script-c.h (script_saw_segment_start_expression): New function
+       prototype.
+       * script-sections.cc (Script_sections::Script_sections): Initialize
+       SAW_SEGMENT_START_EXPRESSION_ to false.
+       (Script_sections::set_section_addresses): Use -Ttext, -Tdata
+       and -Tbbs options to specify section addresses if given in
+       command line and no SEGMENT_START expression is seen in a script.
+       * script-sections.h (Script_sections::saw_segment_start_expression,
+       Script_sections::set_saw_segment_start_expression): New method
+       definition.
+       (Script_sections::saw_segment_start_expression_): New data member
+       declaration.
+       * script.cc (script_saw_segment_start_expression): New function.
+       * yyscript.y (SEGMENT_START): Call script_saw_segment_start_expression.
+       * testsuite/Makefile.am (check_SCRIPTS): Add script_test_6.sh,
+       script_test_7.sh and script_test_8.sh.
+       (check_DATA): Add script_test_6.stdout, script_test_7.stdout and
+       script_test_8.stdout.
+       (MOSTLYCLEANFILES): Add script_test_6, script_test_7 and script_test_8.
+       (script_test_6, script_test_6.stdout, script_test_7,
+       script_test_7.stdout, script_test_8, script_test_8.stdout): New rules.
+       * Makefile.in: Regenerate.
+       * testsuite/script_test_6.sh: New file.
+       * testsuite/script_test_6.t: Same.
+       * testsuite/script_test_7.sh: Same.
+       * testsuite/script_test_7.t: Same.
+       * testsuite/script_test_8.sh: Same.
+
+2009-10-16  Doug Kwan  <dougkwan@google.com>
+
+       * output.cc (Output_segment::set_section_list_address): Cast
+       expressions to unsigned long long type to avoid format warnings.
+
 2009-10-15  Ian Lance Taylor  <iant@google.com>
 
        * script.cc (Script_options::add_symbol_assignment): Always add a
This page took 0.025854 seconds and 4 git commands to generate.