22f90de202b8b3b3abe947efa6633a0eac1994d6
[oota-llvm.git] / docs / index.html
1
2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
3                       "http://www.w3.org/TR/html4/strict.dtd">
4 <html>
5 <head>
6   <title>Documentation for the LLVM System</title>
7   <link rel="stylesheet" href="llvm.css" type="text/css">
8 </head>
9 <body>
10
11 <div class="doc_title">Documentation for the LLVM System</div>
12
13 <div class="doc_text">
14 <ul>
15   <li><a href="#llvmdesign">LLVM Design</a></li>
16   <li><a href="#userguide">LLVM User Guides</a></li>
17   <li><a href="#llvmprog">General LLVM Programming Documentation</a></li>
18   <li><a href="#subsystems">LLVM Subsystem Documentation</a></li>
19   <li><a href="#Support">LLVM Support</a>
20     <ul>
21     <li><a href="#mailList">LLVM mailing lists</a></li>
22     </ul>
23   </li>
24 </ul>
25 </div>
26
27 <!--=======================================================================-->
28 <div class="doc_section"><a name="llvmdesign">LLVM Design</a></div>
29 <!--=======================================================================-->
30
31 <ul>
32 <li><a href="pubs/2004-01-30-CGO-LLVM.html"> LLVM: A Compilation Framework for
33 Lifelong Program Analysis &amp; Transformation</a>: - Describes
34 the LLVM instruction set and compilation strategy.  This should be the first
35 document you read to get an overview of LLVM.</li>
36
37 <li><a href="LangRef.html">LLVM Reference Manual</a> - Defines the LLVM
38 intermediate representation, the assembly form of the different nodes, and
39 provides reference information about the different tools in LLVM.</li>
40
41 <li><a href="BytecodeFormat.html">LLVM Bytecode File Format</a></li>
42
43 </ul>
44
45 <!--=======================================================================-->
46 <div class="doc_section"><a name="userguide">LLVM User Guides</a></div>
47 <!--=======================================================================-->
48
49 <ul>
50 <li><a href="GettingStarted.html">The LLVM Getting Started Guide</a> -
51 Discusses how to get up and running quickly with the LLVM infrastructure.
52 Everything from unpacking and compilation of the distribution to execution of
53 some tools.</li>
54
55 <li><a href="CommandGuide/">LLVM Command Guide</a> - A reference manual for
56 the LLVM command line utilities ("man" pages for LLVM tools).</li>
57
58 <li><a href="ReleaseNotes.html">Release notes for the current release</a> 
59 - This describes new features, known bugs, and other limitations.</li>
60
61 <li><a href="HowToSubmitABug.html">How to Submit A Bug Report</a> -
62 Instructions for properly submitting information about any bugs you run into in
63 the LLVM system.</li>
64
65 <li><a href="TestingGuide.html">LLVM Test Suite Guide</a> - A reference
66 manual for using the LLVM test suite.</li>
67
68 <li><a href="CFEBuildInstrs.html">How to build the C/C++ front-end</a> -
69 Instructions for building the front-end from source.</li>
70 </ul>
71
72
73 <!--=======================================================================-->
74 <div class="doc_section"><a name="llvmprog">General LLVM Programming Documentation</a></div>
75 <!--=======================================================================-->
76
77 <ul>
78 <li><a href="ProgrammersManual.html">The LLVM Programmers Manual</a> -
79 Introduction to the general layout of the LLVM sourcebase, important classes
80 and APIs, and some tips &amp; tricks.</li>
81
82 <li><a href="Projects.html">LLVM Project Guide</a> - How-to guide and
83 templates for new projects that <em>use</em> the LLVM infrastructure.  The
84 templates (directory organization, Makefiles, and test tree) allow the project
85 code to be located outside (or inside) the <tt>llvm/</tt> tree, while using LLVM
86 header files and libraries.</li>
87
88 <li><a href="CommandLine.html">CommandLine library Reference Manual</a> -
89 Provides information on using the command line parsing library.</li>
90
91 <li><a href="CodingStandards.html">Recommended LLVM Coding standards</a> -
92 Details the LLVM coding standards and provides useful information on writing
93 efficient C++ code.</li>
94
95 <li><a href="OpenProjects.html">Open Projects</a> - Look here if you are
96 interested in doing something with LLVM but aren't sure what needs to be
97 done.</li>
98
99 <li><a href="ExtendingLLVM.html">Extending LLVM</a> - Look here to see how 
100 to add instructions and intrinsics to LLVM.</li>
101
102 <li><a href="CodingStandards.html">Coding Standards</a> - Guidelines for
103 hacking LLVM source.</li>
104
105 <li><a href="http://llvm.cs.uiuc.edu/doxygen/">Doxygen generated 
106 documentation</a> (<a href="http://llvm.cs.uiuc.edu/doxygen/inherits.html">
107 classes</a>)</li>
108
109 <li><a href="http://llvm.cs.uiuc.edu/cvsweb/cvsweb.cgi/llvm">CVSWeb CVS Tree 
110 Browser</a></li>
111
112 </ul>
113
114 <!--=======================================================================-->
115 <div class="doc_section"><a name="subsystems">LLVM Subsystem Documentation</a></div>
116 <!--=======================================================================-->
117
118 <ul>
119
120 <li><a href="WritingAnLLVMPass.html">Writing an LLVM Pass</a> - Information
121 on how to write LLVM transformations and analyses.</li>
122
123 <li><a href="CodeGenerator.html">The LLVM Target-Independent Code
124 Generator</a> - The design and implementation of the LLVM code generator.
125 Useful if you are working on retargetting LLVM to a new architecture, designing
126 a new codegen pass, or enhancing existing components.</li>
127
128 <li><a href="TableGenFundamentals.html">TableGen Fundamentals</a> -
129 Describes the TableGen tool, which is used heavily by the LLVM code
130 generator.</li>
131
132 <li><a href="AliasAnalysis.html">Alias Analysis in LLVM</a> - Information
133 on how to write a new alias analysis implementation or how to use existing
134 analyses.</li>
135
136 <li><a href="Stacker.html">The Stacker Cronicles</a> - This document
137 describes both the Stacker language and LLVM frontend, but also some details
138 about LLVM useful for those writing front-ends.</li>
139
140 <li><a href="GarbageCollection.html">Accurate Garbage Collection with
141 LLVM</a> - The interfaces source-language compilers should use for compiling
142 GC'd programs.</li>
143
144 <li><a href="SourceLevelDebugging.html">Source Level Debugging with
145 LLVM</a> - This document describes the design and philosophy behind the LLVM
146 source-level debugger.</li>
147
148 <li><a href="Bugpoint.html">Bugpoint</a> automatic bug finder and
149 test-case reducer description and usage information.</li>
150
151 </ul>
152
153 <!--=======================================================================-->
154 <div class="doc_section"><a name="Support">LLVM Support</a></div>
155 <!--=======================================================================-->
156
157 <ul>
158 <li><a href="FAQ.html">Frequently Asked Questions</a> - A list of common
159 questions and problems and their solutions.</li>
160
161 <li><a href="HowToSubmitABug.html">How-To-Submit-A-Bug</a> - Instructions
162 for the proper way to submit information about a bug you ran into in the LLVM
163 system.</li>
164
165 <li> You can probably find help on the unofficial LLVM IRC channel.  We often 
166 are on irc.oftc.net in the #llvm channel.  If you are using the mozilla
167 browser, and have chatzilla installed, you can join by <a 
168 href="irc://irc.oftc.net/llvm">clicking here</a>.</li>
169
170 </ul>
171
172 <!--=======================================================================-->
173 <div class="doc_subsection"><a name="maillist">LLVM Mailing Lists</a></div>
174 <!--=======================================================================-->
175
176 <ul>
177 <li>The <a href="http://mail.cs.uiuc.edu/mailman/listinfo/llvm-announce">
178 LLVM Announcements List</a>: This is a low volume list that provides important 
179 announcements regarding LLVM.  It gets email about once a month.</li>
180
181 <li>The <a href="http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev">Developer's
182 List</a>: This list is for people who want to be included in technical 
183 discussions of LLVM. People post to this list when they have questions about 
184 writing code for or using the LLVM tools. It is relatively low volume.</li>
185
186 <li>The <a href="http://mail.cs.uiuc.edu/pipermail/llvmbugs/">Bugs &amp;
187 Patches Archive</a>: This list gets emailed every time a bug is opened and
188 closed, and when people submit patches to be included in LLVM.  It is higher 
189 volume than the LLVMdev list.</li>
190
191 <li>The <a href="http://mail.cs.uiuc.edu/pipermail/llvm-commits/">CVS Commits
192 Archive</a>: This list contains all commit messages that are made when LLVM 
193 developers commit code changes to the CVS archive. It is useful for those who 
194 want to stay on the bleeding edge of LLVM development. This list is very high
195 volume.</li>
196
197 </ul>
198
199 <!-- *********************************************************************** -->
200
201 <hr>
202 <address>
203   <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
204   src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"></a>
205   <a href="http://validator.w3.org/check/referer"><img
206   src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"></a>
207
208   <a href="http://llvm.cs.uiuc.edu">LLVM Compiler Infrastructure</a><br>
209   Last modified: $Date$
210 </address>
211