Mention llvm-abcd, point out difference between it and `analyze'.
[oota-llvm.git] / docs / LLVMVsTheWorld.html
index 955fbabcd1531f5e0fc53369141956a72a1bc534..c4fa6547c17a4936473c743fd864e2f28a7d4670 100644 (file)
@@ -22,8 +22,8 @@
   <li><a href="#codeemission">Machine Code Emission</a></li>
 </ol>
 
-<div class="doc_text">    
-  <p><b>Written by Brian R. Gaeke</b></p>
+<div class="doc_author">
+  <p>Written by Brian R. Gaeke</p>
 </div>
 
 <!-- *********************************************************************** -->
@@ -36,9 +36,9 @@
 <p>Whether you are a stranger to LLVM or not, and whether you are considering
 using it for your projects or not, you may find it useful to understand how we
 compare ourselves to other well-known compilers. The following list of points
-should help you understand -- from our point of view -- the way we see LLVM as
-being better than and/or different from a few other selected compilers and code
-generation systems.</p>
+should help you understand -- from our point of view -- some of the important
+ways in which we see LLVM as different from other selected compilers and
+code generation systems.</p>
 
 <p>At the moment, we only compare ourselves below to <a
 href="http://gcc.gnu.org/">GCC</a> and <a
@@ -60,14 +60,14 @@ machine code to memory. Supports one backend at a time.</p>
 <p>LLVM: Supports compilation of C and C++ (with more languages coming soon),
 strong SSA-based optimization at compile-time, link-time, run-time, and
 off-line, and multiple platform backends with Just-in-Time and ahead-of-time
-compilation frameworks. (See our tech report on <a
-href="http://llvm.cs.uiuc.edu/pubs/2003-09-30-LifelongOptimizationTR.html">Lifelong
+compilation frameworks. (See our document on <a
+href="http://llvm.cs.uiuc.edu/pubs/2004-01-30-CGO-LLVM.html">Lifelong
 Code Optimization</a> for more.)</p>
-</div>
 
 <p>GCC: Many relatively mature platform backends support assembly-language code
 generation from many source languages. No run-time compilation
-support. Relatively weak optimization support.</p>
+support.</p>
+</div>
 
 <!-- *********************************************************************** -->
 <div class="doc_section">
@@ -79,11 +79,13 @@ support. Relatively weak optimization support.</p>
 <p>GNU lightning: C integer types and "void *" are supported. No type checking
 is performed. Explicit type casts are not typically necessary unless the
 underlying machine-specific types are distinct (e.g., sign- or zero-extension is
-apparently necessary, but casting "int" to "void *" would not be.) No floating
-point (?!)</p>
+apparently necessary, but casting "int" to "void *" would not be.)
+Floating-point support may not work on all platforms (it does not appear to be
+documented in the latest release).</p>
 
 <p>LLVM: Compositional type system based on C types, supporting structures,
-opaque types, and C integer and floating point types.</p>
+opaque types, and C integer and floating point types. Explicit cast instructions
+are required to transform a value from one type to another.</p>
 
 <p>GCC: Union of high-level types including those used in Pascal, C, C++, Ada,
 Java, and FORTRAN.</p>