diff options
author | Chris Lattner <sabre@nondot.org> | 2008-06-08 21:19:07 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-06-08 21:19:07 +0000 |
commit | d95b59644b0220621096f788740e5a42102930ed (patch) | |
tree | 40aac4b2e5d1c7e4e3695686c372a4320e1eaf0c /docs | |
parent | ec142ee0b2a63ede390353860e0f22201b850d8b (diff) | |
download | external_llvm-d95b59644b0220621096f788740e5a42102930ed.zip external_llvm-d95b59644b0220621096f788740e5a42102930ed.tar.gz external_llvm-d95b59644b0220621096f788740e5a42102930ed.tar.bz2 |
add more notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52099 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/ReleaseNotes.html | 52 |
1 files changed, 37 insertions, 15 deletions
diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html index f1538e0..1bc96bd 100644 --- a/docs/ReleaseNotes.html +++ b/docs/ReleaseNotes.html @@ -85,6 +85,9 @@ 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 regression test suite no longer depends on llvm-upgrade, which makes it run faster.</p> +<p><tt>llvm2cpp</tt> tool has been folded into llc, use + <tt>llc -march=cpp</tt> instead of <tt>llvm2cpp</tt>.</p> + <p>LLVM API Changes:</p> <ul> @@ -249,8 +252,11 @@ deletion pass, which <em>is</em> safe for infinite loops.</li> <li>LLVM now includes a simple 'Jump Threading' pass, which attempts to simplify conditional branches using information about predecessor blocks, simplifying - the control flow graph. This pass is pretty basic at this point, but catches - some important cases and provides a foundation to build on.</li> + the control flow graph. This pass is pretty basic at this point, but + catches some important cases and provides a foundation to build on.</li> + +<li>Several corner case bugs which could lead to deleting volatile memory + accesses have been fixed.</li> </ul> </div> @@ -275,7 +281,9 @@ faster:</p> target-specific support. Use of APInt is also a step toward support for non-power-of-2 integer sizes.</li> -<li>Several compile time speedups for code with large basic blocks.</li> +<li>LLVM 2.3 includes several compile time speedups for code with large basic + blocks, particular in the instruction selection phase, register allocation, + scheduling, and tail merging/jump threading.</li> <li>Several improvements which make llc's <tt>--view-sunit-dags</tt> visualization of scheduling dependency graphs easier to understand.</li> @@ -286,6 +294,16 @@ faster:</p> <li><tt>memcpy</tt> lowering in the backend is more aggressive, particularly for <tt>memcpy</tt> calls introduced by the code generator when handling pass-by-value structure argument copies.</li> + +<li>Inline assembly with multiple register results now returns those results + directly in the appropriate registers, rather than going through memory. + Inline assembly that uses constraints like "ir" with immediates now use the + 'i' form when possible instead of always loading the value in a register. + This saves an instruction and reduces register use.</li> + +<li>Added support for PIC/GOT style tail calls on x86/32 and initial support + for tail calls on PowerPC 32 (it may also work on ppc64 but not + thoroughly tested).</li> </ul> </div> @@ -336,6 +354,9 @@ faster:</p> <li>The register allocator can now rematerialize PIC-base computations.</li> +<li>The "t" and "f" inline assembly constraints for the X87 floating point stack + now work. However, the "u" constraint is still not fully supported.</li> + </ul> </div> @@ -351,8 +372,6 @@ faster:</p> <ul> <li>The LLVM C backend now supports vector code.</li> - - </ul> </div> @@ -370,8 +389,9 @@ faster:</p> <ul> <li>LLVM now builds with GCC 4.3.</li> -<li><tt>llvm2cpp</tt> tool has been folded into llc, use - <tt>llc -march=cpp</tt></li> +<li>Bugpoint now supports running custom scripts (with the <tt>-run-custom</tt> + option) to determine how to execute the command and whether it is making + forward process.</li> </ul> </div> @@ -456,8 +476,8 @@ href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">LLVMdev list</a>.</p> all <a href="http://llvm.org/PR879">inline assembly that uses the X86 floating point stack</a>. It supports the 'f' and 't' constraints, but not 'u'.</li> - <li>The X86 backend generates inefficient floating point code when configured to - generate code for systems that don't have SSE2.</li> + <li>The X86 backend generates inefficient floating point code when configured + to generate code for systems that don't have SSE2.</li> <li>Win64 code generation wasn't widely tested. Everything should work, but we expect small issues to happen. Also, llvm-gcc cannot build mingw64 runtime currently due @@ -494,7 +514,8 @@ processors, thumb programs can crash or produce wrong results (<a href="http://llvm.org/PR1388">PR1388</a>).</li> <li>Compilation for ARM Linux OABI (old ABI) is supported, but not fully tested. </li> -<li>There is a bug in QEMU-ARM (<= 0.9.0) which causes it to incorrectly execute +<li>There is a bug in QEMU-ARM (<= 0.9.0) which causes it to incorrectly + execute programs compiled with LLVM. Please use more recent versions of QEMU.</li> </ul> @@ -651,11 +672,12 @@ crashing if an exception is raised. Workaround: do not use -E.</li> or finish at a non-byte offset</a> in a record. Workaround: do not pack records or use representation clauses that result in a field of a non-discrete type starting or finishing in the middle of a byte.</li> -<li>The <tt>lli</tt> interpreter <a href="http://llvm.org/PR2009">considers 'main' -as generated by the Ada binder to be invalid</a>. -Workaround: hand edit the file to use pointers for <tt>argv</tt> and <tt>envp</tt> rather than -integers.</li> -<li>The <tt>-fstack-check</tt> option <a href="http://llvm.org/PR2008">is ignored</a>.</li> +<li>The <tt>lli</tt> interpreter <a href="http://llvm.org/PR2009">considers +'main' as generated by the Ada binder to be invalid</a>. +Workaround: hand edit the file to use pointers for <tt>argv</tt> and +<tt>envp</tt> rather than integers.</li> +<li>The <tt>-fstack-check</tt> option <a href="http://llvm.org/PR2008">is +ignored</a>.</li> </ul> </div> |