implement a new magic global "llvm.compiler.used" which is like llvm.used, but
doesn't cause ".no_dead_strip" to be emitted on darwin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76399 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 910fc5c..dced11c 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -94,6 +94,8 @@
   <li><a href="#intrinsic_globals">Intrinsic Global Variables</a>
     <ol>
       <li><a href="#intg_used">The '<tt>llvm.used</tt>' Global Variable</a></li>
+      <li><a href="#intg_compiler_used">The '<tt>llvm.compiler.used</tt>'
+          Global Variable</a></li>
       <li><a href="#intg_global_ctors">The '<tt>llvm.global_ctors</tt>'
          Global Variable</a></li>
       <li><a href="#intg_global_dtors">The '<tt>llvm.global_dtors</tt>'
@@ -2168,8 +2170,9 @@
 
 <p>LLVM has a number of "magic" global variables that contain data that affect
 code generation or other IR semantics.  These are documented here.  All globals
-of this sort should have a section specified as "llvm.metadata".  This section
-and all globals that start with "llvm." are reserved for LLVM.</p>
+of this sort should have a section specified as "<tt>llvm.metadata</tt>".  This
+section and all globals that start with "<tt>llvm.</tt>" are reserved for use
+by LLVM.</p>
 
 <!-- ======================================================================= -->
 <div class="doc_subsection">
@@ -2208,6 +2211,24 @@
 
 <!-- ======================================================================= -->
 <div class="doc_subsection">
+<a name="intg_compiler_used">The '<tt>llvm.compiler.used</tt>' Global Variable</a>
+</div>
+
+<div class="doc_text">
+
+<p>The <tt>@llvm.compiler.used</tt> directive is the same as the
+<tt>@llvm.used</tt> directive, except that it only prevents the compiler from
+touching the symbol.  On targets that support it, this allows an intelligent
+linker to optimize references to the symbol without being impeded as it would be
+by <tt>@llvm.used</tt>.</p>
+
+<p>This is a rare construct that should only be used in rare circumstances, and
+should not be exposed to source languages.</p>
+
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection">
 <a name="intg_global_ctors">The '<tt>llvm.global_ctors</tt>' Global Variable</a>
 </div>