]> Git Repo - binutils.git/blobdiff - gold/ChangeLog
*** empty log message ***
[binutils.git] / gold / ChangeLog
index 020419a498751542c616eccc08652ec7090cafec..a43fa21fb7078f7868e3c487d9870ca1e971e6ca 100644 (file)
@@ -1,5 +1,135 @@
+2008-03-28  Ian Lance Taylor  <[email protected]>
+
+       * layout.cc (Layout::layout): If we see an input section with a
+       name that needs sorting, set the must_sort flag for the output
+       section.
+       (Layout::make_output_section): If the name of the output section
+       indicates that it might require sorting, set the may_sort flag.
+       * output.h (Output_section::may_sort_attached_input_sections): New
+       function.
+       (Output_section::set_may_sort_attached_input_sections): New
+       function.
+       (Output_section::must_sort_attached_input_sections): New
+       function.
+       (Output_section::set_must_sort_attached_input_sections): New
+       function.
+       (class Output_section): Declare Input_section_sort_entry.  Define
+       Input_section_sort_compare.  Declare
+       sort_attached_input_sections.  Add new fields:
+       may_sort_attached_input_sections_,
+       must_sort_attached_input_sections_,
+       attached_input_sections_are_sorted_.
+       * output.cc (Output_section::Output_section): Initialize new
+       fields.
+       (Output_section::add_input_section): Add an entry to
+       input_sections_ if may_sort or must_sort are true.
+       (Output_section::set_final_data_size): Call
+       sort_attached_input_sections if necessary.
+       (Output_section::Input_section_sort_entry): Define new class.
+       (Output_section::Input_section_sort_compare::operator()): New
+       function.
+       (Output_section::sort_attached_input_sections): New function.
+       * configure.ac: Check whether the compiler supports constructor
+       priorities.  Define a CONSTRUCTOR_PRIORITY automake conditional.
+       * testsuite/initpri1.c: New file.
+       * testsuite/Makefile.am (check_PROGRAMS): Add initpri1 if
+       CONSTRUCTOR_PRIORITY.
+       (initpri1_SOURCES, initpri1_DEPENDENCIES): New variables.
+       (initpri1_LDFLAGS): New variable.
+       * configure, Makefile.in, testsuite/Makefile.in: Rebuild.
+
+2008-03-27  Ian Lance Taylor  <[email protected]>
+
+       * common.cc (Sort_commons::operator): Correct sorting algorithm.
+       * testsuite/common_test_1.c: New file.
+       * testsuite/Makefile.am (check_PROGRAMS): Add common_test_1.
+       (common_test_1_SOURCES): New variable.
+       (common_test_1_DEPENDENCIES): New variable.
+       (common_test_1_LDFLAGS): New variable.
+
+       * symtab.cc (Symbol_table::add_from_object): Handle saw_undefined_
+       and commons_ correctly when NAME/VERSION does not override
+       NAME/NULL.
+       * testsuite/ver_test_6.c: New file.
+       * testsuite/Makefile.am (check_PROGRAMS): Add ver_test_6
+       (ver_test_6_SOURCES, ver_test_6_DEPENDENCIES): New variables.
+       (ver_test_6_LDFLAGS, ver_test_6_LDADD): New variables.
+
+2008-03-26  Ian Lance Taylor  <[email protected]>
+
+       * symtab.cc (Symbol_table::add_from_relobj): Don't set the version
+       of an undefined symbol from a version script.
+       * testsuite/Makefile.am (ver_test_5.so): New target.
+       (ver_test_5.o): New target.
+       (check_SCRIPTS): Add ver_test_5.sh.
+       (check_DATA): Add ver_test_5.syms.
+       (ver_test_5.syms): New target.
+       * testsuite/ver_test_5.cc: New file.
+       * testsuite/ver_test_5.script: New file.
+       * testsuite/ver_test_5.sh: New file.
+       * Makefile.in, testsuite/Makefile.in: Rebuild.
+
+       PR gold/5986
+       Fix problems building gold with gcc 4.3.0.
+       * gold.h (TEMPLATE_ATTRIBUTE_PRINTF_4): Define.
+       (gold_error_at_location, gold_warning_at_location): Use it.
+       * configure.ac: Check whether we can compile and use a template
+       function with a printf attribute.
+       * x86_64.cc (Target_x86_64::do_code_fill): Swap out a 32-bit value
+       when jumping over bytes.
+       * object.cc: Instantiate Object::read_section_data.
+       * debug.h: Include <cstring>
+       * dwarf_reader.cc: Include <algorithm>
+       * main.cc: Include <cstring>.
+       * options.cc: Include <cstring>.
+       * output.cc: Include <cstring>.
+       * script.cc: Include <cstring>.
+       * script.h: Include <string>.
+       * symtab.cc: Include <cstring> and <algorithm>.
+       * target-select.cc: Include <cstring>.
+       * version.cc: Include <string>.
+       * testsuite/testmain.cc: Include <cstdlib>.
+       * configure, config.in: Rebuild.
+
 2008-03-25  Ian Lance Taylor  <[email protected]>
 
+       * options.cc: Include "../bfd/bfdver.h".
+       (options::help): Print bug reporting address.
+
+       * version.cc (print_version): Adjust output for current value of
+       BFD_VERSION_STRING.
+
+       * NEWS: New file.
+
+       * options.cc (options::help): Print list of supported targets.
+       * target-select.h: Include <vector>.
+       (class Target_selector): Make machine_, size_, and is_big_endian_
+       fields const.  Add bfd_name_ and instantiated_target_ fields.
+       (Target_selector::Target_selector): Add bfd_name parameter.
+       (Target_selector::recognize): Make non-virtual, call
+       do_recognize.
+       (Target_selector::recognize_by_name): Make non-virtual, call
+       do_recognize_by_name.
+       (Target_selector::supported_names): New function.
+       (Target_selector::bfd_name): New function.
+       (Target_selector::do_instantiate_target): New pure virtual
+       function.
+       (Target_selector::do_recognize): New virtual function.
+       (Target_selector::do_recognize_by_name): New virtual function.
+       (Target_selector::instantiate_target): New private function.
+       (supported_target_names): Declare.
+       * target-select.cc (Target_selector::Target_selector): Update for
+       new parameter and fields.
+       (select_target_by_name): Check that the name matches before
+       calling recognize_by_name.
+       (supported_target_names): New function.
+       * i386.cc (class Target_selector_i386): Update Target_selector
+       constructor call.  Remove recognize and recognize_by_name.  Add
+       do_instantiate_target.
+       * x86_64.cc (class Target_selector_x86_64): Likewise.
+       * testsuite/testfile.cc (class Target_selector_test): Update for
+       changes to Target_selector.
+
        * README: Rewrite, with some notes on unsupported features.
 
 2008-03-24  Cary Coutant  <[email protected]>
        * symtab.cc (Symbol::init_fields): Replaced initialization
        of got_offset_ with got_offsets_.  Removed initialization
        of has_got_offset_
-       *symtab.h (Symbol::has_got_offset): Aded got_type parameter.
+       * symtab.h (Symbol::has_got_offset): Aded got_type parameter.
        (Symbol::got_offset): Likewise.
        (Symbol::set_got_offset): Likewise.
        (Symbol::has_tls_got_offset): Removed.
This page took 0.027476 seconds and 4 git commands to generate.