X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=blobdiff_plain;f=docs%2FReleaseNotes.html;h=09245885c268e3ca80b67838fa82cabecef7e59a;hp=d920b16ef1a59c8fef8de1112c49cbd661fe3fdb;hb=bd8c456274576089390ebd57a455a8e8b90747ea;hpb=4bb2969393203251c74e6a2a407b107384ac68f6 diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html index d920b16ef1a..09245885c26 100644 --- a/docs/ReleaseNotes.html +++ b/docs/ReleaseNotes.html @@ -72,20 +72,11 @@ href="http://llvm.cs.uiuc.edu/releases/">releases page.

This is the third public release of the LLVM compiler infrastructure.

-

At this time, LLVM is known to correctly compile and run all non-unwinding C +

At this time, LLVM is known to correctly compile and run all C & C++ SPEC CPU2000 benchmarks, the Olden benchmarks, and the Ptrdist benchmarks. It has also been used to compile many other programs. LLVM now also works with a broad variety of C++ programs, though it has still -received much less testing than the C front-end. -

- -

-The LLVM native code generators are very stable but do not currently support -unwinding (exception throwing or longjmping), which prevent them from -working with programs like the 253.perlbmk in SPEC CPU2000. The C -backend and the rest of LLVM supports these programs, so you can -still use LLVM with them. Support for unwinding will be added in a future -release. +received less testing than the C front-end.

@@ -95,7 +86,7 @@ This release implements the following new features:
    -
  1. +
  2. A new LLVM source-level debugger has been started.
@@ -106,8 +97,8 @@ In this release, the following missing features were implemented:
    -
  1. -
  2. +
  3. Exception handling support in the X86 +& Sparc native code generators
@@ -124,18 +115,26 @@ In this release, the following Quality of Implementation issues were fixed:
  • [llvmgcc] C front-end does not compile "extern inline" into linkonce
  • Bytecode format inconsistent
  • [loadvn/inline/scalarrepl] Slow optimizations with extremely large basic blocks
  • +
  • [asmparser] Really slow parsing of types with complex upreferences
  • -In this release, the following build problems were fixed: +LLVM gained several improvements to its build and installation +infrastructure in this release. There is now +a autoconf/AutoRegen.sh script that you can run to rebuild the +configure script and its associated files +(Bug 105) as well as beta support +for "make install" (Bug 208 and +Bug 220) and RPM package generation +(Bug 203). +Additionally, in this release, the following build problems were fixed:
    1. [build] Makefiles break if C frontend target string has unexpected value
    2. [build] hard-wired assumption that shared-library extension is ".so"
    3. make tools-only doesn't make lib/Support
    4. -
    5. [build] Usage of autoconf is awkward
    @@ -146,6 +145,7 @@ In this release, the following Code Quality issues were fixed:
    1. [loopsimplify] Many pointless phi nodes are created
    2. The X86 backend didn't generate fchs to negate floating point numbers
    3. +
    4. The X86 backend didn't expand memcpy() into the rep movs instruction
    @@ -166,12 +166,17 @@ canonicalization always makes 32-bit indvars
  • [constantmerge] Merging globals can cause use of invalid pointers!
  • [bcreader] Bytecode reader misreads 'long -9223372036854775808'!
  • +
  • Tail duplication does not update SSA form correctly.
  • VMCore mishandles double -0.0
  • [X86] X86 backend code generates -0.0 as +0.0
  • [loopsimplify] Loopsimplify incorrectly updates dominator information
  • +
  • [pruneeh] -pruneeh pass removes invoke instructions it shouldn't
  • +
  • [sparc] Boolean constants are emitted as true and false
  • +
  • Tablegen aborts on errors
  • +

    Bugs in the C/C++ front-end:

      @@ -181,6 +186,7 @@ management functions in libc runtime to allow them to be overriden
    1. [llvmg++] Dynamically initialized constants cannot be marked 'constant'
    2. [llvmgcc] floating-point unary minus is incorrect for +0.0
    3. [llvm-gcc] miscompilation of 'X = Y = Z' with aggregate values
    4. +
    5. [llvmgcc] Structure copies result in a LOT of code
    @@ -257,18 +263,7 @@ The gccld program does not link objects/archives in the order specified on the command line. - -
  • - -Tail duplication does not update SSA form correctly. - -
  • - -
  • [lowerinvoke] The -lowerinvoke pass -does not insert calls to setjmp/longjmp.
  • - - @@ -295,21 +290,6 @@ Initialization of global union variables can only be done with the largest union member. - -
  • - -Functions marked "extern inline" are not compiled into LLVM with linkonce -linkage. - -
  • - - -
  • -The memory management functions in the libc runtime -need weak linkage so that they can be -overridden. - -
  • @@ -478,12 +458,6 @@ Please report any bugs or problems.

    @@ -530,12 +504,7 @@ href="http://gcc.gnu.org/gcc-3.4/changes.html">GCC 3.4 release notes.
    @@ -548,17 +517,7 @@ or calls the C longjmp function will abort.