This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [GOLD] question about gold handling SPARC style .rela.plt, .rela.plt overlapping
Thanks!
---
Regards,
WANG.Jiong
2012/8/7 Ian Lance Taylor <iant@google.com>:
> On Tue, Aug 7, 2012 at 1:24 AM, WANG.Jiong <wong.kwongyuan@gmail.com> wrote:
>>
>> currently, I am porting gold linker for a private target which allow
>> PLTREL overlapping
>>
>> ...
>>
>> So, should we always generate DT_RELA, DT_RELASZ, DT_RELAENT, and make
>> DT_RELA, DT_RELASZ exactly the same value as DT_JMPREL, DT_PLTRELSZ ?
>>
>> that is, for the following condition check in
>> Layout::add_target_dynamic_tags
>>
>> 4344 if (dyn_rel != NULL && dyn_rel->output_section() != NULL)
>> 4345 {
>> 4346 odyn->add_section_address(use_rel ? elfcpp::DT_REL :
>> elfcpp::DT_RELA,
>> 4347 dyn_rel->output_section());
>> 4348 if (plt_rel != NULL
>> 4349 && plt_rel->output_section() != NULL
>> 4350 && dynrel_includes_plt)
>>
>> should we check dynrel_includes_plt even when dyn_rel == NULL ?
>
> Yes, I agree. If dynrel_includes_plt && dyn_rel == NULL && plt_rel !=
> NULL, we should generate the DT_REL tags.
>
> I committed the attached patch.
>
> Ian
>
> 2012-08-07 Ian Lance Taylor <iant@google.com>
>
> * layout.cc (Layout::add_target_dynamic_tags): If
> dynrel_includes_plt but no dyn_rel, emit dynamic reloc tags for
> plt_rel.