diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2020-08-02 18:34:29 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2021-12-22 09:58:14 +0000 |
commit | 184e7a37179eb1693fc3d40feaf7da9062d0791c (patch) | |
tree | 97c8b75b4478c37d54585c722b7c2b20f769832f | |
parent | ad448b507431a6bc98c94416e8f5d8151e3750fd (diff) | |
download | src-184e7a37179eb1693fc3d40feaf7da9062d0791c.tar.gz src-184e7a37179eb1693fc3d40feaf7da9062d0791c.zip |
Reapply r327026 (partially):
Merge lld trunk r321017 to contrib/llvm/tools/lld.
(Note that in this merge, I foolishly combined upstream changes with
this local change. But only this ifdef part is really needed, as we
always default to ELF link mode.)
(cherry picked from commit 59948e95d8deadafca3acd659b6dfc78b708f117)
-rw-r--r-- | contrib/llvm-project/lld/tools/lld/lld.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/contrib/llvm-project/lld/tools/lld/lld.cpp b/contrib/llvm-project/lld/tools/lld/lld.cpp index 8a8f8d04bbda..c1a117e9cc3e 100644 --- a/contrib/llvm-project/lld/tools/lld/lld.cpp +++ b/contrib/llvm-project/lld/tools/lld/lld.cpp @@ -142,6 +142,9 @@ int main(int argc, const char **argv) { InitLLVM x(argc, argv); std::vector<const char *> args(argv, argv + argc); +#ifdef __FreeBSD__ + return !elf::link(args, canExitEarly(), llvm::outs(), llvm::errs()); +#else switch (parseFlavor(args)) { case Gnu: if (isPETarget(args)) @@ -160,4 +163,5 @@ int main(int argc, const char **argv) { "Invoke ld.lld (Unix), ld64.lld (macOS), lld-link (Windows), wasm-ld" " (WebAssembly) instead"); } +#endif } |