Remove references to gccld and gccas, adjusting the documentation to
authorReid Spencer <rspencer@reidspencer.com>
Fri, 9 Feb 2007 15:59:08 +0000 (15:59 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Fri, 9 Feb 2007 15:59:08 +0000 (15:59 +0000)
mention llvm-ld and opt instead (if appropriate).

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

docs/Bugpoint.html
docs/CFEBuildInstrs.html
docs/FAQ.html
docs/GettingStarted.html
docs/GettingStartedVS.html
docs/MakefileGuide.html
docs/index.html

index 1f295336706c4474373ed3d983a53f672bbf75c8..43d237d094e3fe16bf6742cb5efcfb378959bf0b 100644 (file)
 passes.  It can be used to debug three types of failures: optimizer crashes,
 miscompilations by optimizers, or bad native code generation (including problems
 in the static and JIT compilers).  It aims to reduce large test cases to small,
-useful ones.  For example, if <tt>gccas</tt> crashes while optimizing a
+useful ones.  For example, if <tt>opt</tt> crashes while optimizing a
 file, it will identify the optimization (or combination of optimizations) that
 causes the crash, and reduce the file down to a small example which triggers the
 crash.</p>
 
-<p>For detailed case scenarios, such as debugging <tt>gccas</tt>,
-<tt>gccld</tt>, or one of the LLVM code generators, see <a
+<p>For detailed case scenarios, such as debugging <tt>opt</tt>,
+<tt>llvm-ld</tt>, or one of the LLVM code generators, see <a
 href="HowToSubmitABug.html">How To Submit a Bug Report document</a>.</p>
 
 </div>
@@ -114,7 +114,7 @@ Otherwise, there is no problem <tt>bugpoint</tt> can debug.</p>
 as it can to reduce the list of passes (for optimizer crashes) and the size of
 the test program.  First, <tt>bugpoint</tt> figures out which combination of
 optimizer passes triggers the bug. This is useful when debugging a problem
-exposed by <tt>gccas</tt>, for example, because it runs over 38 passes.</p>
+exposed by <tt>opt</tt>, for example, because it runs over 38 passes.</p>
 
 <p>Next, <tt>bugpoint</tt> tries removing functions from the test program, to
 reduce its size.  Usually it is able to reduce a test program to a single
index 85d1ebd90ff63c695b74fd5ec63f499d4baf5545..033edcc1f2089292b0e16e9dfdc394726c77abca 100644 (file)
@@ -314,8 +314,8 @@ sh:
 
       <ul>
         <li>Often targets include special assembler or linker flags which
-            <tt>gccas</tt>/<tt>gccld</tt> does not understand.  In general,
-            these can just be removed.</li>
+            <tt>llvm-as</tt>, <tt>opt</tt>, or <tt>llvm-ld</tt> do not 
+            understand.  In general, these can just be removed.</li>
 
         <li>LLVM currently does not support any floating point values other than
             32-bit and 64-bit IEEE floating point.  The primary effect of this
@@ -331,8 +331,8 @@ sh:
 
         <li>You may have to disable multilib support in your target.  Using
             multilib support causes the GCC compiler driver to add a lot of
-            "<tt>-L</tt>" options to the link line, which do not relate to LLVM
-            and confuse <tt>gccld</tt>.  To disable multilibs, delete any
+            "<tt>-L</tt>" options to the link line, which do not relate to 
+            LLVM.  To disable multilibs, delete any
             <tt>MULTILIB_OPTIONS</tt> lines from your target files.</li>
 
         <li>Did we mention that we don't support inline assembly?  You'll
index 2dffd203ffdc406b61f45c1892979b74c338c388..d540edd81b068448f9c6c783a665a05c8efa035d 100644 (file)
@@ -460,28 +460,21 @@ or translation to the C back end).  That is why configure thinks your system
 <p>
 To work around this, perform the following steps:
 </p>
-
 <ol>
-  <li>
-  Make sure the CC and CXX environment variables contains the full path to the
-  LLVM GCC front end.
-  </li>
+  <li>Make sure the CC and CXX environment variables contains the full path to 
+  the LLVM GCC front end.</li>
 
-  <li>
-  Make sure that the regular C compiler is first in your PATH.
-  </li>
+  <li>Make sure that the regular C compiler is first in your PATH. </li>
 
-  <li>
-  Add the string "-Wl,-native" to your CFLAGS environment variable.
-  </li>
+  <li>Add the string "-Wl,-native" to your CFLAGS environment variable.</li>
 </ol>
 
 <p>
-This will allow the gccld linker to create a native code executable instead of
-a shell script that runs the JIT.  Creating native code requires standard
-linkage, which in turn will allow the configure script to find out if code is
-not linking on your system because the feature isn't available on your system.
-</p>
+This will allow the <tt>llvm-ld</tt> linker to create a native code executable 
+instead of shell script that runs the JIT.  Creating native code requires 
+standard linkage, which in turn will allow the configure script to find out if 
+code is not linking on your system because the feature isn't available on your 
+system.</p>
 </div>
 
 <div class="question">
