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] |
[resend a previously sent e-mail to include binutils] Hi Ian, This patch fixes a problem in which unnecessary dynamic relocations are generated for __exidx_{start,end}. These symbols are special and references to them should use the local definition. Currently we define these symbols in the ARM backend too late. The patch adds a new target hook to generate target-specific symbols. 2012-03-13 Doug Kwan <dougkwan@google.com> * arm.cc (Target_arm::do_define_standard_symbols): New method. (Target_arm::do_finalize_sections): Remove code which defines __exidx_start and __exidx_end. Make symbol table parameter anonymous as it is not used. * gold.cc (queue_middle_tasks): Call target hook to define any target-specific symbols. * target.h (Target::define_standard_symbols): New method. (Target::do_define_standard_symbols): Same. * testsuite/Makefile.am (arm_exidx_test): Dump relocations also. * testsuite/Makefile.in: Regenerate. * testsuite/arm_exidx.s: Generate data relocations for __exidx_start and __exidx_end. * testsuite/arm_exidx_test.sh: Check that no unused dynamic relocations are generated for __exidx_start and __exidx_end. -Doug
Attachment:
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] |