diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html
index 938a264..d952fd8 100644
--- a/docs/ReleaseNotes.html
+++ b/docs/ReleaseNotes.html
@@ -4,11 +4,11 @@
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
   <link rel="stylesheet" href="llvm.css" type="text/css">
-  <title>LLVM 1.4 Release Notes</title>
+  <title>LLVM 1.5 Release Notes</title>
 </head>
 <body>
 
-<div class="doc_title">LLVM 1.4 Release Notes</div>
+<div class="doc_title">LLVM 1.5 Release Notes</div>
  
 <ol>
   <li><a href="#intro">Introduction</a></li>
@@ -31,7 +31,7 @@
 </ol>
 
 <div class="doc_author">
-  <p>Written by the <a href="http://llvm.cs.uiuc.edu">LLVM team</a><p>
+  <p>Written by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a><p>
 </div>
 
 <!-- *********************************************************************** -->
@@ -43,10 +43,10 @@
 <div class="doc_text">
 
 <p>This document contains the release notes for the LLVM compiler
-infrastructure, release 1.4.  Here we describe the status of LLVM, including any
+infrastructure, release 1.5.  Here we describe the status of LLVM, including any
 known problems and improvements from the previous release.  The most up-to-date
 version of this document can be found on the <a
-href="http://llvm.cs.uiuc.edu/releases/1.4/">LLVM 1.4 web site</a>.  If you are
+href="http://llvm.cs.uiuc.edu/releases/1.5/">LLVM 1.5 web site</a>.  If you are
 not reading this on the LLVM web pages, you should probably go there because
 this document may be updated after the release.</p>
 
@@ -56,9 +56,9 @@
 href="http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev">LLVM developer's mailing
 list</a> is a good place to send them.</p>
 
-<p>Note that if you are reading this file from CVS, this document applies
-to the <i>next</i> release, not the current one.  To see the release notes for
-the current or previous releases, see the <a
+<p>Note that if you are reading this file from CVS or the main LLVM web page,
+this document applies to the <i>next</i> release, not the current one.  To see
+the release notes for the current or previous releases, see the <a
 href="http://llvm.cs.uiuc.edu/releases/">releases page</a>.</p>
 
 </div>
@@ -71,20 +71,11 @@
 
 <div class="doc_text">
 
-<p>This is the fifth public release of the LLVM compiler infrastructure.</p>
+<p>This is the sixth public release of the LLVM compiler infrastructure.</p>
 
-<p> At this time, LLVM is known to correctly compile on a broad range of
-C and C++ programs, including the SPEC CPU95 &amp; 2000 suite.  This release
-includes several major enhancements to the LLVM system, including a new 
-PowerPC JIT, enhancements to the C/C++ front-end to provide source line number
-information in LLVM, a new <a href="CommandGuide/html/llvmc.html">compiler
-driver</a>, and several other enhancements listed below.  It also includes
-bug fixes for those problems found since the 1.3 release.</p>
-
-<p>Note that this release seperates the LLVM Program Testsuite out of the 
-main LLVM distribution into a seperate CVS repository and tarball.  This
-reduces the size of the main LLVM distribution.  Also note that LLVM now
-builds tools into llvm/Debug/bin by default instead of llvm/tools/Debug.</p>
+<p> At this time, LLVM is known to correctly compile on a broad range of C and
+C++ programs, including the SPEC CPU95 &amp; 2000 suite. TODO.  It also includes
+bug fixes for those problems found since the 1.4 release.</p>
 
 </div>
 
@@ -95,67 +86,7 @@
 
 <div class="doc_text">
 <ol>
