<li>temp</li>
</ol><p>
+In this release, the following Quality of Implementation issues were fixed:<p>
+
+<ol>
+<li><a href="http://llvm.cs.uiuc.edu/PR29">C++ front-end is not generating linkonce linkage type when it can</a></li>
+</ol><p>
+
In this release, the following bugs in the previous release were fixed:<p>
<ol>
<li><a href="http://llvm.cs.uiuc.edu/PR57">[inliner] Inlining invoke with PHI in unwind target is broken</a></li>
-<li>temp</li>
-<li>temp</li>
+<li><a href="http://llvm.cs.uiuc.edu/PR58">[linker] linkonce globals should link successfully to external globals</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR59">C++ frontend can crash when compiling virtual base classes</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR62">C backend fails on constant cast expr to ptr-to-anonymous struct</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR63">#ident is not recognized by C frontend</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR64">[constmerge] Constant merging pass merges constants with external linkage</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR65">C front-end miscompiles the builtin_expect intrinsic!</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR66">[scalarrepl] Scalar Replacement of aggregates is decimating structures it shouldn't be</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR67">1.0 precompiled libstdc++ does not include wchar_t support</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR68">llvmgcc asserts when compiling functions renamed with asm's</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR69">C frontend crashes on some programs with lots of types.</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR70">[instcombine] Resolving invoke inserts cast after terminator</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR71">llvm-as crashes when labels are used in phi nodes</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR72">[build problem] Callgraph.cpp not pulled in from libipa.a</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR79">llvm-gcc crashes compiling global union initializer</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR80">C front-end crash on empty structure</a></li>
+<li><a href="http://llvm.cs.uiuc.edu/PR81">CFrontend crashes when compiling C99 compound expressions</a></li>
+
</ol><p>
At this time, LLVM is known to work properly with SPEC CPU 2000, the Olden
<!-- _______________________________________________________________________ -->
</ul><h4><a name="c-fe"><hr size=0>Known problems with the C front-end</h4><ul>
-<li>Inline assembly is not yet supported.<p>
+</ul><b>Bugs:</b><ul><p>
+
+<li><a href="http://llvm.cs.uiuc.edu/PR6">Oversized integer bitfields cause crash</a>.<p>
-<li>"long double" is transformed by the front-end into "double". There is no
- support for floating point data types of any size other than 32 and 64 bits.
- <p>
<li>C99 Variable sized arrays do not release stack memory when they go out of
scope. Thus, the following program may run out of stack space:
<pre>
}
</pre><p>
+</ul><b>Notes:</b><ul><p>
+
+<li>Inline assembly is not yet supported.<p>
+
+<li>"long double" is transformed by the front-end into "double". There is no
+ support for floating point data types of any size other than 32 and 64 bits.
+ <p>
+
<li>The following Unix system functionality has not been tested and may not work:
<ol>
<li><tt>sigsetjmp</tt>, <tt>siglongjmp</tt> - These are not turned into the
- appropriate <tt>invoke</tt>/<tt>unwind</tt> instructions.
+ appropriate <tt>invoke</tt>/<tt>unwind</tt> instructions. Note that
+ <tt>setjmp</tt> and <tt>longjmp</tt> <em>are</em> compiled correctly.
<li><tt>getcontext</tt>, <tt>setcontext</tt>, <tt>makecontext</tt>
- These functions have not been tested.
</ol><p>
-<li>Bugs:<br>
- <a href="http://llvm.cs.uiuc.edu/PR6">Oversized integer bitfields cause crash</a>.<br>
-<p>
-
<li>Although many GCC extensions are supported, some are not. In particular,
the following extensions are known to <b>not be</b> supported:
<ol>
<!-- _______________________________________________________________________ -->
</ul><h4><a name="c++-fe"><hr size=0>Known problems with the C++ front-end</h4><ul>
-For this release, the C++ front-end is considered to be of <b>beta</b> quality.
-It works for a large number of simple programs, but has not been extensively
-tested. We welcome bug reports though!<p>
+For this release, the C++ front-end is considered to be fully functional but
+of <b>beta</b> quality. It has been tested and works for a number of simple programs that collectively exercise most of the language. Nevertheless, it has not been in use as long as the C front-end. Please report any bugs or problems.<p>
+
+</ul><b>Bugs</b>:<ul><p>
<li>The C++ front-end inherits all problems afflicting the <a href="#c-fe">C
front-end</a><p>
+</ul><b>Notes</b>:<ul><p>
+
<li>The C++ front-end is based on a pre-release of the GCC 3.4 C++ parser. This
parser is significantly more standards compliant (and picky) than prior GCC
versions. For more information, see the C++ section of the <a
different from the model used in the Itanium ABI, so <b>exceptions will not
interact correctly</b> .
-<li><a href="http://llvm.cs.uiuc.edu/PR11">Code for executing
-destructors when unwinding is not shared</a>.
+<li><a href="http://llvm.cs.uiuc.edu/PR11">Code for executing destructors when
+ unwinding is not shared</a> (this is a quality of implementation problem,
+ which does not effect functionality).<p>
<!-- _______________________________________________________________________ -->
Maintained By: <a href="http://llvm.cs.uiuc.edu/">The LLVM Team</a><br>
<!-- Created: Wed Oct 1 17:38:54 CDT 2003 -->
<!-- hhmts start -->
-Last modified: Sun Oct 26 23:41:10 CST 2003
+Last modified: Sat Nov 1 20:14:25 CST 2003
<!-- hhmts end -->
</body></html>