index 41ec511e14eee23f37357bace81a3f0330c6dcd8..3684e4a6558eaf04c0148ec87d7e327a399b43af 100644 (file)
@@ -1342,11 +1342,10 @@ information is in the <a href="CommandGuide/index.html">Command Guide</a>.</p>
   LLVM assembly.</dd>
 
   <dt><tt><b>llvm-ld</b></tt></dt>
-  <dd><tt>llvm-ld</tt> is very similar to gccld and provides a general purpose
-  and extensible linker for LLVM. This is the linker invoked by <tt>llvmc</tt>.
-  It allows optimization modules to be loaded so that language specific
-  optimizations can be applied at link time. This tool is considered
-  experimental.</dd>
+  <dd><tt>llvm-ld</tt> is a general purpose and extensible linker for LLVM. 
+  This is the linker invoked by <tt>llvmc</tt>. It performsn standard link time
+  optimizations and allows optimization modules to be loaded and run so that 
+  language specific optimizations can be applied at link time.</dd>
 
   <dt><tt><b>llvm-link</b></tt></dt>
   <dd><tt>llvm-link</tt>, not surprisingly, links multiple LLVM modules into 
@@ -1368,36 +1367,13 @@ information is in the <a href="CommandGuide/index.html">Command Guide</a>.</p>
   the -march=c option).</dd>
 
   <dt><tt><b>llvm-gcc</b></tt></dt>
