OSDN Git Service

PR 10156
authorian <ian>
Wed, 24 Jun 2009 19:48:51 +0000 (19:48 +0000)
committerian <ian>
Wed, 24 Jun 2009 19:48:51 +0000 (19:48 +0000)
commitbb7067cdcec78821365257073c609f0eaf47dab8
treeab9e2147257542e9b7f871caa43d7bc4fa0a7ba5
parentac654780fc2212314180c135c2906c7aa3050736
PR 10156
* layout.cc (Layout::choose_output_section): If we find an
existing section, update the flags.
(Layout::create_notes): New function, broken out of
Layout::finalize.
(Layout::finalize): Don't create note sections.
(Layout::create_note): Don't crash if linker script discards
section.
(Layout::create_gold_note): Likewise.
(Layout::create_build_id): Likewise.  Don't set
after_input_sections on the section.
(Layout::create_executable_stack_info): Remove target parameter.
Change caller.
* layout.h (class Layout): Declare create_notes.  Update
declaration of create_executable_stack_info.
* gold.cc (queue_middle_tasks): Call create_notes.
* output.cc (Output_section::update_flags_for_input_section): Move
here from output.h.  If SHF_ALLOC flag is newly set, mark address
invalid.
* output.h (Output_data::mark_address_invalid): New function.
(class Output_section): Only declare, not define,
update_flags_for_input_section.  Remove set_flags.
gold/ChangeLog
gold/gold.cc
gold/layout.cc
gold/layout.h
gold/output.cc
gold/output.h