https://sourceware.org/bugzilla/show_bug.cgi?id=24683

Fangrui Song <maskray at google dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |maskray at google dot com

--- Comment #1 from Fangrui Song <maskray at google dot com> ---
See https://sourceware.org/bugzilla/show_bug.cgi?id=24685 for a related issue.

For call foo, two relocation types may be used. The semantics in lld are:

* R_X86_64_PLT32: optimized to R_X86_64_PC32 (direct call) if the target symbol
is non-preemptable (local/hidden/protected/defined in exe/-Bsymbolic/etc)
* R_X86_64_PC32 (I think this is not emitted by binutils>=2.31):
  if -no-pie or if the target symbol is non-preemptable, direct call
  otherwise, a canonical PLT is created

I think ld.bfd x86-64 behaves in a similar way.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to