[llvm-commits] CVS: llvm/docs/ReleaseNotes.html

Chris Lattner lattner at cs.uiuc.edu
Tue Apr 18 21:03:39 PDT 2006



Changes in directory llvm/docs:

ReleaseNotes.html updated: 1.349 -> 1.350
---
Log message:

add some more notes


---
Diffs of the changes:  (+40 -4)

 ReleaseNotes.html |   44 ++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 40 insertions(+), 4 deletions(-)


Index: llvm/docs/ReleaseNotes.html
diff -u llvm/docs/ReleaseNotes.html:1.349 llvm/docs/ReleaseNotes.html:1.350
--- llvm/docs/ReleaseNotes.html:1.349	Tue Apr 18 01:32:08 2006
+++ llvm/docs/ReleaseNotes.html	Tue Apr 18 23:02:47 2006
@@ -87,7 +87,8 @@
 including GCC inline assembly, generic vector support, SSE and Altivec
 intrinsics, and several new GCC attributes.  In addition, llvm-gcc4 is 
 significantly faster than llvm-gcc3, respects -O options, its -c/-S options
-correspond to GCC's (they emit native code).</p>
+correspond to GCC's (they emit native code), and it has debugging support well
+underway.</p>
 
 <p>If you can use it, llvm-gcc4 is offers significant new functionality, and we
 hope that it will replace llvm-gcc3 completely in a future release.  
@@ -172,7 +173,7 @@
 </div>
 
 <!--_________________________________________________________________________-->
-<div class="doc_subsubsection"><a name="othernew">Optimizer 
+<div class="doc_subsubsection"><a name="optimizernew">Optimizer 
 Improvements</a></div>
 
 <div class="doc_text">
@@ -187,23 +188,56 @@
     bits are demanded or not.</li>
 <li>The Scalar Replacement of Aggregates pass (<tt>-scalarrepl</tt>) can now
     promote simple unions to registers.</li>
+<li>The Reassociation pass (<tt>-reassociate</tt>) can now
+    factor expressions, e.g. turning "A*A+A*B" into "A*(A+B)".</li>
 <li>Several LLVM passes are <a href="http://llvm.org/PR681">significantly
 faster</a>.</li>
 </ul>
 </div>
 
+<!--_________________________________________________________________________-->
+<div class="doc_subsubsection"><a name="codgennew">Code Generator 
+Improvements</a></div>
+
+<div class="doc_text">
+<ul>
+<li>LLVM has a new prepass (before register allocation) list scheduler, which
+    supports bottom-up and top-down scheduling, pluggable priority functions and
+    pluggable hazard recognizers.  The X86 backend uses this to reduce register
+    pressure and RISC targets schedule based on operation latency.</li>
+<li>The tblgen-based target description framework introduced in LLVM 1.6 has
+    several new features, useful for targets that can fold loads and stores into
+    operations, and features that make the .td files more expressive.</li>
+<li>The instruction selector is significantly faster in 1.7 than in 1.6.</li>
+<li>The X86, Alpha and Itanium backends use new DAG-DAG instruction selectors,
+    making them easier to maintain and generate slightly better code.</li>
+<li>The X86 backend now supports generation of Scalar SSE code for scalar FP
+    expressions.  LLVM provides significantly better performance with Scalar SSE
+    instructions than it does with the Intel floating point stack 
+    instructions.</li>
+<li>The Itanium backend now has a bundling pass, which improves performance
+    by ~10% and reduces code size (previously it unconditionally inserted a stop
+    bit after every instruction).</li>
+</ul>
+</div>
 
 <!--_________________________________________________________________________-->
 <div class="doc_subsubsection"><a name="othernew">Other New Features</a></div>
 
 <div class="doc_text">
 <ul>
+<li>The Mac OS/X PowerPC and X86 backends now have initial support Darwin DWARF
+    debugging information, however, debug info generation has been disabled for
+    the 1.7 release in llvmgcc4.</li>
+<li>LLVM includes the new <a href="docs/CommandGuide/html/llvm-config.html">
+    llvm-config</a> utility, which makes it easier to build and link programs
+    against the LLVM libraries when not using the LLVM makefiles.</li>
 <li>LLVM now supports first class global ctor/dtor initialization lists, no
     longer forcing targets to use "__main".</li>
 <li>LLVM supports assigning globals and functions to a particular section
     in the result executable using the GCC section attribute.</li>
 <li><a href="ExtendingLLVM.html">Adding intrinsics to LLVM</a> is now
-significantly easier.</li>
+     significantly easier.</li>
 <li>llvmgcc4 now fully supports C99 Variable Length Arrays, including dynamic
     stack deallocation.</li>
 
@@ -218,6 +252,8 @@
 
 <div class="doc_text">
 <ul>
+<li>The official LLVM URL is now <a href="http://llvm.org/">
+    http://llvm.org/</a>.</li>
 <li>The LLVM intrinsics used to be overloaded based on type: for example,
     <a href="LangRef.html#int_ctpop"><tt>llvm.ctpop</tt></a> could work with any
     integer datatype.  They are now separated into different intrinsics with
@@ -730,7 +766,7 @@
   src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!" /></a>
 
   <a href="http://llvm.org/">The LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2006/04/18 06:32:08 $
+  Last modified: $Date: 2006/04/19 04:02:47 $
 </address>
 
 </body>






More information about the llvm-commits mailing list