diff options
author | Bill Wendling <isanbard@gmail.com> | 2011-08-03 22:18:20 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2011-08-03 22:18:20 +0000 |
commit | 2626dba9c5515d2e534c117bb16ceb03dd4d0930 (patch) | |
tree | bcb8a124d8e55520c15a83e34a9762d4f9b73fbb /docs | |
parent | 56cb3e3ccbc766086841d04fb8f136c7b4718dd5 (diff) | |
download | llvm-2626dba9c5515d2e534c117bb16ceb03dd4d0930.tar.gz llvm-2626dba9c5515d2e534c117bb16ceb03dd4d0930.tar.bz2 llvm-2626dba9c5515d2e534c117bb16ceb03dd4d0930.tar.xz |
Remove the LowerSetJmp pass. It wasn't used effectively by any of the targets.
This is some of my original LLVM code. *wipes tear*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136821 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/Passes.html | 30 | ||||
-rw-r--r-- | docs/ReleaseNotes.html | 14 |
2 files changed, 8 insertions, 36 deletions
diff --git a/docs/Passes.html b/docs/Passes.html index b7f70b91cb..9393410a36 100644 --- a/docs/Passes.html +++ b/docs/Passes.html @@ -161,7 +161,6 @@ perl -e '$/ = undef; for (split(/\n/, <>)) { s:^ *///? ?::; print " <p>\n" if ! <tr><td><a href="#loop-unswitch">-loop-unswitch</a></td><td>Unswitch loops</td></tr> <tr><td><a href="#loweratomic">-loweratomic</a></td><td>Lower atomic intrinsics to non-atomic form</td></tr> <tr><td><a href="#lowerinvoke">-lowerinvoke</a></td><td>Lower invoke and unwind, for unwindless code generators</td></tr> -<tr><td><a href="#lowersetjmp">-lowersetjmp</a></td><td>Lower Set Jump</td></tr> <tr><td><a href="#lowerswitch">-lowerswitch</a></td><td>Lower SwitchInst's to branches</td></tr> <tr><td><a href="#mem2reg">-mem2reg</a></td><td>Promote Memory to Register</td></tr> <tr><td><a href="#memcpyopt">-memcpyopt</a></td><td>MemCpy Optimization</td></tr> @@ -1478,35 +1477,6 @@ if (X < 3) {</pre> <!-------------------------------------------------------------------------- --> <h3> - <a name="lowersetjmp">-lowersetjmp: Lower Set Jump</a> -</h3> -<div> - <p> - Lowers <tt>setjmp</tt> and <tt>longjmp</tt> to use the LLVM invoke and unwind - instructions as necessary. - </p> - - <p> - Lowering of <tt>longjmp</tt> is fairly trivial. We replace the call with a - call to the LLVM library function <tt>__llvm_sjljeh_throw_longjmp()</tt>. - This unwinds the stack for us calling all of the destructors for - objects allocated on the stack. - </p> - - <p> - At a <tt>setjmp</tt> call, the basic block is split and the <tt>setjmp</tt> - removed. The calls in a function that have a <tt>setjmp</tt> are converted to - invoke where the except part checks to see if it's a <tt>longjmp</tt> - exception and, if so, if it's handled in the function. If it is, then it gets - the value returned by the <tt>longjmp</tt> and goes to where the basic block - was split. <tt>invoke</tt> instructions are handled in a similar fashion with - the original except block being executed if it isn't a <tt>longjmp</tt> - except that is handled by that function. - </p> -</div> - -<!-------------------------------------------------------------------------- --> -<h3> <a name="lowerswitch">-lowerswitch: Lower SwitchInst's to branches</a> </h3> <div> diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html index 50cd906119..5cd248c2db 100644 --- a/docs/ReleaseNotes.html +++ b/docs/ReleaseNotes.html @@ -576,14 +576,13 @@ it run faster:</p> <div> -<p>If you're already an LLVM user or developer with out-of-tree changes based -on LLVM 2.9, this section lists some "gotchas" that you may run into upgrading -from the previous release.</p> +<p>If you're already an LLVM user or developer with out-of-tree changes based on + LLVM 2.9, this section lists some "gotchas" that you may run into upgrading + from the previous release.</p> <ul> -<!-- -<li></li> ---> + <li>The <code>LowerSetJmp</code> wasn't used effectively by any of the + targets and was removed.</li> </ul> </div> @@ -667,6 +666,9 @@ from the previous release.</p> isn't used by the current front-ends. So this was removed during the exception handling rewrite.</li> +<li>The <code>LLVMAddLowerSetJmpPass</code> function from the C API was removed + because the <code>LowerSetJmp</code> pass was removed.</li> + </ul> </div> |