aokblast wrote:

> What is the motivation for this? We have been installing LLD as ld on FreeBSD 
> for about ten years, setting the default to ld.lld seems like it will make it 
> harder to move to a different linker in the future for no benefit.

It doesn’t behave as we originally expected. When the linker name is ld, the 
toolchain applies special handling: it prefers invoking ${triple}-${linker} 
over ${linker}, rather than resolving ld via the usual path lookup. As a 
result, if GNU ld is installed via the package system, it takes 
precedence—since ${triple}-ld is found first in the search path—effectively 
overriding ld.lld.

See: 
https://github.com/llvm/llvm-project/blob/82442a58c054611219385528f06a05bf1eb19215/clang/lib/Driver/ToolChain.cpp#L1111
See: 
https://github.com/llvm/llvm-project/blob/82442a58c054611219385528f06a05bf1eb19215/clang/lib/Driver/Driver.cpp#L6794

https://github.com/llvm/llvm-project/pull/190596
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to