Driver: implement driver automagic support for -lcc_kext

Rewrite linker arguments to use libclang_rt.cc_kext.a
instead of gcc-specific libcc_kext.a

Resolves Radar 7808495

llvm-svn: 114193
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index e24f017..86e1161 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -158,15 +158,23 @@
       continue;
     }
 
-    // Rewrite reserved library names, unless -nostdlib is present.
-    if (!HasNostdlib && A->getOption().matches(options::OPT_l)) {
+    // Rewrite reserved library names.
+    if (A->getOption().matches(options::OPT_l)) {
       llvm::StringRef Value = A->getValue(Args);
 
-      if (Value == "stdc++") {
+      // Rewrite unless -nostdlib is present.
+      if (!HasNostdlib && Value == "stdc++") {
         DAL->AddFlagArg(A, Opts->getOption(
                               options::OPT_Z_reserved_lib_stdcxx));
         continue;
       }
+
+      // Rewrite unconditionally.
+      if (Value == "cc_kext") {
+        DAL->AddFlagArg(A, Opts->getOption(
+                              options::OPT_Z_reserved_lib_cckext));
+        continue;
+      }
     }
 
     DAL->append(*it);