-  <li>LLVM now includes a Just-In-Time compiler for the PowerPC target.</li>
-  <li>llvmgcc and llvmg++ now emit source line number information when '-g' is
-  passed in, making it possible to map from LLVM code back to source.
-  This information is currently used by llvm-db and can be used with other 
-  tools and passes.</li>
-  <li>The test/Programs hierarchy <a href="http://llvm.cs.uiuc.edu/PR257">has
-    been moved out of the main LLVM tree</a> into a separate CVS repository and
-    tarball. This shrinks the distribution size of LLVM itself significantly.
-  </li>
-  <li>LLVM now optimizes global variables more aggressively than it did 
-  before.</li>
-  <li>LLVM now includes the new '<tt>undef</tt>' value and 
-  <a href="LangRef.html#i_unreachable"><tt>unreachable</tt></a> instruction,
-  which give the optimizer more information about the behavior of the
-  program.
-  </li>
-  <li>Bytecode compression with bzip2 has been implemented. All bytecode files
-  generated by LLVM will now be compressed by default. Compression can be 
-  disabled with the <tt>-disable-compression</tt> option to the tools that can 
-  generate bytecode files.
-  </li>
-  <li>A generic <a href="CommandGuide/html/llvmc.html">compiler driver</a>
-  (llvmc) and
-  an associated <a href="CommandGuide/html/llvm-ld.html">generic linker</a>
-  (llvm-ld) have been added. The compiler driver is generic because it can be
-  configured
-  to pre-process, translate, optimize, assemble, and link code from any source
-  language with an LLVM front-end. This makes it easier for compiler writers
-  to hide the multiple steps required to compile a program (compiling,
-  optimizing, linking runtime libraries, etc) in one simple command.
-  </li>
-  <li>The <a href="http://llvm.cs.uiuc.edu/PR263">dependent libraries</a> 
-  feature has been implemented. This allows front end compilers to indicate in
-  the bytecode which libraries the bytecode needs to be linked with. Both the
-  C/C++ and Stacker front ends support generating the required dependencies. 
-  The linker now supports using this information to ensure required libaries are
-  linked into the module. This minimizes the need to use the <tt>-l</tt> option
-  when using <a href="CommandGuide/html/llvmc.html"><tt>llvmc</tt></a>.
-  </li>
-  <li>The LLVM makefiles have been improved to build LLVM much faster and 
-  includes new targets (like dist-check, uninstall). One important user-visible
-  change is that libraries and tools will now be built into 
-  <tt>$builddir/Debug/{bin,lib}</tt>
-  instead of <tt>$builddir/tools/Debug</tt> and <tt>$builddir/lib/Debug</tt>
-  (Similarly for <tt>Release</tt> and <tt>Profile</tt> builds).
-  </li>
-  <li>The LLVM source code is much more compatible with Microsoft Visual C++,
-  including the JIT and runtime-code generation, though the entire system 
-  may not work with it.
-  </li>
-  <li>The JIT-Target interfaces <a href="http://llvm.cs.uiuc.edu/PR283">are 
-    now much simpler</a> and more powerful.
-  </li>
-  <li>LLVM now provides llvm-ar and llvm-ranlib tools for working with archives
-      of LLVM bytecode files.</li>
-  <li>zlib and libpng are <a href="http://llvm.cs.uiuc.edu/PR417">no longer
-      included in the main LLVM tarball</a>.</li>
-  <li>The LLVM code generator now automatically generates assembly code writers
-      from an abstract target descriptions, eliminating the need to write
-      assembly printers manually.</li>
-  <li>LLVM regression and feature tests now use DejaGNU instead of QMTest.</li>
+  <li></li>
 </ol>
 
 </div>
@@ -169,16 +100,7 @@
 <div class="doc_text">
 
 <ol>
-  <li><a href="http://llvm.cs.uiuc.edu/PR419">JIT interface should support
-    arbitrary calls</a>
-  </li>
-  <li>The <tt>llvm-ar</tt> tool was previously incomplete and didn't properly
-  support other ar(1) implementations. This has been corrected. <tt>llvm-ar</tt>
-  now fully supports all archive editing functions, table of contents listing,
-  extraction, and printing. It can also read BSD4.4/MacOSX and SVR4 style 
-  archives. See <a href="CommandGuide/html/llvm-ar.html">llvm-ar</a> for 
-  details.
-  </li>
+   <li></li>
 </ol>
 
 </div>
@@ -192,26 +114,7 @@
 <div class="doc_text">
 
 <ol>
