On 27/10/15 13:06, H.J. Lu wrote:
On Tue, Oct 27, 2015 at 5:52 AM, Jiong Wang <jiong.w...@foss.arm.com> wrote:
On 27/10/15 11:37, H.J. Lu wrote:
On Tue, Oct 27, 2015 at 4:20 AM, Bernd Schmidt <bschm...@redhat.com>
wrote:
On 10/19/2015 09:55 PM, H.J. Lu wrote:
* calls.c (prepare_call_address): Don't handle -fno-plt here.
Is any other target using -fno-plt? If not, and if that's really just a
aarch64 is the only target which checks -fno-plt from commit log below.
I CCed the code author. aarch64 may suffer from the same issue.
H.J,
Thanks for the info.
After a quick reading of the PR at
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67215,
I found the problem description is very x86 specific, I still don't
understand what's
wrong if we do the following transformation when -fno-plt specified on
x86-74, thus I
am not sure whether there is problem exist on aarch64. Can you please give
more explanation?
call proc2@PLT
||
V
movq proc2@GOTPCREL(%rip), %rax
call *%rax
call *proc2@GOTPCREL(%rip)
doesn't use a register and saves one instruction.
OK, then it's fairly x86-64 specific optimization, because we can't do
"call *mem" in
aarch64 and some other targets.