[PATCH] PR gold/19177: gold doesn't handle R_386_GOT32X relocation without base register

H.J. Lu hjl.tools@gmail.com
Wed Oct 28 16:24:00 GMT 2015


On Wed, Oct 28, 2015 at 8:40 AM, Cary Coutant <ccoutant@gmail.com> wrote:
>> +         if(gsym)
>> +           gold_error_at_location(relinfo, relnum, rel.get_r_offset(),
>> +                                  _("unexpected reloc %u against global symbol %s without base register in object file when making a PIC output"),
>> +                                  r_type, gsym->demangled_name().c_str());
>> +         else
>> +           gold_error_at_location(relinfo, relnum, rel.get_r_offset(),
>> +                                  _("unexpected reloc %u against local symbol without base register in object file when making a PIC output"),
>> +                                  r_type);
>
> s/making a PIC output/generating a position-independent output file/
>
> (This could also be PIE, right?)
>
>> +         // Don't subtract the .got.plt section address for baseless
>> +         // adressing.
>
> s/adressing/addressing/
>
>> +         // Add the .got.plt section address for baseless adressing.
>
> Likewise.
>
>>         PR gold/19177
>>         * i386.cc (Target_i386::Relocate::relocate): Check R_386_GOT32
>>         and R_386_GOT32X relocations without base register.
>
> OK with the above fixes.
>

Here is what I checked in.

Thanks.


-- 
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Check-R_386_GOT32-R_386_GOT32X-without-base-register.patch
Type: text/x-patch
Size: 3125 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20151028/4823901e/attachment.bin>


More information about the Binutils mailing list