This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] PR gold/17640
- From: Cary Coutant <ccoutant at google dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: Ilya Tocar <tocarip dot intel at gmail dot com>, Binutils <binutils at sourceware dot org>
- Date: Fri, 13 Mar 2015 11:37:36 -0700
- Subject: Re: [PATCH] PR gold/17640
- Authentication-results: sourceware.org; auth=none
- References: <CAMe9rOq-uSd64h6eeogR3SywtQipMupN9Ng9-EvPLF+3bp7Exw at mail dot gmail dot com> <20150305104052 dot GA16361 at msticlxl7 dot ims dot intel dot com> <CAMe9rOqRQ+HMS12+hn9Nz0pnb95tUDmbAU2QjK9G1Rc-q=woCA at mail dot gmail dot com> <20150310112745 dot GA104717 at msticlxl7 dot ims dot intel dot com> <CAMe9rOoG6NOVLYxZBJ5KRuS9_47=ptsd=Ft9iA9HfN2Asw0UeQ at mail dot gmail dot com> <20150312143236 dot GA95320 at msticlxl7 dot ims dot intel dot com> <CAMe9rOpn0uGDm1qbwgL-7CiYKjQeSHMHX6WzsnZ6eyfcp2MBAw at mail dot gmail dot com> <20150312145732 dot GB95320 at msticlxl7 dot ims dot intel dot com> <CAHACq4qF26jr8QYR_V55oVewLyHpgD2g7TrxDmgye0_S4pdroQ at mail dot gmail dot com> <CAMe9rOrMMxkR4bnoomCdW2P6TQtExMyMeC1oBHXNE3vXEEawLw at mail dot gmail dot com> <20150313112631 dot GA72598 at msticlxl7 dot ims dot intel dot com> <CAMe9rOqs=QROJZexdXKebsKrLrNat4mg=vgzuUrUpH1skpdTTQ at mail dot gmail dot com> <CAHACq4q761ontKOo3cr46hbo5dgi7A892GMB8rBBYuYwgY8ZKA at mail dot gmail dot com> <CAMe9rOq+MfTXB5k+8jgAxX+TMs=A-n4Fbu7hBG21kX9Wg7=7uA at mail dot gmail dot com>
>> You still haven't explained why we need to look for the symbol
>> "_DYNAMIC" and treat it as a special case.
>
> This isn't the optimal code. Compiler may generate
>
> movl %eax, %edx
> movl _DYNAMIC@GOT(%ecx), %eax
> addl %edx, %eax
>
> instead of
>
> addl _DYNAMIC@GOT(%ecx), %eax
>
> I just want to be on the safe side.
You're still not explaining. If the compiler generates that sequence,
and we convert the mov to lea, why do we need the GOT entry?
-cary