diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-10-02 12:57:34 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-10-02 12:57:34 +0000 |
commit | 98efd89e7e52b2f081286477bbd8e7e400d63f37 (patch) | |
tree | c0531a00ce2cc991c3e132aca1832ddbc94c484c /lld/lib/Driver/UniversalDriver.cpp | |
parent | cb334561223f931c0ecd580a50ec80ee24266842 (diff) | |
download | bcm5719-llvm-98efd89e7e52b2f081286477bbd8e7e400d63f37.tar.gz bcm5719-llvm-98efd89e7e52b2f081286477bbd8e7e400d63f37.zip |
Use ld.lld2 as a argv[0] alias.
The reason for the name is so that we can run
./build/bin/clang -fuse-ld=lld2 test.o -o t
llvm-svn: 249122
Diffstat (limited to 'lld/lib/Driver/UniversalDriver.cpp')
-rw-r--r-- | lld/lib/Driver/UniversalDriver.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lld/lib/Driver/UniversalDriver.cpp b/lld/lib/Driver/UniversalDriver.cpp index 45bcbc838a3..68c9000e3de 100644 --- a/lld/lib/Driver/UniversalDriver.cpp +++ b/lld/lib/Driver/UniversalDriver.cpp @@ -86,6 +86,7 @@ static Flavor strToFlavor(StringRef str) { return llvm::StringSwitch<Flavor>(str) .Case("gnu", Flavor::gnu_ld) .Case("gnu2", Flavor::gnu_ld2) + .Case("ld.lld2", Flavor::gnu_ld2) .Case("link", Flavor::win_link) .Case("lld-link", Flavor::win_link) .Case("darwin", Flavor::darwin_ld) @@ -156,7 +157,9 @@ static Flavor getFlavor(llvm::MutableArrayRef<const char *> &args, } #endif - StringRef name = llvm::sys::path::stem(args[0]); + StringRef name = llvm::sys::path::filename(args[0]); + if (name.endswith_lower(".exe")) + name = llvm::sys::path::stem(name); return strToFlavor(parseProgramName(name)._flavor); } |