[llvm] -fno-plt: Infer nonlazybind at -O0 (PR #97873)

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 18 09:31:02 PDT 2024


MaskRay wrote:

Perhaps we should introduce a `lazybind` function attribute and
determine GOT-indirect call sequence using `if ("RtLibUseGOT" && !lazybind)` instead of `if (nonlazybind)`.
The new condition will work with `mcount` (`-pg`), `__cxa_atexit` (clangCodeGen), etc.

`nonlazybind` will only be used by ObjC.

During LTO, when a non-"RtLibUseGOT" module is merged into a "RtLibUseGOT" module, the former's functions get the `lazybind` attribute.


https://github.com/llvm/llvm-project/pull/97873


More information about the llvm-commits mailing list