llvm/docs
Sean Silva 928ef439a5 [docs] Slight reword for precision.
The new wording cannot be construed as suggesting the use of
SmallVectorImpl<T> as e.g. a class member (just because the class
happens to be in an interface).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177778 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-22 23:52:38 +00:00
..
_static [docs] Update HTML pages to refer to CSS in a way that works locally and with Sphinx. 2012-04-19 20:20:34 +00:00
_templates [docs] Convert docs index page into Sphinx. 2012-04-19 16:31:37 +00:00
_themes/llvm-theme Sphinx CSS: remove negative letter-spacing, it makes some fonts look really 2012-09-30 20:43:24 +00:00
CommandGuide Update documentation of llvm-link to reflect recent cleanups. 2013-03-19 16:04:19 +00:00
HistoricalNotes
TableGen [docs] Fixup fallout from other grammar fixup. 2013-02-01 03:50:20 +00:00
tutorial [docs] Remove explicit authorship. 2013-03-11 16:25:16 +00:00
AliasAnalysis.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
Atomics.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
BitCodeFormat.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
BranchWeightMetadata.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
Bugpoint.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
CMake.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
CodeGenerator.rst Extend TableGen instruction selection matcher to improve handling 2013-03-19 19:51:09 +00:00
CodingStandards.rst Coding standards: don't use `inline` when defining a function in a class 2013-02-04 10:24:58 +00:00
CommandLine.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
CompilerWriterInfo.rst [docs] Remove explicit authorship. 2013-03-11 16:25:16 +00:00
conf.py Update the copyright coredits -- Happy new year 2013! 2013-01-01 10:00:19 +00:00
DebuggingJITedCode.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
DeveloperPolicy.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
doxygen.cfg.in
doxygen.css [docs] Update Makefile for images removal. 2012-04-20 17:27:12 +00:00
doxygen.footer Update the copyright coredits -- Happy new year 2013! 2013-01-01 10:00:19 +00:00
doxygen.header Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00
doxygen.intro Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00
Dummy.html Add a dummy documentation file to unbreak 'make install'. We need to find how 2012-12-13 13:37:35 +00:00
ExceptionHandling.rst Documentation: use monospaced font for intrinsics' names 2013-01-13 16:07:49 +00:00
ExtendedIntegerResults.txt
ExtendingLLVM.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
FAQ.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
GarbageCollection.rst remove the rest of the "written by" lines in the documentation. It is 2013-01-10 21:24:04 +00:00
gcc-loops.png Update the gcc-loops benchmark 2013-01-20 07:01:04 +00:00
GetElementPtr.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
GettingStarted.rst Adding ARM as supported architecture 2013-02-26 17:23:13 +00:00
GettingStartedVS.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
GoldPlugin.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
HowToAddABuilder.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
HowToBuildOnARM.rst ARM build docs easier for copy&paste 2013-02-25 18:25:58 +00:00
HowToReleaseLLVM.rst Documentation: remove all mentions of DejaGNU and Tcl 2013-01-18 19:27:43 +00:00
HowToSetUpLLVMStyleRTTI.rst [docs] Discuss a potential bug to be aware of. 2013-03-16 16:58:20 +00:00
HowToSubmitABug.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
HowToUseAttributes.rst Documentation: HowToUseAttributes: formatting (use monospaced font) 2013-02-12 18:26:08 +00:00
HowToUseInstrMappings.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
index.rst Adding a HowTo for Attributes. 2013-02-12 11:45:22 +00:00
LangRef.rst Missing period in doc 2013-03-11 16:51:15 +00:00
Lexicon.rst [docs] PR15254: Add "AST" to the lexicon. 2013-02-13 21:17:20 +00:00
LinkTimeOptimization.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
linpack-pc.png Update the linpack benchmark with different array sizes. 2013-01-20 06:52:47 +00:00
LLVMBuild.rst docs: Sphinxify LLVMBuild documentation. 2012-11-20 03:13:53 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
make.bat [docs] Stub out structure for Sphinx-based docs. 2012-04-19 16:31:19 +00:00
Makefile [docs] Remove POD based man page docs (and build system support). 2012-05-08 17:48:21 +00:00
Makefile.sphinx Makefile.sphinx: reST conversion is complete! 2012-12-12 21:35:43 +00:00
MakefileGuide.rst Pass CPPFLAGS/CFLAGS/CXXFLAGS from the environment of configure to 2013-02-04 08:15:53 +00:00
MarkedUpDisassembly.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
Packaging.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
Passes.rst [docs] Remove explicit authorship. 2013-03-11 16:25:16 +00:00
Phabricator.rst Update phab docs to clarify how to accept a change. 2013-02-13 09:07:18 +00:00
ProgrammersManual.rst [docs] Slight reword for precision. 2013-03-22 23:52:38 +00:00
Projects.rst Documentation: remove all mentions of DejaGNU and Tcl 2013-01-18 19:27:43 +00:00
re_format.7
README.txt [docs] Discuss manpage output. 2013-02-27 18:48:42 +00:00
ReleaseNotes.rst ReleaseNotes: Tweak hexagonv2/hexagonv3 removal note. 2013-03-18 13:08:24 +00:00
SegmentedStacks.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
SourceLevelDebugging.rst Formatting fixups. 2013-03-19 23:10:26 +00:00
SphinxQuickstartTemplate.rst [docs] Provide pointer for building Sphinx docs. 2013-02-27 18:33:21 +00:00
SystemLibrary.rst remove the rest of the "written by" lines in the documentation. It is 2013-01-10 21:24:04 +00:00
TableGenFundamentals.rst [docs] Guide prospective TableGen backend writers. 2013-01-30 20:39:46 +00:00
TestingGuide.rst fix small doc typo 2013-03-22 16:09:06 +00:00
TestSuiteMakefileGuide.rst remove the rest of the "written by" lines in the documentation. It is 2013-01-10 21:24:04 +00:00
Vectorizers.rst Brag about function call vectorization in the docs. 2013-02-28 19:33:46 +00:00
WritingAnLLVMBackend.rst remove the rest of the "written by" lines in the documentation. It is 2013-01-10 21:24:04 +00:00
WritingAnLLVMPass.rst remove the rest of the "written by" lines in the documentation. It is 2013-01-10 21:24:04 +00:00
yaml2obj.rst docs: Fix long standing linking antipattern. 2013-01-11 02:28:08 +00:00
YamlIO.rst Spelling corrections 2013-02-18 02:44:09 +00:00

