[cfe-commits] r55278 - /cfe/trunk/www/comparison.html

Chris Lattner sabre at nondot.org
Sat Aug 23 22:56:54 PDT 2008


Author: lattner
Date: Sun Aug 24 00:56:54 2008
New Revision: 55278

URL: http://llvm.org/viewvc/llvm-project?rev=55278&view=rev
Log:
other updates

Modified:
    cfe/trunk/www/comparison.html

Modified: cfe/trunk/www/comparison.html
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/www/comparison.html?rev=55278&r1=55277&r2=55278&view=diff

==============================================================================
--- cfe/trunk/www/comparison.html (original)
+++ cfe/trunk/www/comparison.html Sun Aug 24 00:56:54 2008
@@ -95,9 +95,10 @@
         refactoring tool that wants to rename 'x'.</li>
     <li>Clang can serialize its AST out to disk and read it back into another 
         program, which is useful for whole program analysis.  GCC does not have
-        this, but its current PCH mechanism is close.  However, GCC's current 
-        PCH support is architecturally only able to read the dump back into 
-        the exact same executable as the one that produced it.</li>
+        this.  GCC's PCH mechanism (which is just a dump of the compiler 
+        memory image) is related, but is architecturally only 
+        able to read the dump back into the exact same executable as the one 
+        that produced it (it is not a structured format).</li>
     <li>Clang is <a href="features.html#performance">much faster and uses far
         less memory</a> than GCC.</li>
     <li>Clang aims to provide extremely clear and concise diagnostics (error and
@@ -112,7 +113,7 @@
     <li>Clang inherits a number of features from its use of LLVM as a backend,
         including support for a bytecode representation for intermediate code,
         pluggable optimizers, link-time optimization support, Just-In-Time
-        compilation, etc.</li>
+        compilation, ability to link in multiple code generators, etc.</li>
     </ul>
 
     <!--=====================================================================-->
@@ -136,14 +137,15 @@
     
     <ul>
     <li>The Elsa community is extremely small and major development work seems
-        to have ceased in 2005, though it continues to be used by other projects
+        to have ceased in 2005, though it continues to be used by other small 
+        projects
         (e.g. Oink).  Clang has a vibrant community including developers that
         are paid to work on it full time.  In practice this means that you can
         file bugs against Clang and they will often be fixed for you.  If you
         use Elsa, you are (mostly) on your own for bug fixes and feature
         enhancements.</li>
     <li>Elsa is not built as a stack of reusable libraries like clang is.  It is
-        very difficult to use part of elsa without the whole front-end.  For
+        very difficult to use part of Elsa without the whole front-end.  For
         example, you cannot use Elsa to parse C/ObjC code without building an
         AST.  You can do this in Clang and it is much faster than building an
         AST.</li>
@@ -151,8 +153,8 @@
         difficult to accurately map from a source location in the AST back to
         its original position before preprocessing.  Like GCC, it does not keep
         track of macro expansions.</li>
-    <li>Elsa is slower and uses more memory than GCC, which requires far more
-        space and time than clang.</li>
+    <li>Elsa is even slower and uses more memory than GCC, which itself requires 
+        far more space and time than clang.</li>
     <li>Elsa only does partial semantic analysis.  It is intended to work on
         code that is already validated by GCC, so it does not do many semantic
         checks required by the languages it implements.</li>
@@ -164,7 +166,7 @@
        these shortcomings by loosely integrating a preprocessor. This allows it
        to map from a source location in the AST to the original position before
        preprocessing, providing it better support for static analysis and
-       refactoring.  For more details, please see the Pork page.</p>
+       refactoring.  Note that Pork is in stasis now too.</p>
 
     
     <!--=====================================================================-->





More information about the cfe-commits mailing list