[patch ld]: Adjust for i?86-w64-mingw* autoimport and rdata merge to data

Kai Tietz ktietz70@googlemail.com
Wed May 19 21:27:00 GMT 2010


2010/5/19 Danny Smith <dansmister@gmail.com>:
> On Thu, May 20, 2010 at 1:39 AM, Kai Tietz <ktietz70@googlemail.com> wrote:
>> Hello,
>>
>> This patch specifies for *-w64-mingw* triplet that for enabled
>> auto-import the rdata section doesn't get merged into data section,
>> when pseudo-relocation-v2 is used. For v2 there is no need (at least
>> for win32) that this merge happens.
>>
>> ChangeLog
>>
>> 2010-05-19  Kai Tietz
>>
>>        * emultempl/pe.em (default_merge_rdata): New shell variable.
>>        (MERGE_RDATA_V2): New macro.
>>        (gld_${EMULATION_NAME}_get_script): Adjust rule for auto-import selected
>>        script.
>>
>
>
> Why do we need to test a  default_merge_rdata.  Isn't sufficient just
> to test the actual value of  link_info.pei386_runtime_pseudo_reloc?
>
> Like so:
>
> - echo '  ; else if (link_info.pei386_auto_import == 1) return' >>
> e${EMULATION_NAME}.c
> +echo '  ; else if (link_info.pei386_auto_import == 1'  >> e${EMULATION_NAME}.c
> +echo '             && link_info.pei386_runtime_pseudo_reloc != 2)
> return' >> e${EMULATION_NAME}.c
>
>
> Fanny
>

Well, if we decide to switch here for all target supporting v2
pseudo-relocation to non-rdata merge into rdata, I am fine. But I see
that cygwin did enabled auto-import, but wants to merge rdata into
data. So I didn't wanted to change here defaults for mingw (without
-w64- vendor-key).
If Dave and you are thinking that it makes sense to change here
default behavior for rdata merge to the same as I would like to have
for -w64- targets, I can adjust the patch for it.

Kai

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



More information about the Binutils mailing list