This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: static link with gold + gc-sections does not flush stdout buffer to file.


Hi,

     Here is the new patch. Please take another look.

2010-01-06  Sriraman Tallam  <tmsriram@google.com>

	* gc.h (Garbage_collection::Cident_section_map): New typedef.
	(Garbage_collection::cident_sections): New function.
	(Garbage_collection::cident_sections_): New member.
	(gc_process_relocs): Add references to sections whose names are C
	identifiers.
	* gold.cc (cident_section_start_prefix): New constant.
	(cident_section_stop_prefix): New constant.
	* gold.h (cident_section_start_prefix): New constant.
	(cident_section_stop_prefix): New constant.
	* layout.cc (Layout::define_section_symbols): Replace string constants
	with the newly defined constants.
	* object.cc (Sized_relobj::do_layout): Track sections whose names are
	C identifiers.
	* testsuite/Makefile.am: Add gc_orphan_section_test.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/gc_orphan_section_test.cc: New file.
	* testsuite/gc_orphan_section_test.sh: New file.


Thanks,
-Sri.

On Wed, Jan 6, 2010 at 8:22 PM, Ian Lance Taylor <iant@google.com> wrote:
> Sriraman Tallam <tmsriram@google.com> writes:
>
>> I am not sure I understand this. The output_sections are not assigned
>> in the first pass of do_layout and I need to find the orphaned
>> sections well before gc can start its transitive closure, right ?
>> add_input_section kicks in only after gc is finished and during when
>> do_layout is called the second time.
>
> Oh yeah, I forgot about that. ?Your idea sounds good, though.
>
> Ian
>

Attachment: gold_cident_section_patch.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]