Updating documentation:
authorAnton Korobeynikov <asl@math.spbu.ru>
Tue, 23 Jan 2007 12:35:46 +0000 (12:35 +0000)
committerAnton Korobeynikov <asl@math.spbu.ru>
Tue, 23 Jan 2007 12:35:46 +0000 (12:35 +0000)
 - Document visibility stuff
 - Fix gcc' supported attributes list
 - Document udis86 configure option

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33462 91177308-0d34-0410-b5e6-96231b3b80d8

docs/GettingStarted.html
docs/LangRef.html
docs/ReleaseNotes.html

index bda0cf8f3cebe81c07f6975ea1f402f2ee25e829..41ec511e14eee23f37357bace81a3f0330c6dcd8 100644 (file)
@@ -849,6 +849,11 @@ script to configure the build system:</p>
   documentation from the source code. This is disabled by default because 
   generating the documentation can take a long time and producess 100s of 
   megabytes of output.</dd>
+  <dt><i>--with-udis86</i></dt>
+  <dd>LLVM can use external disassembler library for various purposes (now it's
+  used only for examining code produced by JIT). This option will enable usage
+  of <a href="http://udis86.sourceforge.net/">udis86</a> x86 (both 32 and 64
+  bits) disassembler library.</dd>
 </dl>
 
 <p>To configure LLVM, follow these steps:</p>
index 4b71ba30a46ca99df074b55eaec68e7ab6892ab3..a1c9a2808daa299f68db6308f9ff306ad74dfe69 100644 (file)
@@ -578,6 +578,40 @@ convention.</p>
 
 </div>
 
+<!-- ======================================================================= -->
+<div class="doc_subsection">
+  <a name="visibility">Visibility Styles</a>
+</div>
+
+<div class="doc_text">
+
+<p>
+All Global Variables and Functions have one of the following visibility styles:
+</p>
+
+<dl>
+  <dt><b>"<tt>default</tt>" - Default style</b>:</dt>
+
+  <dd>On ELF, default visibility means that the declaration is visible to other
+    modules and, in shared libraries, means that the declared entity may be
+    overridden. On Darwin, default visibility means that the declaration is
+    visible to other modules. Default visibility corresponds to "external
+    linkage" in the language.
+  </dd>
+
+  <dt><b>"<tt>hidden</tt>" - Hidden style</b>:</dt>
+
+  <dd>Two declarations of an object with hidden visibility refer to the same
+    object if they are in the same shared object. Usually, hidden visibility
+    indicates that the symbol will not be placed into the dynamic symbol table,
+    so no other module (executable or shared library) can reference it
+    directly.
+  </dd>
+
+</dl>
+
+</div>
+
 <!-- ======================================================================= -->
 <div class="doc_subsection">
   <a name="globalvars">Global Variables</a>
@@ -638,14 +672,18 @@ a power of 2.</p>
 
 <p>LLVM function definitions consist of the "<tt>define</tt>" keyord, 
 an optional <a href="#linkage">linkage type</a>, an optional 
+<a href="#visibility">visibility style</a>, an optional 
 <a href="#callingconv">calling convention</a>, a return type, an optional
 <a href="#paramattrs">parameter attribute</a> for the return type, a function 
 name, a (possibly empty) argument list (each with optional 
-<a href="#paramattrs">parameter attributes</a>), an optional section, an 
-optional alignment, an opening curly brace, a list of basic blocks, and a 
-closing curly brace.  LLVM function declarations
-consist of the "<tt>declare</tt>" keyword, an optional <a
-  href="#callingconv">calling convention</a>, a return type, an optional
+<a href="#paramattrs">parameter attributes</a>), an optional section, an
+optional alignment, an opening curly brace, a list of basic blocks, and a
+closing curly brace.  
+
+LLVM function declarations consist of the "<tt>declare</tt>" keyword, an
+optional <a href="#linkage">linkage type</a>, an optional
+<a href="#visibility">visibility style</a>, an optional 
+<a href="#callingconv">calling convention</a>, a return type, an optional
 <a href="#paramattrs">parameter attribute</a> for the return type, a function 
 name, a possibly empty list of arguments, and an optional alignment.</p>
 
index 172eba872ca95d49699e9b8921840f4c4f6b02fe..1aa43a6909ba3a29dda56c1b364f5774e0762b18 100644 (file)
@@ -510,27 +510,26 @@ bits.</li>
       <b>Supported:</b> <tt>constructor</tt>, <tt>destructor</tt>,
       <tt>deprecated</tt>, <tt>fastcall</tt>, <tt>format</tt>, 
       <tt>format_arg</tt>, <tt>non_null</tt>, <tt>noreturn</tt>, 
-      <tt>stdcall</tt>, <tt>unused</tt>, <tt>used</tt>, 
-      <tt>warn_unused_result</tt>, <tt>weak</tt><br>
+      <tt>section</tt>, <tt>stdcall</tt>, <tt>unused</tt>, <tt>used</tt>, 
+      <tt>visibility</tt>, <tt>warn_unused_result</tt>, <tt>weak</tt><br>
 
       <b>Ignored:</b> <tt>noinline</tt>,
       <tt>always_inline</tt>, <tt>pure</tt>, <tt>const</tt>, <tt>nothrow</tt>,
       <tt>malloc</tt>, <tt>no_instrument_function</tt>, <tt>cdecl</tt><br>
 
-      <b>Unsupported:</b> <tt>section</tt>, <tt>alias</tt>,
-      <tt>visibility</tt>, <tt>regparm</tt>, all other target specific 
+      <b>Unsupported:</b> <tt>alias</tt>, <tt>regparm</tt>, all other target specific 
       attributes</li>
    
   <li><a href="http://gcc.gnu.org/onlinedocs/gcc/Variable-Attributes.html#Variable%20Attributes">Variable Attributes</a>:
       Specifying attributes of variables.<br>
       <b>Supported:</b> <tt>cleanup</tt>, <tt>common</tt>, <tt>nocommon</tt>,
-                        <tt>deprecated</tt>, <tt>dllimport</tt>, 
-                        <tt>dllexport</tt>,  <tt>transparent_union</tt>,
-                        <tt>unused</tt>, <tt>used</tt>, <tt>weak</tt><br>
+      <tt>deprecated</tt>, <tt>dllimport</tt>, <tt>dllexport</tt>, 
+      <tt>section</tt>, <tt>transparent_union</tt>, <tt>unused</tt>, 
+      <tt>used</tt>, <tt>weak</tt><br>
 
       <b>Unsupported:</b> <tt>aligned</tt>, <tt>mode</tt>, <tt>packed</tt>,
-                        <tt>section</tt>, <tt>shared</tt>, <tt>tls_model</tt>,
-                        <tt>vector_size</tt>, all target specific attributes.
+                          <tt>shared</tt>, <tt>tls_model</tt>,
+                          <tt>vector_size</tt>, all target specific attributes.
   </li>
 
   <li><a href="http://gcc.gnu.org/onlinedocs/gcc/Type-Attributes.html#Type%20Attributes">Type Attributes</a>:  Specifying attributes of types.<br>