summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-06-05 06:25:56 +0000
committerChris Lattner <sabre@nondot.org>2008-06-05 06:25:56 +0000
commit791f77b2d4359d619b4fc48814c129e087c48e89 (patch)
treee86795009ff38b119d630252bcac283664d16574 /docs
parentfb4db316d835fa9774d608ac58336a24c7867192 (diff)
downloadllvm-791f77b2d4359d619b4fc48814c129e087c48e89.tar.gz
llvm-791f77b2d4359d619b4fc48814c129e087c48e89.tar.bz2
llvm-791f77b2d4359d619b4fc48814c129e087c48e89.tar.xz
Start adding 2.3 content.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51977 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/ReleaseNotes.html80
1 files changed, 56 insertions, 24 deletions
diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html
index b0e3ba28e5..5b71a715ec 100644
--- a/docs/ReleaseNotes.html
+++ b/docs/ReleaseNotes.html
@@ -23,9 +23,6 @@
<p>Written by the <a href="http://llvm.org">LLVM Team</a><p>
</div>
-<h1><font color="red">THIS IS A WORK IN PROGRESS FOR LLVM 2.3 (currently in
-progress on SVN HEAD)</font></h1>
-
<!-- *********************************************************************** -->
<div class="doc_section">
<a name="intro">Introduction</a>
@@ -62,7 +59,7 @@ current one. To see the release notes for a specific releases, please see the
<div class="doc_text">
<p>This is the fourteenth public release of the LLVM Compiler Infrastructure.
-It includes many features and refinements from LLVM 2.2.</p>
+It includes a large number of features and refinements from LLVM 2.2.</p>
</div>
@@ -82,45 +79,55 @@ It includes many features and refinements from LLVM 2.2.</p>
<p>LLVM 2.2 was the last LLVM release to support llvm-gcc 4.0 and llvm-upgrade.
llvm-gcc 4.0 has been replaced with llvm-gcc 4.2. llvm-upgrade was useful for
-upgrading llvm 1.9 files to llvm 2.x syntax, but you can always use a previous
-llvm release to do this.</p>
+upgrading LLVM 1.9 files to LLVM 2.x syntax, but you can always use a previous
+LLVM release to do this. One nice impact of this is that the LLVM regressionn
+test suite no longer depends on llvm-upgrade, which makes it run faster.</p>
</div>
<!--=========================================================================-->
<div class="doc_subsection">
-<a name="frontends">llvm-gcc 4.2 and clang</a>
+<a name="majorfeatures">Major New Features</a>
</div>
<div class="doc_text">
-<p>LLVM 2.3 fully supports llvm-gcc 4.2 front-end. </p>
+<p>LLVM 2.3 includes several major new capabilities:</p>
-<p>The <a href="http://clang.llvm.org/">clang project</a> is an effort to build
-a set of new 'llvm native' front-end technologies for the LLVM optimizer
-and code generator. Currently, its C and Objective-C support is maturing
-nicely, and it has advanced source-to-source analysis and transformation
-capabilities. If you are interested in building source-level tools for C and
-Objective-C (and eventually C++), you should take a look. However, note that
-clang is not an official part of the LLVM 2.3 release. If you are interested in
-this project, please see its <a href="http://clang.llvm.org/">web site</a>.</p>
+<ul>
+<li>Multiple Return Value Support</li>
+</ul>
</div>
+
<!--=========================================================================-->
<div class="doc_subsection">
-<a name="majorfeatures">Major New Features</a>
+<a name="frontends">llvm-gcc 4.2 Improvements and Clang</a>
</div>
<div class="doc_text">
-<p>LLVM 2.3 includes several major new capabilities:</p>
+<p>LLVM 2.3 fully supports llvm-gcc 4.2 front-end.</p>
-<ul>
-</ul>
+<p>llvm-gcc 4.2 includes numerous fixes to better support the Objective-C
+front-end. Objective-C now works very well on Mac OS/X.</p>
+
+<p>llvm-gcc 4.2 includes many other fixes which improve conformance with the
+relevant parts of the GCC testsuite.</p>
+
+<p>The <a href="http://clang.llvm.org/">clang project</a> is an effort to build
+a set of new 'llvm native' front-end technologies for the LLVM optimizer
+and code generator. Currently, its C and Objective-C support is maturing
+nicely, and it has advanced source-to-source analysis and transformation
+capabilities. If you are interested in building source-level tools for C and
+Objective-C (and eventually C++), you should take a look. However, note that
+clang is not an official part of the LLVM 2.3 release. If you are interested in
+this project, please see its <a href="http://clang.llvm.org/">web site</a>.</p>
</div>
+
<!--=========================================================================-->
<div class="doc_subsection">
<a name="coreimprovements">LLVM Core Improvements</a>
@@ -130,8 +137,12 @@ this project, please see its <a href="http://clang.llvm.org/">web site</a>.</p>
<p>New features include:
</p>
-<ul>
+Common linkage?
+
+Atomic operation support, Alpha, X86, PowerPC. "__sync_syncronize"
+
+<ul>
</ul>
</div>
@@ -148,7 +159,8 @@ which allows us to implement more aggressive algorithms and make it run
faster:</p>
<ul>
-<li>MemOperand in the code generator.</li>
+<li>MemOperand in the code generator: describe me!.</li>
+<li>i128 support and APInt through most of codegen.</li>
</ul>
</div>
@@ -165,8 +177,9 @@ LLVM 2.3 optimizers support a few major enhancements:</p>
<ul>
-<li>Index set splitting on by default.</li>
-
+<li>Loop index set splitting on by default: describe me.</li>
+<li>LLVM includes a new memcpy optimization pass which optimizes out dead
+memcpy calls and unneeded copies of aggregates.</li>
</ul>
</div>
@@ -182,6 +195,25 @@ LLVM 2.3 optimizers support a few major enhancements:</p>
</p>
<ul>
+<li>llvm-gcc's X86-64 ABI conformance is far improved, particularly in the
+ area of passing and returning structures by value. llvm-gcc Compiled code
+ now interoperates very well on X86-64 systems with other compilers.</li>
+
+<li>The LLVM X86 backend now supports the support SSE 4.1 instruction set, and
+ the llvm-gcc 4.2 front-end supports the SSE 4.1 compiler builtins.</li>
+
+<li>The X86 backend now does a number of optimizations that aim to avoid
+ converting numbers back and forth from SSE registers to the X87 floating
+ point stack.</li>
+
+<li>The X86 backend now supports the "sseregparm" options in GCC, which allow
+ functions to be tagged as passing floating point values in SSE
+ registers.</li>
+
+<li>Trampolines (taking the address of a nested function) now work on
+ Linux/x86-64.</li>
+
+
</ul>
</div>