LLVM Documentation
==================

LLVM's documentation is written in reStructuredText, a lightweight
plaintext markup language (file extension `.rst`). While the
reStructuredText documentation should be quite readable in source form, it
is mostly meant to be processed by the Sphinx documentation generation
system to create HTML pages which are hosted on <http://llvm.org/docs/> and
updated after every commit. Manpage output is also supported, see below.

If you instead would like to generate and view the HTML locally, install
Sphinx <http://sphinx-doc.org/> and then do:

    cd docs/
    make -f Makefile.sphinx
    $BROWSER _build/html/index.html

The mapping between reStructuredText files and generated documentation is
`docs/Foo.rst` <-> `_build/html/Foo.html` <-> `http://llvm.org/docs/Foo.html`.

If you are interested in writing new documentation, you will want to read
`SphinxQuickstartTemplate.rst` which will get you writing documentation
very fast and includes examples of the most important reStructuredText
markup syntax.

Manpage Output
===============

Building the manpages is similar to building the HTML documentation. The
primary difference is to use the `man` makefile target, instead of the
default (which is `html`). Sphinx then produces the man pages in the
directory `_build/man/`.

    cd docs/
    make -f Makefile.sphinx man
    man -l _build/man/FileCheck.1

The correspondence between .rst files and man pages is
`docs/CommandGuide/Foo.rst` <-> `_build/man/Foo.1`.
These .rst files are also included during HTML generation so they are also
viewable online (as noted above) at e.g.
`http://llvm.org/docs/CommandGuide/Foo.html`.