| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" |
| "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <title>Documentation for the LLVM System</title> |
| <link rel="stylesheet" href="llvm.css" type="text/css"> |
| </head> |
| <body> |
| |
| <div class="doc_title">Documentation for the LLVM System</div> |
| |
| <div class="doc_text"> |
| <ul> |
| <li><a href="#llvmdesign">LLVM Design</a></li> |
| <li><a href="#userguide">LLVM User Guides</a></li> |
| <li><a href="#llvmprog">General LLVM Programming Documentation</a></li> |
| <li><a href="#subsystems">LLVM Subsystem Documentation</a></li> |
| <li><a href="#maillist">LLVM Mailing Lists</a></li> |
| </ul> |
| </div> |
| |
| <div class="doc_author"> |
| <p>Written by <a href="http://llvm.cs.uiuc.edu">The LLVM Team</a></p> |
| </div> |
| |
| <!--=======================================================================--> |
| <div class="doc_section"><a name="llvmdesign">LLVM Design</a></div> |
| <!--=======================================================================--> |
| |
| <ul> |
| <li><a href="http://llvm.cs.uiuc.edu/pubs/2004-01-30-CGO-LLVM.html">LLVM: A |
| Compilation Framework for Lifelong Program Analysis & Transformation</a>: - |
| Describes the LLVM instruction set and compilation strategy. This should be the |
| first document you read to get an overview of LLVM.</li> |
| |
| <li><a href="LangRef.html">LLVM Reference Manual</a> - Defines the LLVM |
| intermediate representation, the assembly form of the different nodes, and |
| provides reference information about the different tools in LLVM.</li> |
| |
| <li><a href="BytecodeFormat.html">LLVM Bytecode File Format</a></li> |
| |
| </ul> |
| |
| <!--=======================================================================--> |
| <div class="doc_section"><a name="userguide">LLVM User Guides</a></div> |
| <!--=======================================================================--> |
| |
| <ul> |
| <li><a href="GettingStarted.html">The LLVM Getting Started Guide</a> - |
| Discusses how to get up and running quickly with the LLVM infrastructure. |
| Everything from unpacking and compilation of the distribution to execution of |
| some tools.</li> |
| |
| <li><a href="CommandGuide/index.html">LLVM Command Guide</a> - A reference |
| manual for the LLVM command line utilities ("man" pages for LLVM tools).<br/> |
| Current tools: |
| <a href="CommandGuide/html/llvm-ar.html">llvm-ar</a>, |
| <a href="CommandGuide/html/llvm-as.html">llvm-as</a>, |
| <a href="CommandGuide/html/llvm-dis.html">llvm-dis</a>, |
| <a href="CommandGuide/html/opt.html">opt</a>, |
| <a href="CommandGuide/html/llc.html">llc</a>, |
| <a href="CommandGuide/html/lli.html">lli</a>, |
| <a href="CommandGuide/html/llvm-link.html">llvm-link</a>, |
| <a href="CommandGuide/html/analyze.html">analyze</a>, |
| <a href="CommandGuide/html/llvm-nm.html">llvm-nm</a>, |
| <a href="CommandGuide/html/llvm-prof.html">llvm-prof</a>, |
| <a href="CommandGuide/html/llvmgcc.html">llvmgcc</a>, |
| <a href="CommandGuide/html/llvmgxx.html">llvmgxx</a>, |
| <a href="CommandGuide/html/gccas.html">gccas</a>, |
| <a href="CommandGuide/html/gccld.html">gccld</a>, |
| <a href="CommandGuide/html/stkrc.html">stkrc</a>, |
| <a href="CommandGuide/html/bugpoint.html">bugpoint</a>, |
| <a href="CommandGuide/html/extract.html">extract</a>, |
| <a href="CommandGuide/html/llvm-bcanalyzer.html">llvm-bcanalyzer</a>, |
| <a href="CommandGuide/html/llvmc.html">llvmc</a> |
| </li> |
| |
| <li><a href="FAQ.html">Frequently Asked Questions</a> - A list of common |
| questions and problems and their solutions.</li> |
| |
| <li><a href="ReleaseNotes.html">Release notes for the current release</a> |
| - This describes new features, known bugs, and other limitations.</li> |
| |
| <li><a href="HowToSubmitABug.html">How to Submit A Bug Report</a> - |
| Instructions for properly submitting information about any bugs you run into in |
| the LLVM system.</li> |
| |
| <li><a href="TestingGuide.html">LLVM Test Suite Guide</a> - A reference |
| manual for using the LLVM test suite.</li> |
| |
| <li><a href="CFEBuildInstrs.html">How to build the C/C++ front-end</a> - |
| Instructions for building the front-end from source.</li> |
| |
| <li><a href="Lexicon.html">The LLVM Lexicon</a> - Definition of acronyms, terms |
| and concepts used in LLVM.</li> |
| |
| <li><a name="irc">You can probably find help on the unofficial LLVM IRC |
| channel</a>. We often are on irc.oftc.net in the #llvm channel. If you are |
| using the mozilla browser, and have chatzilla installed, you can <a |
| href="irc://irc.oftc.net/llvm">join #llvm on irc.oftc.net</a> directly.</li> |
| |
| </ul> |
| |
| |
| <!--=======================================================================--> |
| <div class="doc_section"><a name="llvmprog">General LLVM Programming Documentation</a></div> |
| <!--=======================================================================--> |
| |
| <ul> |
| <li><a href="ProgrammersManual.html">The LLVM Programmers Manual</a> - |
| Introduction to the general layout of the LLVM sourcebase, important classes |
| and APIs, and some tips & tricks.</li> |
| |
| <li><a href="Projects.html">LLVM Project Guide</a> - How-to guide and |
| templates for new projects that <em>use</em> the LLVM infrastructure. The |
| templates (directory organization, Makefiles, and test tree) allow the project |
| code to be located outside (or inside) the <tt>llvm/</tt> tree, while using LLVM |
| header files and libraries.</li> |
| |
| <li><a href="MakefileGuide.html">LLVM Makefile Guide</a> - Describes how the |
| LLVM makefiles work and how to use them.</li> |
| |
| <li><a href="CommandLine.html">CommandLine library Reference Manual</a> - |
| Provides information on using the command line parsing library.</li> |
| |
| <li><a href="CodingStandards.html">LLVM Coding standards</a> - |
| Details the LLVM coding standards and provides useful information on writing |
| efficient C++ code.</li> |
| |
| <li><a href="OpenProjects.html">Open Projects</a> - Look here if you are |
| interested in doing something with LLVM but aren't sure what needs to be |
| done.</li> |
| |
| <li><a href="ExtendingLLVM.html">Extending LLVM</a> - Look here to see how |
| to add instructions and intrinsics to LLVM.</li> |
| |
| <li><a href="UsingLibraries.html">Using LLVM Libraries</a> - Look here to |
| understand how to use the libraries produced when LLVM is compiled.</li> |
| |
| <li><a href="http://llvm.cs.uiuc.edu/doxygen/">Doxygen generated |
| documentation</a> (<a href="http://llvm.cs.uiuc.edu/doxygen/inherits.html"> |
| classes</a>)</li> |
| |
| <li><a href="http://llvm.cs.uiuc.edu/cvsweb/cvsweb.cgi/llvm">CVSWeb CVS Tree |
| Browser</a></li> |
| |
| </ul> |
| |
| <!--=======================================================================--> |
| <div class="doc_section"><a name="subsystems">LLVM Subsystem Documentation</a></div> |
| <!--=======================================================================--> |
| |
| <ul> |
| |
| <li><a href="WritingAnLLVMPass.html">Writing an LLVM Pass</a> - Information |
| on how to write LLVM transformations and analyses.</li> |
| |
| <li><a href="WritingAnLLVMBackend.html">Writing an LLVM Backend</a> - Information |
| on how to write LLVM backends for machine targets.</li> |
| |
| <li><a href="CodeGenerator.html">The LLVM Target-Independent Code |
| Generator</a> - The design and implementation of the LLVM code generator. |
| Useful if you are working on retargetting LLVM to a new architecture, designing |
| a new codegen pass, or enhancing existing components.</li> |
| |
| <li><a href="TableGenFundamentals.html">TableGen Fundamentals</a> - |
| Describes the TableGen tool, which is used heavily by the LLVM code |
| generator.</li> |
| |
| <li><a href="AliasAnalysis.html">Alias Analysis in LLVM</a> - Information |
| on how to write a new alias analysis implementation or how to use existing |
| analyses.</li> |
| |
| <li><a href="Stacker.html">The Stacker Cronicles</a> - This document |
| describes both the Stacker language and LLVM frontend, but also some details |
| about LLVM useful for those writing front-ends.</li> |
| |
| <li><a href="GarbageCollection.html">Accurate Garbage Collection with |
| LLVM</a> - The interfaces source-language compilers should use for compiling |
| GC'd programs.</li> |
| |
| <li><a href="SourceLevelDebugging.html">Source Level Debugging with |
| LLVM</a> - This document describes the design and philosophy behind the LLVM |
| source-level debugger.</li> |
| |
| <li><a href="CommandGuide/html/bugpoint.html">bugpoint</a> - automatic bug |
| finder and test-case reducer description and usage information.</li> |
| |
| <li><a href="CompilerDriver.html">Compiler Driver (llvmc)</a> - This document |
| describes the design and configuration of the LLVM compiler driver tool, |
| <tt>llvmc</tt>.</li> |
| |
| </ul> |
| |
| <!--=======================================================================--> |
| <div class="doc_section"><a name="maillist">LLVM Mailing Lists</a></div> |
| <!--=======================================================================--> |
| |
| <ul> |
| <li>The <a href="http://mail.cs.uiuc.edu/mailman/listinfo/llvm-announce"> |
| LLVM Announcements List</a>: This is a low volume list that provides important |
| announcements regarding LLVM. It gets email about once a month.</li> |
| |
| <li>The <a href="http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev">Developer's |
| List</a>: This list is for people who want to be included in technical |
| discussions of LLVM. People post to this list when they have questions about |
| writing code for or using the LLVM tools. It is relatively low volume.</li> |
| |
| <li>The <a href="http://mail.cs.uiuc.edu/pipermail/llvmbugs/">Bugs & |
| Patches Archive</a>: This list gets emailed every time a bug is opened and |
| closed, and when people submit patches to be included in LLVM. It is higher |
| volume than the LLVMdev list.</li> |
| |
| <li>The <a href="http://mail.cs.uiuc.edu/pipermail/llvm-commits/">CVS Commits |
| Archive</a>: This list contains all commit messages that are made when LLVM |
| developers commit code changes to the CVS archive. It is useful for those who |
| want to stay on the bleeding edge of LLVM development. This list is very high |
| volume.</li> |
| |
| </ul> |
| |
| <!-- *********************************************************************** --> |
| |
| <hr> |
| <address> |
| <a href="http://jigsaw.w3.org/css-validator/check/referer"><img |
| src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"></a> |
| <a href="http://validator.w3.org/check/referer"><img |
| src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"></a> |
| |
| <a href="http://llvm.cs.uiuc.edu">LLVM Compiler Infrastructure</a><br> |
| Last modified: $Date$ |
| </address> |
| |