[llvm-commits] CVS: llvm-www/releases/1.3/announcement.txt

Chris Lattner lattner at cs.uiuc.edu
Fri Aug 13 14:09:00 PDT 2004



Changes in directory llvm-www/releases/1.3:

announcement.txt updated: 1.1 -> 1.2
---
Log message:

Write the announcement


---
Diffs of the changes:  (+57 -17)

Index: llvm-www/releases/1.3/announcement.txt
diff -u llvm-www/releases/1.3/announcement.txt:1.1 llvm-www/releases/1.3/announcement.txt:1.2
--- llvm-www/releases/1.3/announcement.txt:1.1	Thu Aug  5 15:03:53 2004
+++ llvm-www/releases/1.3/announcement.txt	Fri Aug 13 16:08:49 2004
@@ -5,36 +5,76 @@
 Infrastructure.  If you are new to LLVM, please see "WHAT IS LLVM?" below.
 If you are already familiar with LLVM, skip to "WHAT IS NEW IN LLVM 1.3?"
 
+
 WHAT IS LLVM?
 
-  LLVM is a new infrastructure designed for compile-time, link-time, runtime,
-  and "idle-time" optimization of programs from arbitrary programming languages.
-  LLVM is written in C++ and has been developed over the past 4 years at the
-  University of Illinois.  It currently supports compilation of C and C++
-  programs using front-ends derived from GCC 3.4.  After optimization, it can
-  emit native X86, native SparcV9, or C code for the optimized program.  New
-  front-ends are in early development for Java bytecode and CAML, and new
-  backends are in early development for several other targets.
+  LLVM is a set of libraries and tools that make it easy to build compilers,
+  optimizers, Just-In-Time code generators, and many other compiler-related
+  programs.  As examples, LLVM includes C, C++, and Stacker compilers, that use
+  the components to build aggressively optimizing compilers.  LLVM can compile
+  code to X86, SparcV9, PowerPC (beta support), or C code.  Alternatively, LLVM
+  can JIT compiler code for X86 and SparcV9.
+
+  The strengths of LLVM are its extremely simple design (which makes it easy to
+  understand and use), source-language independence, powerful mid-level
+  optimizer, extensibility, and its stability and reliability.
 
   The LLVM infrastructure is publicly available under a non-restrictive open
   source license.  More information about LLVM and the contents of the
   publicly released software is available at the LLVM Web site above.
 
+
 WHAT IS NEW IN LLVM 1.3?
 
-  This release is substantially faster and introduces several new features,
-  including: new optimizations, support for several GCC extensions that were not
-  supported in 1.1, and support for profile-guided optimization.  The X86 code
-  generator in LLVM 1.3 also produces much better native code, and LLVM now
-  comes with a beta-quality global register allocator.  Finally, LLVM 1.3
-  includes the usual collection of bug fixes and other minor improvements.
+  This release takes less time to produce faster compiled code, and is portable
+  to new targets (including Cygwin).  It also includes several new features,
+  such as man pages for all LLVM tools, accurate garbage collection, some new
+  loop transformations, and includes beta support for powerpc code generation.
+  LLVM 1.3 also includes the following major improvements:
+
+  Core improvements:
+    * A new "select" instruction provides efficient conditional move support.
+    * Accurate garbage collection is fully supported by all code generators.
+    * LLVM now supports structures with more than 256 elements in them.
+    * The bytecode file format is now documented.
+    * Man pages are available for all LLVM tools.
+    * LLVM now supports unordered floating point comparisons.
+
+  Optimization improvements:
+    * The induction variable analysis routines are much more aggressive.
+    * The -indvars pass implements linear function test replacement and exit
+      value substitution.
+    * LLVM now include a context-senstitive alias analysis for global variables.
+    * LLVM includes an implementation of Andersen's alias analysis.
+    * LLVM includes new loop unrolling and loop unswitching passes.
+    * LLVM includes a simple dead store elimination pass.
+
+  Code generator improvements:
+    * The native code generators now default to a global register allocator.
+    * LLVM includes a new "skeleton" code generator.
+    * LLC and LLI can load code generators from .so files with the -load option.
+    * More code generator components are autogenerated from the abstract target
+      description.
+    * The X86 backend now generates substantially better code in many cases.
+
+  Other improvements:
+    * Bugpoint can now debug arbitrary modes of the LLC and LLI tools.
+    * Bugpoint can now narrow down codegen miscompilations to the basic block
+      being miscompiled (in many cases).
+    * Bugpoint can now debug infinite-loop inducing miscompilations.
+
+  Finally, LLVM 1.3 includes the usual collection of bug fixes and other minor
+  improvements.
 
   A full list of new features and bug-fixes are listed in the Release Notes:
     http://llvm.cs.uiuc.edu/releases/1.3/docs/ReleaseNotes.html#whatsnew
 
-  For an easier to read set of changes, please see the status updates:
-   http://mail.cs.uiuc.edu/pipermail/llvm-announce/2004-March/000006.html
-   http://mail.cs.uiuc.edu/pipermail/llvm-announce/2004-February/000005.html
+  For an easier to read (and more details) list of changes, please see the
+  status updates:
+   http://mail.cs.uiuc.edu/pipermail/llvm-announce/2004-May/000008.html
+   http://mail.cs.uiuc.edu/pipermail/llvm-announce/2004-June/000009.html
+   http://mail.cs.uiuc.edu/pipermail/llvm-announce/2004-July/000010.html
+
 
 HOW DO I GET IT?
 






More information about the llvm-commits mailing list