-  <dd><tt>llvm-gcc</tt> is a GCC-based C frontend
-  that has been retargeted to emit LLVM code as the machine code output.  It
-  works just like any other GCC compiler, taking the typical <tt>-c, -S, -E,
-  -o</tt> options that are typically used.  The source code for the
-  <tt>llvm-gcc</tt> tool is available as a separate CVS module.
-  <blockquote>
-    <dl>
-      <dt><tt><b>gccas</b></tt></dt>
-      <dd>This tool is invoked by the <tt>llvm-gcc</tt> frontend as the 
-      "assembler" part of the compiler.  This tool actually assembles LLVM 
-      assembly to LLVM bytecode, performs a variety of optimizations, and 
-      outputs LLVM bytecode.  Thus when you invoke 
-      <tt>llvm-gcc -c x.c -o x.o</tt>, you are causing <tt>gccas</tt> to be 
-      run, which writes the <tt>x.o</tt> file (which is an LLVM bytecode file 
-      that can be disassembled or manipulated just like any other bytecode 
-      file).  The command line interface to <tt>gccas</tt> is designed to be 
-      as close as possible to the <b>system</b> `<tt>as</tt>' utility so that 
-      the gcc frontend itself did not have to be modified to interface to 
-      a "weird" assembler.</dd>
-
-      <dt><tt><b>gccld</b></tt></dt>
-      <dd><tt>gccld</tt> links together several LLVM bytecode files into one 
-      bytecode file and does some optimization.  It is the linker invoked by 
-      the GCC frontend when multiple .o files need to be linked together.  
-      Like <tt>gccas</tt>, the command line interface of <tt>gccld</tt> is 
-      designed to match the system linker, to aid interfacing with the GCC 
-      frontend.</dd>
-    </dl>
-  </blockquote>
-  </dd>
+  <dd><tt>llvm-gcc</tt> is a GCC-based C frontend that has been retargeted to 
+  use LLVM as its backend instead of GCC's RTL backend. It can also emit LLVM 
+  byte code or assembly (with the <tt>-emit-llvm</tt> option) instead of the
+  usual machine code output.  It works just like any other GCC compiler, 
+  taking the typical <tt>-c, -S, -E, -o</tt> options that are typically used.  
+  Additionally, the the source code for <tt>llvm-gcc</tt> is available as a 
+  separate CVS module.</dd>
 
   <dt><tt><b>opt</b></tt></dt>
   <dd><tt>opt</tt> reads LLVM bytecode, applies a series of LLVM to LLVM 
index 15b31b011fa7c654eec16717955a27140053fa55..45e323b6ff4ac20193aa007093de074a47b477df 100644 (file)
@@ -258,18 +258,13 @@ All these paths are absolute:</p>
        </pre></li>
 
   <li><p>Next, compile the C file into a LLVM bytecode file:</p>
-      <p><tt>% llvm-gcc hello.c -o hello</tt></p>
-
-      <p>Note that you should have already built the tools and they have to be
-      in your path, at least <tt>gccas</tt> and <tt>gccld</tt>.</p>
-
-      <p>This will create two result files: <tt>hello</tt> and
-      <tt>hello.bc</tt>. The <tt>hello.bc</tt> is the LLVM bytecode that
-      corresponds the the compiled program and the library facilities that it
-      required.  <tt>hello</tt> is a simple shell script that runs the bytecode
-      file with <tt>lli</tt>, making the result directly executable.  Note that
-      all LLVM optimizations are enabled by default, so there is no need for a 
-      "-O3" switch.</p>
+      <p><tt>% llvm-gcc hello.c -emit-llvm -o hello.bc</tt></p>
+
+      <p>This will create the result file <tt>hello.bc</tt> which is the LLVM 
+      bytecode that corresponds the the compiled program and the library 
+      facilities that it required.  You can execute this file directly using
+      <tt>lli</tt> tool, compile it to native assembly with the <tt>llc</tt>, 
+      optimize or analyze it further with the <tt>opt</tt> tool, etc.</p> 
       
       <p><b>Note: while you cannot do this step on Windows, you can do it on a
         Unix system and transfer <tt>hello.bc</tt> to Windows.</b></p></li>
index 6c0310da47fc096438da57e6cc8712970cccab3e..c13e06fb1f08217620c37273ff143dbc618156e2 100644 (file)
     executables (e.g. Unix).</dd>
     <dt><a name="FLEX"><tt>FLEX</tt></a><small>(configured)</small></dt>
     <dd>Specifies the path to the <tt>flex</tt> tool.</dd>
-    <dt><a name="GCCLD"><tt>GCCLD</tt></a><small>(defaulted)</small></dt>
-    <dd>Specifies the path to the <tt>gccld</tt> tool.</dd>
     <dt><a name="INSTALL"><tt>INSTALL</tt></a><small>(configured)</small></dt>
     <dd>Specifies the path to the <tt>install</tt> tool.</dd>
     <dt><a name="LDFLAGS"><tt>LDFLAGS</tt></a><small>(configured)</small></dt>
     <dd>Specifies the path to the LLVM version of the GCC 'C' Compiler</dd>
     <dt><a name="LLVMGXX"><tt>LLVMGXX</tt></a><small>(defaulted)</small></dt>
     <dd>Specifies the path to the LLVM version of the GCC C++ Compiler</dd>
+    <dt><a name="LLVMLD"><tt>LLVMLD</tt></a><small>(defaulted)</small></dt>
+    <dd>Specifies the path to the LLVM bytecode linker tool</dd>
     <dt><a name="LLVM_OBJ_ROOT"><tt>LLVM_OBJ_ROOT</tt></a><small>(configured)
     </small></dt>
     <dd>Specifies the top directory into which the output of the build is
index f999921412ff3a1a910b878cdfe36a7d02454875..23e566c1c5902ee0b1e8b3da6920cc0beb4fb204 100644 (file)
@@ -68,24 +68,23 @@ those using Visual Studio on Windows.</li>
 manual for the LLVM command line utilities ("man" pages for LLVM tools).<br/>
 Current tools:
  <a href="CommandGuide/html/llvm-ar.html">llvm-ar</a>,
- <a href="CommandGuide/html/llvm-ranlib.html">llvm-ranlib</a>,
  <a href="CommandGuide/html/llvm-as.html">llvm-as</a>,
  <a href="CommandGuide/html/llvm-dis.html">llvm-dis</a>,
- <a href="CommandGuide/html/opt.html">opt</a>,
- <a href="CommandGuide/html/llc.html">llc</a>,
- <a href="CommandGuide/html/lli.html">lli</a>,
+ <a href="CommandGuide/html/llvm-extract.html">llvm-extract</a>,
+ <a href="CommandGuide/html/llvm-ld.html">llvm-ld</a>,
  <a href="CommandGuide/html/llvm-link.html">llvm-link</a>,
  <a href="CommandGuide/html/llvm-nm.html">llvm-nm</a>,
  <a href="CommandGuide/html/llvm-prof.html">llvm-prof</a>,
- <a href="CommandGuide/html/llvmgcc.html">llvmgcc</a>,
- <a href="CommandGuide/html/llvmgxx.html">llvmgxx</a>,
- <a href="CommandGuide/html/gccas.html">gccas</a>,
- <a href="CommandGuide/html/gccld.html">gccld</a>,
+ <a href="CommandGuide/html/llvm-ranlib.html">llvm-ranlib</a>,
+ <a href="CommandGuide/html/opt.html">opt</a>,
+ <a href="CommandGuide/html/llc.html">llc</a>,
+ <a href="CommandGuide/html/lli.html">lli</a>,
+ <a href="CommandGuide/html/llvmc.html">llvmc</a>
+ <a href="CommandGuide/html/llvmgcc.html">llvm-gcc</a>,
+ <a href="CommandGuide/html/llvmgxx.html">llvm-g++</a>,
  <a href="CommandGuide/html/stkrc.html">stkrc</a>,
  <a href="CommandGuide/html/bugpoint.html">bugpoint</a>,
- <a href="CommandGuide/html/llvm-extract.html">llvm-extract</a>,
  <a href="CommandGuide/html/llvm-bcanalyzer.html">llvm-bcanalyzer</a>,
- <a href="CommandGuide/html/llvmc.html">llvmc</a>
 </li>
 
 <li><a href="FAQ.html">Frequently Asked Questions</a> - A list of common