Update llvm.dbg.func.start.
[oota-llvm.git] / docs / FAQ.html
index 58230414172a198aaf7a316e8ce360bfb6a008e5..ea2f802d1dd17f2bac314d4fd1e7d588777196cd 100644 (file)
@@ -89,8 +89,6 @@
 
   <li><a href="#cfe_code">Questions about code generated by the GCC front-end</a>
   <ol>
-     <li><a href="#__main">What is this <tt>__main()</tt> call that gets inserted into
-         <tt>main()</tt>?</a></li>
      <li><a href="#iosinit">What is this <tt>llvm.global_ctors</tt> and
           <tt>_GLOBAL__I__tmp_webcompile...</tt> stuff that happens when I
           #include &lt;iostream&gt;?</a></li>
@@ -591,29 +589,6 @@ them.</p>
   <a name="cfe_code">Questions about code generated by the GCC front-end</a>
 </div>
 
-<div class="question"><p>
-<a name="__main"></a>
-What is this <tt>__main()</tt> call that gets inserted into <tt>main()</tt>?
-</p></div>
-
-<div class="answer">
-<p>
-The <tt>__main</tt> call is inserted by the C/C++ compiler in order to guarantee
-that static constructors and destructors are called when the program starts up
-and shuts down.  In C, you can create static constructors and destructors by
-using GCC extensions, and in C++ you can do so by creating a global variable
-whose class has a ctor or dtor.
-</p>
-
-<p>
-The actual implementation of <tt>__main</tt> lives in the
-<tt>llvm/runtime/GCCLibraries/crtend/</tt> directory in the source-base, and is
-linked in automatically when you link the program.
-</p>
-</div>
-
-<!--=========================================================================-->
-
 <div class="question">
 <a name="iosinit"></a>
 <p> What is this <tt>llvm.global_ctors</tt> and