Revert "[lld] Remove special cases from default ld driver mode."
authorDan Albert <danalbert@google.com>
Wed, 29 Apr 2020 21:14:51 +0000 (14:14 -0700)
committerDan Albert <danalbert@google.com>
Wed, 29 Apr 2020 21:14:51 +0000 (14:14 -0700)
This reverts commit da093c388fc9a559295faa6265cb8b1643ce9eeb.

Broke a test on Darwin. Will fix the test and resubmit.

lld/tools/lld/lld.cpp

index 8a8f8d0..58a291d 100644 (file)
@@ -96,9 +96,17 @@ static bool isPETarget(std::vector<const char *> &v) {
 }
 
 static Flavor parseProgname(StringRef progname) {
-  // Use GNU driver for "ld" by default.
+#if __APPLE__
+  // Use Darwin driver for "ld" on Darwin.
+  if (progname == "ld")
+    return Darwin;
+#endif
+
+#if LLVM_ON_UNIX
+  // Use GNU driver for "ld" on other Unix-like system.
   if (progname == "ld")
     return Gnu;
+#endif
 
   // Progname may be something like "lld-gnu". Parse it.
   SmallVector<StringRef, 3> v;