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]

[patch ld PE-COFF]: Use bfd target's underscoring default and add option --(no-)leading-underscore for ld


Hello,

this patch uses the definition of underscoring prefix defined in bfd 
target's structure and makes emulparam INITIAL_SYMBOL_CHAR deprecated (In 
fact there is no target which is using this anymore AFAICS, but I keep it 
for possible use). Also it enable to override ld's symbol underscoring 
prefix behavior by option --(no-)leading-underscore.

ChangeLog
ld/

2010-03-23  Kai Tietz  <kai.tietz@onevision.com>

        * emultempl/pep.em (U): Macro removed.
        (enum options): Add OPTION_NO_LEADING_UNDERSCORE
        and OPTION_LEADING_UNDERSCORE enumerator-values.
        (gld${EMULATION_NAME}_add_options): Add --(no-)leading-underscore
        option.
        (definfo): Add new member is_lead_underscore.
        (D): Add to macro underscore mode parameter.
        (init): Add definition for is_lead_underscore.
        (gld_${EMULATION_NAME}_list_options): Display new options.
        (set_pep_name): Adjust underscoring dependent fixed
        symbol handling.
        (gld_${EMULATION_NAME}_set_symbols): Likewise.
        (saw_option): Likewise.
        (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
        (set_entry_point): Initial initial_symbol_char dependent to
        target's default and new option flag pep_leading_underscore.
        * emultempl/pe.em (U): Macro removed.
        (OPTION_LEADING_UNDERSCORE): Add new option define.
        (OPTION_NO_LEADING_UNDERSCORE): Likewise.
        (gld${EMULATION_NAME}_add_options): Add --(no-)leading-underscore
        option.
        (definfo): Add new member is_lead_underscore.
        (D): Add to macro underscore mode parameter.
        (init): Add definition for is_lead_underscore.
        (gld_${EMULATION_NAME}_list_options): Display new options.
        (set_pep_name): Adjust underscoring dependent fixed
        symbol handling.
        (gld_${EMULATION_NAME}_set_symbols): Likewise.
        (saw_option): Likewise.
        (gld_${EMULATION_NAME}_unrecognized_file): Likewise.
        (set_entry_point): Initial initial_symbol_char dependent to
        target's default and new option flag pep_leading_underscore.
        * pe-dll.c (pe_leading_underscore): New flag variable.
        (pe_detail_list): Remove const to allow modify of
        member underscore.
        (pe_dll_id_target): Initialize pe_details' underscore variable
        dependent to target's default and flag pe_leading_underscore.
        * pe-dll.h (pe_leading_underscore): Add extern declaration of
        option flag.
        * pep-dll.c (pe_leading_underscore): Add alias define for
        pep_leading_underscore.
        * pep-dll.h (pep_leading_underscore) Add extern declaration of
        option flag.
        * ld.texinfo: Add documentation for --(no-)leading-underscore 
option.

ld/testsuite/

2010-03-23  Kai Tietz  <kai.tietz@onevision.com>

        * ld-pe/orphan_nu.d: New test for --no-underscore.
        * ld-pe/orphana_nu.s: New file.
        * ld-pe/pe.exp: Add orphan_nu test.
I tested this patch for i686-pc-mingw32, x86_64-pc-mingw32, and 
i686-pc-cygwin without any regressions. Is this patch ok for apply?

Regards,
Kai


|  (\_/)  This is Bunny. Copy and paste Bunny
| (='.'=) into your signature to help him gain
| (")_(") world domination.

Attachment: ld_underscore.diff
Description: Binary data


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