This is the mail archive of the
mailing list for the binutils project.
Re: [PATCH][GOLD] Allow a target to fix up output section flags.
No problem, I will move all the special processing to
make_output_section and send you a patch. Thanks for reviewing.
On Tue, Apr 19, 2011 at 5:02 PM, Ian Lance Taylor <email@example.com> wrote:
> "Doug Kwan (éæå)" <firstname.lastname@example.org> writes:
>> Â Â This patch adds code to allow a target to fix up some flags in an
>> output section header. ÂWe need this for ARM's EXIDX section, which is
>> required to have SHF_LINK_ORDER set. ÂWe currently do not handle that
>> flag correctly in layout, it would be desirable to fix that in the
>> long run. ÂI have tested this for both ARM and X86_64 and I also added
>> a new test case.
>> 2011-04-05 ÂDoug Kwan Â<email@example.com>
>> Â Â Â Â * arm.cc (Target_arm::do_adjust_output_section_flags): New
>> Â Â Â Â method definition.
>> Â Â Â Â * output.cc (Output_section::write_header): Allow a target to adjust
>> Â Â Â Â output section flags.
>> Â Â Â Â * target.h (Target::adjust_output_section_flags): New method definition.
>> Â Â Â Â (Target::do_adjust_output_section_flags): Same.
>> Â Â Â Â * testsuite/Makefile.am (arm_exidx_test): New test rules.
>> Â Â Â Â * testsuite/Makefile.in: Regenerate.
>> Â Â Â Â * testsuite/arm_exidx_test.s: New file.
>> Â Â Â Â * testsuite/arm_exidx_test.sh: Same.
> Sorry, I forgot about this one.
> I want to try to push back on having lots of little random Target hooks.
> We already have too many. ÂThey make it harder to understand how to
> write a new backend and harder to modify the linker. ÂThis is a problem
> in BFD as well. ÂAs much as possible we need to make target hooks
> simple, easy to understand, and few in number.
> In this case the ARM backend already uses the make_output_section target
> hook, so it should be possible to do everything there. ÂI don't see any
> need for a new target hook to do this. ÂIf you need to add a function to
> Output_section to change the flags_ field, do that.