-  <li>The linker no longer <a href="http://llvm.cs.uiuc.edu/PR426">emits many
-      useless warnings</a> when linking C++ programs.
-  </li>
-  <li>The LLVM <a href="http://llvm.cs.uiuc.edu/PR352">#include namespace</a>
-      has been made consistent.  Files in <tt>llvm/include/{Support,Config}</tt>
-      are now located in <tt>llvm/include/llvm/{Support,Config}</tt>.
-  </li>
-  <li>The names of the libraries generated by compiling LLVM source have been 
-  changed to ensure they do not conflict with other packages upon installation.
-  Each LLVM library is now prefixed with LLVM and uses mixed clase. For example,
-  the library <tt>libasmparser.a</tt> in 1.3 has become
-  <tt>libLLVMAsmParser.a</tt> in release 1.4.
-  </li>
-  <li>The C++ frontend no longer expands and emits <a 
-      href="http://llvm.cs.uiuc.edu/PR459">all inline functions, even if they
-      are unused</a>.  It now properly tracks which functions are needed and
-      only compiles those.</li>
-
-  <li>Many improvements in the <a href="http://llvm.cs.uiuc.edu/PR256">autoconf
-      and makefile systems</a> have been implemented.</li>
+   <li></li>
 </ol>
 </div>
 
@@ -223,12 +126,7 @@
 
 <div class="doc_text">
 <ol>
-  <li>The optimizer produces <a href="http://llvm.cs.uiuc.edu/PR362">more 
-      efficient code for std::min/std::max</a> and other similar functions.</li>
-  <li>The X86 backend generates substantially faster code for floating point
-      intensive programs.</li>
-  <li>The PowerPC backend generates more efficient code in many common
-      scenarios.</li>
+   <li></li>
 </ol>
 </div>
 
@@ -243,48 +141,13 @@
 <p>Bugs fixed in the LLVM Core:</p>
 
 <ol>
-  <li><a href="http://llvm.cs.uiuc.edu/PR420">[licm] LICM invalidates alias 
-    analysis info and uses broken information</a> (optimizer crash)</li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR422">[asmwriter] Asmwriter is really 
-    slow for functions with lots of values</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR423">[anders-aa] Andersen's AA is 
-    completely broken in LLVM 1.3</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR430">[bcwriter] Empty compaction 
-    tables defined</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR227">[X86] llc output for functions 
-    w/certain names tickles GNU 'as' bugs</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR472">[cbackend] Static globals are 
-      prototyped as 'extern'</a></li>
+   <li></li>
 </ol>
 
 <p>Bugs in the C/C++ front-end:</p>
 
 <ol>
-  <li><a href="http://llvm.cs.uiuc.edu/PR445">[llvmg++] not enough templates are
-    instantiated</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR450">[llvmg++] Extern const globals 
-    cannot be marked 'constant' if they have nontrivial ctors or dtors</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR461">[llvmgcc] Crash compiling unnamed 
-    bitfield which does not increase struct size</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR424">[llvmgcc] llvmgcc emits invalid 
-    constant exprs</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR421">[llvmg++] Crash initializing 
-    array with constructors in hard EH situations</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR397">[llvm-gcc] Inline function 
-    redefinitions error due to 'asm' function rename</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR244">[llvm-gcc] Error when an 
-    implicitly external function is re-declared as static</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR360">[llvmgcc] Structure field with 
-    non-constant offset crashes llvmgcc</a></li>
-  <li><a href="http://llvm.cs.uiuc.edu/PR447">[llvmg++] Crash compiling 
-    friend with default argument</a></li>
-</ol>
-
-<p>Bugs fixed in the Sparc V9 back-end:</p>
-
-<ol>
-  <li><a href="http://llvm.cs.uiuc.edu/PR428">[sparcv9] regalloc assertion
-    failure with certain indirect calls</a></li>
+   <li></li>
 </ol>
 
 </div>
@@ -314,17 +177,6 @@
 porting may be required to get LLVM to work on new platforms.  We welcome your
 portability patches and reports of successful builds or error messages.</p>
 
-<!--
-<p>Note that the LLVM build system does not currently support directories with 
-spaces on them when running on Win32/cygwin.  We strongly recommend running
-LLVM and the C frontend out of a top-level directory without spaces (e.g., 
-<tt>/cygdrive/c/llvm</tt>).  Also, make sure to install <b>all</b> of the 
-cygwin packages.  By default, many important tools are not installed that 
-are needed by the LLVM build process or test suite (e.g., /bin/time).  Finally,
-please make sure that there are no directories with spaces in them in your
-PATH environment variable.</p>
--->
-
 </div>
 
 <!-- *********************************************************************** -->
