Line 1... |
Line 1... |
|
2011-06-09 Ian Lance Taylor
|
|
|
|
* script-sections.cc
|
|
(Orphan_output_section::set_section_addresses): For a relocatable
|
|
link set address to 0.
|
|
|
|
2011-06-09 Cary Coutant
|
|
|
|
PR gold/12804
|
|
* gold/gold.cc (queue_initial_tasks): Warn if --incremental is
|
|
used with --compress-debug-sections.
|
|
* gold/object.cc (Sized_relobj_file::do_layout): Report
|
|
uncompressed size of compressed input sections.
|
|
|
|
2011-06-08 Cary Coutant
|
|
|
|
PR gold/12804
|
|
* testsuite/two_file_test_2_v1.cc: Change initialization of
|
|
v2 to keep it in .data.
|
|
|
|
2011-06-07 Cary Coutant
|
|
|
|
* common.cc (Symbol_table::do_allocate_commons_list): Call
|
|
gold_fallback.
|
|
* errors.cc (Errors::fatal): Adjust call to gold_exit.
|
|
(Errors::fallback): New function.
|
|
(gold_fallback): New function.
|
|
* errors.h (Errors::fallback): New function.
|
|
* gold.cc (gold_exit): Change status parameter to enum; adjust
|
|
all callers.
|
|
(queue_initial_tasks): Call gold_fallback.
|
|
* gold.h: Include cstdlib.
|
|
(Exit_status): New enum type.
|
|
(gold_exit): Change status parameter to enum.
|
|
(gold_fallback): New function.
|
|
* layout.cc (Layout::set_section_offsets): Call gold_fallback.
|
|
(Layout::create_symtab_sections): Likewise.
|
|
(Layout::create_shdrs): Likewise.
|
|
* main.cc (main): Adjust call to gold_exit.
|
|
* output.cc (Output_data_got::add_got_entry): Call gold_fallback.
|
|
(Output_data_got::add_got_entry_pair): Likewise.
|
|
(Output_section::add_input_section): Likewise.
|
|
(Output_section::add_output_section_data): Likewise.
|
|
(Output_segment::set_section_list_addresses): Likewise.
|
|
* x86_64.cc (Output_data_plt_x86_64::add_entry): Likewise.
|
|
|
|
2011-06-07 Cary Coutant
|
|
|
|
* layout.cc (Layout::set_segment_offsets): Don't adjust layout
|
|
for incremental links.
|
|
* output.cc (Output_segment::set_section_list_addresses): Remove
|
|
FIXME and test for TLS or BSS.
|
|
|
|
2011-06-07 Cary Coutant
|
|
|
|
* testsuite/Makefile.am: Add incremental_copy_test,
|
|
incremental_common_test_1.
|
|
* testsuite/Makefile.in: Regenerate.
|
|
* testsuite/common_test_1_v1.c: New source file.
|
|
* testsuite/common_test_1_v2.c: New source file.
|
|
* testsuite/copy_test_v1.cc: New source file.
|
|
|
|
2011-06-07 Cary Coutant
|
|
|
|
* common.cc (Symbol_table::do_allocate_commons_list): For incremental
|
|
update, allocate common from bss section's free list.
|
|
* incremental-dump.cc (dump_incremental_inputs): Print flag for
|
|
linker-defined symbols.
|
|
* incremental.cc (Sized_incremental_binary::do_process_got_plt):
|
|
Skip GOT and PLT entries that are no longer referenced.
|
|
(Output_section_incremental_inputs::write_info_blocks): Mark
|
|
linker-defined symbols.
|
|
(Sized_incr_relobj::do_add_symbols): Process linker-defined symbols.
|
|
* output.cc (Output_section::allocate): New function.
|
|
* output.h (Output_section::allocate): New function.
|
|
* resolve.cc (Symbol_table::report_resolve_problem): Add case for
|
|
linker-defined symbols.
|
|
(Symbol::override_base_with_special): Copy is_predefined_ flag.
|
|
* symtab.cc (Symbol::init_fields): Initialize is_predefined_ flag.
|
|
(Symbol::init_base_output_data): Likewise.
|
|
(Symbol::init_base_output_segment): Likewise.
|
|
(Symbol::init_base_constant): Likewise.
|
|
(Sized_symbol::init_output_data): Likewise.
|
|
(Sized_symbol::init_output_segment): Likewise.
|
|
(Sized_symbol::init_constant): Likewise.
|
|
(Symbol_table::do_define_in_output_data): Likewise.
|
|
(Symbol_table::do_define_in_output_segment): Likewise.
|
|
(Symbol_table::do_define_as_constant): Likewise.
|
|
* symtab.h (Symbol::is_predefined): New function.
|
|
(Symbol::init_base_output_data): Add is_predefined parameter.
|
|
(Symbol::init_base_output_segment): Likewise.
|
|
(Symbol::init_base_constant): Likewise.
|
|
(Symbol::is_predefined_): New data member.
|
|
(Sized_symbol::init_output_data): Add is_predefined parameter.
|
|
(Sized_symbol::init_output_segment): Likewise.
|
|
(Sized_symbol::init_constant): Likewise.
|
|
(enum Symbol_table::Defined): Add INCREMENTAL_BASE.
|
|
|
|
2011-06-07 Cary Coutant
|
|
|
|
* copy-relocs.cc (Copy_relocs::copy_reloc): Call make_copy_reloc
|
|
instead of emit_copy_reloc.
|
|
(Copy_relocs::emit_copy_reloc): Refactor.
|
|
(Copy_relocs::make_copy_reloc): New function.
|
|
(Copy_relocs::add_copy_reloc): Remove.
|
|
* copy-relocs.h (Copy_relocs::emit_copy_reloc): Move to public
|
|
section.
|
|
(Copy_relocs::make_copy_reloc): New function.
|
|
(Copy_relocs::add_copy_reloc): Remove.
|
|
* gold.cc (queue_middle_tasks): Emit old COPY relocations from
|
|
unchanged input files.
|
|
* incremental-dump.cc (dump_incremental_inputs): Print "COPY" flag.
|
|
* incremental.cc (Sized_incremental_binary::do_reserve_layout):
|
|
Reserve BSS space for COPY relocations.
|
|
(Sized_incremental_binary::do_emit_copy_relocs): New function.
|
|
(Output_section_incremental_inputs::write_info_blocks): Record
|
|
whether a symbol is copied from a shared object.
|
|
(Sized_incr_dynobj::do_add_symbols): Record COPY relocations.
|
|
* incremental.h (enum Incremental_shlib_symbol_flags): New type.
|
|
(INCREMENTAL_SHLIB_SYM_FLAGS_SHIFT): New constant.
|
|
(Incremental_input_entry_reader::get_output_symbol_index): Add
|
|
is_copy parameter.
|
|
(Incremental_binary::emit_copy_relocs): New function.
|
|
(Incremental_binary::do_emit_copy_relocs): New function.
|
|
(Sized_incremental_binary::Sized_incremental_binary): Initialize
|
|
new data member.
|
|
(Sized_incremental_binary::add_copy_reloc): New function.
|
|
(Sized_incremental_binary::do_emit_copy_relocs): New function.
|
|
(Sized_incremental_binary::Copy_reloc): New struct.
|
|
(Sized_incremental_binary::Copy_relocs): New typedef.
|
|
(Sized_incremental_binary::copy_relocs_): New data member.
|
|
* symtab.cc (Symbol_table::add_from_incrobj): Change return type.
|
|
* symtab.h (Symbol_table::add_from_incrobj): Change return type.
|
|
* target.h (Sized_target::emit_copy_reloc): New function.
|
|
* x86_64.cc (Target_x86_64::emit_copy_reloc): New function.
|
|
|
2011-06-02 Cary Coutant
|
2011-06-02 Cary Coutant
|
|
|
PR gold/12163
|
PR gold/12163
|
* gold/archive.cc (Archive::Archive): Initialize new data member.
|
* gold/archive.cc (Archive::Archive): Initialize new data member.
|
(Archive::include_all_members): Return if archive has already been
|
(Archive::include_all_members): Return if archive has already been
|