mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-25 20:59:51 +00:00
Cleanups, include a list of passes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8948 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f204012bd1
commit
47ad72ca5f
@ -36,12 +36,17 @@
|
||||
<!-- *********************************************************************** -->
|
||||
|
||||
This document contains the release notes for the LLVM compiler infrastructure,
|
||||
release 1.0. The most up-to-date version of this document can be found on the
|
||||
<a href="http://llvm.cs.uiuc.edu/releases/1.0/ReleaseNotes.html">LLVM 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>
|
||||
release 1.0. Here we describe how to install LLVM, as well as any known
|
||||
problems. The most up-to-date version of this document can be found on the <a
|
||||
href="http://llvm.cs.uiuc.edu/releases/1.0/">LLVM 1.0 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>
|
||||
|
||||
FIXME: What is this document? Where do I find other documents?<p>
|
||||
For more information about LLVM, including information about potentially more
|
||||
current releases, please check out the <a href="http://llvm.cs.uiuc.edu">main
|
||||
web site</a>. If you have questions or comments, the <a
|
||||
href="http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev">LLVM developer's mailing
|
||||
list</a> is a good place to send them.<p>
|
||||
|
||||
|
||||
<!-- *********************************************************************** -->
|
||||
@ -56,6 +61,46 @@ it is all new! In particular, we are providing a stable C compiler, beta C++
|
||||
compiler, a C back-end, stable X86 and Sparc V9 static and JIT code generators,
|
||||
as well as a large suite of scalar and interprocedural optimizations.<p>
|
||||
|
||||
The default optimizer sequence used by the C/C++ front-ends is:<p>
|
||||
|
||||
<ol>
|
||||
<li>Interprocedural dead code elimination (-globaldce)
|
||||
<li>Exception handling pruning (-prune-eh)
|
||||
<li>Function inlining (-inline)
|
||||
<li>Instruction combining (-instcombine)
|
||||
<li>Cast elimination (-raise)
|
||||
<li>Tail duplication (-tailduplicate)
|
||||
<li>CFG simplification (-simplifycfg)
|
||||
<li>Scalar replacement of aggregates (-scalarrepl)
|
||||
<li>Tail call elimination (-tailcallelim)
|
||||
<li>Instruction combining (-instcombine)
|
||||
<li>Reassociation (-reassociate)
|
||||
<li>Instruction combining (-instcombine)
|
||||
<li>CFG simplification (-simplifycfg)
|
||||
<li>Loop canonnicalization (-preheaders)
|
||||
<li>Loop invariant code motion, with scalar promotion (-licm)
|
||||
<li>Global common subexpression elimination, with load elimination (-gcse)
|
||||
<li>Sparse conditional constant propagation (-sccp)
|
||||
<li>Instruction combining (-instcombine)
|
||||
<li>Induction variable canonicalization (-indvars)
|
||||
<li>Aggressive dead code elimination (-adce)
|
||||
<li>CFG simplication (-simplifycfg)
|
||||
<li>Dead type elimination (-deadtypeelim)
|
||||
<li>Global constant merging (-constmerge)
|
||||
</ol><p>
|
||||
|
||||
At link-time, the following optimizations are run:<p>
|
||||
|
||||
<ol>
|
||||
<li>Global constant merging (-constmerge)
|
||||
<li>[optional] Internalization [which marks most functions and global variables static] (-internalize)
|
||||
<li>Interprocedural dead argument elimination (-deadargelim)
|
||||
<li>Instruction combining (-instcombine)
|
||||
<li>CFG simplification (-simplifycfg)
|
||||
<li>Interprocedural dead code elimination (-globaldce)
|
||||
</ol><p>
|
||||
|
||||
|
||||
TODO: Works on: SPEC CPU 2000<p>
|
||||
TODO: Works on: Olden/Ptrdist benchmarks<p>
|
||||
|
||||
@ -342,9 +387,9 @@ via the mailing lists.<p>
|
||||
|
||||
<hr><font size-1>
|
||||
|
||||
<address>By: <a href="mailto:sabre@nondot.org">Chris Lattner</a></address>
|
||||
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 5 14:01:10 CDT 2003
|
||||
Last modified: Tue Oct 7 16:32:37 CDT 2003
|
||||
<!-- hhmts end -->
|
||||
</body></html>
|
||||
|
Loading…
Reference in New Issue
Block a user