llvm.org GIT mirror llvm / 52878db
docs: Use proper markup. These are really definition lists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172950 91177308-0d34-0410-b5e6-96231b3b80d8 Sean Silva 6 years ago
1 changed file(s) with 87 addition(s) and 131 deletion(s). Raw diff Collapse all Expand all
2323 LangRef
2424 GetElementPtr
2525
26 * :doc:`LangRef`
27
26 :doc:`LangRef`
2827 Defines the LLVM intermediate representation.
2928
30 * `Introduction to the LLVM Compiler `_
31
29 `Introduction to the LLVM Compiler`__
3230 Presentation providing a users introduction to LLVM.
3331
34 * `Intro to LLVM `_
35
32 .. __: http://llvm.org/pubs/2008-10-04-ACAT-LLVM-Intro.html
33
34 `Intro to LLVM`__
3635 Book chapter providing a compiler hacker's introduction to LLVM.
3736
38 * `LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation
39 `_
40
37 .. __: http://www.aosabook.org/en/llvm.html
38
39
40 `LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation`__
4141 Design overview.
4242
43 * `LLVM: An Infrastructure for Multi-Stage Optimization
44 `_
45
43 .. __: http://llvm.org/pubs/2004-01-30-CGO-LLVM.html
44
45 `LLVM: An Infrastructure for Multi-Stage Optimization`__
4646 More details (quite old now).
4747
48 * :doc:`GetElementPtr`
49
48 .. __: http://llvm.org/pubs/2002-12-LattnerMSThesis.html
49
50 :doc:`GetElementPtr`
5051 Answers to some very frequent questions about LLVM's most frequently
5152 misunderstood instruction.
5253
53 Publications
54 ============
55
56 The list of `publications `_ based on LLVM.
54 `Publications mentioning LLVM `_
55 ..
5756
5857 User Guides
5958 ===========
8988 Passes
9089 YamlIO
9190
92 * :doc:`GettingStarted`
93
91 :doc:`GettingStarted`
9492 Discusses how to get up and running quickly with the LLVM infrastructure.
9593 Everything from unpacking and compilation of the distribution to execution
9694 of some tools.
9795
98 * :doc:`CMake`
99
96 :doc:`CMake`
10097 An addendum to the main Getting Started guide for those using the `CMake
10198 build system `_.
10299
103 * :doc:`HowToBuildOnARM`
104
100 :doc:`HowToBuildOnARM`
105101 Notes on building and testing LLVM/Clang on ARM.
106102
107 * :doc:`GettingStartedVS`
108
103 :doc:`GettingStartedVS`
109104 An addendum to the main Getting Started guide for those using Visual Studio
110105 on Windows.
111106
112 * :doc:`tutorial/index`
113
107 :doc:`tutorial/index`
114108 Tutorials about using LLVM. Includes a tutorial about making a custom
115109 language with LLVM.
116110
117 * :doc:`DeveloperPolicy`
118
111 :doc:`DeveloperPolicy`
119112 The LLVM project's policy towards developers and their contributions.
120113
121 * :doc:`LLVM Command Guide `
122
114 :doc:`LLVM Command Guide `
123115 A reference manual for the LLVM command line utilities ("man" pages for LLVM
124116 tools).
125117
126 * :doc:`Passes`
127
118 :doc:`Passes`
128119 A list of optimizations and analyses implemented in LLVM.
129120
130 * :doc:`FAQ`
131
121 :doc:`FAQ`
132122 A list of common questions and problems and their solutions.
133123
134 * :doc:`Release notes for the current release `
135
124 :doc:`Release notes for the current release `
136125 This describes new features, known bugs, and other limitations.
137126
138 * :doc:`HowToSubmitABug`
139
127 :doc:`HowToSubmitABug`
140128 Instructions for properly submitting information about any bugs you run into
141129 in the LLVM system.
142 * :doc:`SphinxQuickstartTemplate`
143
130
131 :doc:`SphinxQuickstartTemplate`
144132 A template + tutorial for writing new Sphinx documentation. It is meant
145133 to be read in source form.
146134
147 * :doc:`LLVM Testing Infrastructure Guide `
148
135 :doc:`LLVM Testing Infrastructure Guide `
149136 A reference manual for using the LLVM testing infrastructure.
150137
151 * `How to build the C, C++, ObjC, and ObjC++ front end `_
152
138 `How to build the C, C++, ObjC, and ObjC++ front end`__
153139 Instructions for building the clang front-end from source.
154140
155 * :doc:`Packaging`
156
141 .. __: http://clang.llvm.org/get_started.html
142
143 :doc:`Packaging`
157144 Advice on packaging LLVM into a distribution.
158145
159 * :doc:`Lexicon`
160
146 :doc:`Lexicon`
161147 Definition of acronyms, terms and concepts used in LLVM.
162148
163 * :doc:`HowToAddABuilder`
164
149 :doc:`HowToAddABuilder`
165150 Instructions for adding new builder to LLVM buildbot master.
166151
167 * :doc:`YamlIO`
168
152 :doc:`YamlIO`
169153 A reference guide for using LLVM's YAML I/O library.
170154
171155 IRC
193177 HowToSetUpLLVMStyleRTTI
194178 ProgrammersManual
195179
196 * :doc:`LLVM Language Reference Manual `
197
180 :doc:`LLVM Language Reference Manual `
198181 Defines the LLVM intermediate representation and the assembly form of the
199182 different nodes.
200183
201 * :doc:`Atomics`
202
184 :doc:`Atomics`
203185 Information about LLVM's concurrency model.
204186
205 * :doc:`ProgrammersManual`
206
187 :doc:`ProgrammersManual`
207188 Introduction to the general layout of the LLVM sourcebase, important classes
208189 and APIs, and some tips & tricks.
209190
210 * :doc:`CommandLine`
211
191 :doc:`CommandLine`
212192 Provides information on using the command line parsing library.
213193
214 * :doc:`CodingStandards`
215
194 :doc:`CodingStandards`
216195 Details the LLVM coding standards and provides useful information on writing
217196 efficient C++ code.
218197
219 * :doc:`HowToSetUpLLVMStyleRTTI`
220
198 :doc:`HowToSetUpLLVMStyleRTTI`
221199 How to make ``isa<>``, ``dyn_cast<>``, etc. available for clients of your
222200 class hierarchy.
223201
224 * :doc:`ExtendingLLVM`
225
202 :doc:`ExtendingLLVM`
226203 Look here to see how to add instructions and intrinsics to LLVM.
227204
228 * `Doxygen generated documentation `_
229
205 `Doxygen generated documentation `_
230206 (`classes `_)
231207 (`tarball `_)
232208
233 * `ViewVC Repository Browser `_
234
235 * :doc:`CompilerWriterInfo`
236
209 `ViewVC Repository Browser `_
210 ..
211
212 :doc:`CompilerWriterInfo`
237213 A list of helpful links for compiler writers.
238214
239215 Subsystem Documentation
264240 WritingAnLLVMPass
265241 TableGen/LangRef
266242
267 * :doc:`WritingAnLLVMPass`
268
243 :doc:`WritingAnLLVMPass`
269244 Information on how to write LLVM transformations and analyses.
270245
271 * :doc:`WritingAnLLVMBackend`
272
246 :doc:`WritingAnLLVMBackend`
273247 Information on how to write LLVM backends for machine targets.
274248
275 * :doc:`CodeGenerator`
276
249 :doc:`CodeGenerator`
277250 The design and implementation of the LLVM code generator. Useful if you are
278251 working on retargetting LLVM to a new architecture, designing a new codegen
279252 pass, or enhancing existing components.
280253
281 * :doc:`TableGenFundamentals`
282
254 :doc:`TableGenFundamentals`
283255 Describes the TableGen tool, which is used heavily by the LLVM code
284256 generator.
285257
286 * :doc:`AliasAnalysis`
287
258 :doc:`AliasAnalysis`
288259 Information on how to write a new alias analysis implementation or how to
289260 use existing analyses.
290261
291 * :doc:`GarbageCollection`
292
262 :doc:`GarbageCollection`
293263 The interfaces source-language compilers should use for compiling GC'd
294264 programs.
295265
296 * :doc:`Source Level Debugging with LLVM `
297
266 :doc:`Source Level Debugging with LLVM `
298267 This document describes the design and philosophy behind the LLVM
299268 source-level debugger.
300269
301 * :doc:`Vectorizers`
302
270 :doc:`Vectorizers`
303271 This document describes the current status of vectorization in LLVM.
304272
305 * :doc:`ExceptionHandling`
306
273 :doc:`ExceptionHandling`
307274 This document describes the design and implementation of exception handling
308275 in LLVM.
309276
310 * :doc:`Bugpoint`
311
277 :doc:`Bugpoint`
312278 Automatic bug finder and test-case reducer description and usage
313279 information.
314280
315 * :doc:`BitCodeFormat`
316
281 :doc:`BitCodeFormat`
317282 This describes the file format and encoding used for LLVM "bc" files.
318283
319 * :doc:`System Library `
320
284 :doc:`System Library `
321285 This document describes the LLVM System Library (``lib/System``) and
322286 how to keep LLVM source code portable
323287
324 * :doc:`LinkTimeOptimization`
325
288 :doc:`LinkTimeOptimization`
326289 This document describes the interface between LLVM intermodular optimizer
327290 and the linker and its design
328291
329 * :doc:`GoldPlugin`
330
292 :doc:`GoldPlugin`
331293 How to build your programs with link-time optimization on Linux.
332294
333 * :doc:`DebuggingJITedCode`
334
295 :doc:`DebuggingJITedCode`
335296 How to debug JITed code with GDB.
336297
337 * :doc:`BranchWeightMetadata`
338
298 :doc:`BranchWeightMetadata`
339299 Provides information about Branch Prediction Information.
340300
341 * :doc:`SegmentedStacks`
342
301 :doc:`SegmentedStacks`
343302 This document describes segmented stacks and how they are used in LLVM.
344303
345 * :doc:`MarkedUpDisassembly`
346
304 :doc:`MarkedUpDisassembly`
347305 This document describes the optional rich disassembly output syntax.
348306
349307
350308 Development Process Documentation
351309 =================================
352
353310
354311 Information about LLVM's development process.
355312
361318 LLVMBuild
362319 HowToReleaseLLVM
363320
364 * :doc:`Projects`
365
321 :doc:`Projects`
366322 How-to guide and templates for new projects that *use* the LLVM
367323 infrastructure. The templates (directory organization, Makefiles, and test
368324 tree) allow the project code to be located outside (or inside) the ``llvm/``
369325 tree, while using LLVM header files and libraries.
370326
371 * :doc:`LLVMBuild`
372
327 :doc:`LLVMBuild`
373328 Describes the LLVMBuild organization and files used by LLVM to specify
374329 component descriptions.
375330
376 * :doc:`MakefileGuide`
377
331 :doc:`MakefileGuide`
378332 Describes how the LLVM makefiles work and how to use them.
379333
380 * :doc:`HowToReleaseLLVM`
381
334 :doc:`HowToReleaseLLVM`
382335 This is a guide to preparing LLVM releases. Most developers can ignore it.
383336
384337 Mailing Lists
387340 If you can't find what you need in these docs, try consulting the mailing
388341 lists.
389342
390 * `LLVM Announcements List
391 `_
392
343 `LLVM Announcements List`__
393344 This is a low volume list that provides important announcements regarding
394345 LLVM. It gets email about once a month.
395346
396 * `Developer's List `_
397
347 .. __: http://lists.cs.uiuc.edu/mailman/listinfo/llvm-announce
348
349 `Developer's List`__
398350 This list is for people who want to be included in technical discussions of
399351 LLVM. People post to this list when they have questions about writing code
400352 for or using the LLVM tools. It is relatively low volume.
401353
402 * `Bugs & Patches Archive `_
403
354 .. __: http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
355
356 `Bugs & Patches Archive`__
404357 This list gets emailed every time a bug is opened and closed, and when people
405358 submit patches to be included in LLVM. It is higher volume than the LLVMdev
406359 list.
407360
408 * `Commits Archive `_
409
361 .. __: http://lists.cs.uiuc.edu/pipermail/llvmbugs/
362
363 `Commits Archive`__
410364 This list contains all commit messages that are made when LLVM developers
411365 commit code changes to the repository. It is useful for those who want to
412366 stay on the bleeding edge of LLVM development. This list is very high volume.
413367
414 * `Test Results Archive
415 `_
416
368 .. __: http://lists.cs.uiuc.edu/pipermail/llvm-commits/
369
370 `Test Results Archive`__
417371 A message is automatically sent to this list by every active nightly tester
418372 when it completes. As such, this list gets email several times each day,
419373 making it a high volume list.
420374
375 .. __: http://lists.cs.uiuc.edu/pipermail/llvm-testresults/
376
421377 Indices and tables
422378 ==================
423379