<p dir="ltr">Lgtm, works for me. Seems like a good compromise.</p>
<div class="gmail_extra"><br><div class="gmail_quote">On Nov 21, 2016 6:29 PM, "Reid Kleckner" <<a href="mailto:rnk@google.com">rnk@google.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">rnk created this revision.<br>
rnk added reviewers: mehdi_amini, thakis.<br>
rnk added a subscriber: cfe-commits.<br>
<br>
Without -flto, it's unlikely that users will experience LLVM version<br>
skew. The system installation of libLTO should be able to handle any<br>
pre-compiled LLVM bitcode from static archives.<br>
<br>
<br>
<a href="https://reviews.llvm.org/D26944" rel="noreferrer" target="_blank">https://reviews.llvm.org/<wbr>D26944</a><br>
<br>
Files:<br>
  lib/Driver/Tools.cpp<br>
  test/Driver/darwin-ld-lto.c<br>
<br>
<br>
Index: test/Driver/darwin-ld-lto.c<br>
==============================<wbr>==============================<wbr>=======<br>
--- test/Driver/darwin-ld-lto.c<br>
+++ test/Driver/darwin-ld-lto.c<br>
@@ -1,5 +1,3 @@<br>
-// REQUIRES: system-darwin<br>
-<br>
 // Check that ld gets "-lto_library" and warnings about libLTO.dylib path.<br>
<br>
 // RUN: mkdir -p %T/bin<br>
@@ -12,12 +10,20 @@<br>
 // LINK_LTOLIB_PATH: {{ld(.exe)?"}}<br>
 // LINK_LTOLIB_PATH: "-lto_library"<br>
<br>
-// RUN: %clang -target x86_64-apple-darwin10 -### %s \<br>
+// Only warn if -flto is on the command line.<br>
+//<br>
+// RUN: %clang -target x86_64-apple-darwin10 -### %s -flto \<br>
 // RUN:   -ccc-install-dir %S/dummytestdir -mlinker-version=133 2> %t.log<br>
 // RUN: FileCheck -check-prefix=LINK_LTOLIB_<wbr>PATH_WRN %s -input-file %t.log<br>
 //<br>
 // LINK_LTOLIB_PATH_WRN: warning: libLTO.dylib relative to clang installed dir not found; using 'ld' default search path instead<br>
<br>
+// Don't warn if -flto isn't present of -Wno-liblto is present.<br>
+//<br>
+// RUN: %clang -target x86_64-apple-darwin10 -### %s \<br>
+// RUN:   -ccc-install-dir %S/dummytestdir -mlinker-version=133 2> %t.log<br>
+// RUN: FileCheck -check-prefix=LINK_LTOLIB_<wbr>PATH_NOWRN %s -input-file %t.log<br>
+//<br>
 // RUN: %clang -target x86_64-apple-darwin10 -### %s \<br>
 // RUN:   -ccc-install-dir %S/dummytestdir -mlinker-version=133 -Wno-liblto 2> %t.log<br>
 // RUN: FileCheck -check-prefix=LINK_LTOLIB_<wbr>PATH_NOWRN %s -input-file %t.log<br>
Index: lib/Driver/Tools.cpp<br>
==============================<wbr>==============================<wbr>=======<br>
--- lib/Driver/Tools.cpp<br>
+++ lib/Driver/Tools.cpp<br>
@@ -8232,7 +8232,9 @@<br>
     if (llvm::sys::fs::exists(<wbr>LibLTOPath)) {<br>
       CmdArgs.push_back("-lto_<wbr>library");<br>
       CmdArgs.push_back(C.getArgs().<wbr>MakeArgString(LibLTOPath));<br>
-    } else {<br>
+    } else if (D.isUsingLTO()) {<br>
+      // Warn if we're using LTO with the system version of libLTO. It might not<br>
+      // understand LLVM bitcode generated by our version of LLVM.<br>
       D.Diag(diag::warn_drv_lto_<wbr>libpath);<br>
     }<br>
   }<br>
<br>
<br>
</blockquote></div></div>