Lei Zhang 14c3c0d92c [spirv] Add initial support for specialization constant (#1009) 7 years ago
..
CommandGuide 6ee4074a4b first commit 8 years ago
Frontend 6ee4074a4b first commit 8 years ago
TableGen 6ee4074a4b first commit 8 years ago
_static 6ee4074a4b first commit 8 years ago
_templates 6ee4074a4b first commit 8 years ago
_themes 6ee4074a4b first commit 8 years ago
AliasAnalysis.rst 6ee4074a4b first commit 8 years ago
Atomics.rst 6ee4074a4b first commit 8 years ago
BitCodeFormat.rst 6ee4074a4b first commit 8 years ago
BitSets.rst 6ee4074a4b first commit 8 years ago
BlockFrequencyTerminology.rst 6ee4074a4b first commit 8 years ago
BranchWeightMetadata.rst 6ee4074a4b first commit 8 years ago
CMake.rst 6ee4074a4b first commit 8 years ago
CMakeLists.txt 6ee4074a4b first commit 8 years ago
CodeGenerator.rst 6ee4074a4b first commit 8 years ago
CodingStandards.rst af6b2a552f fixes #37 - License cleanup. 8 years ago
CommandLine.rst 6ee4074a4b first commit 8 years ago
CoverageMappingFormat.rst 6ee4074a4b first commit 8 years ago
DXIL.rst b816c124f1 Support resource select for lib profile. (#940) 7 years ago
Dummy.html 6ee4074a4b first commit 8 years ago
ExceptionHandling.rst 6ee4074a4b first commit 8 years ago
ExtendingLLVM.rst 6ee4074a4b first commit 8 years ago
FaultMaps.rst 6ee4074a4b first commit 8 years ago
GetElementPtr.rst 6ee4074a4b first commit 8 years ago
HLSLChanges.rst 6ee4074a4b first commit 8 years ago
HowToSetUpLLVMStyleRTTI.rst 6ee4074a4b first commit 8 years ago
HowToUseAttributes.rst 6ee4074a4b first commit 8 years ago
HowToUseInstrMappings.rst 6ee4074a4b first commit 8 years ago
InAlloca.rst 6ee4074a4b first commit 8 years ago
LLVMBuild.rst 6ee4074a4b first commit 8 years ago
LLVMBuild.txt f805233b49 Revert license text in banner comments to original llvm verbage (#33) 8 years ago
LangRef.rst 6ee4074a4b first commit 8 years ago
Lexicon.rst 6ee4074a4b first commit 8 years ago
LibFuzzer.rst 6ee4074a4b first commit 8 years ago
LinkTimeOptimization.rst 6ee4074a4b first commit 8 years ago
Makefile.sphinx 6ee4074a4b first commit 8 years ago
MarkedUpDisassembly.rst 6ee4074a4b first commit 8 years ago
MergeFunctions.rst 6ee4074a4b first commit 8 years ago
Passes.rst 6ee4074a4b first commit 8 years ago
ProgrammersManual.rst 6ee4074a4b first commit 8 years ago
README.txt 6ee4074a4b first commit 8 years ago
SPIR-V.rst 14c3c0d92c [spirv] Add initial support for specialization constant (#1009) 7 years ago
SourceLevelDebugging.rst ad76d814a4 Debug name part implementation (#264) 8 years ago
SourceLevelDebuggingHLSL.rst ad76d814a4 Debug name part implementation (#264) 8 years ago
SystemLibrary.rst 6ee4074a4b first commit 8 years ago
Vectorizers.rst 6ee4074a4b first commit 8 years ago
WritingAnLLVMBackend.rst 6ee4074a4b first commit 8 years ago
WritingAnLLVMPass.rst 6ee4074a4b first commit 8 years ago
YamlIO.rst 6ee4074a4b first commit 8 years ago
conf.py 6ee4074a4b first commit 8 years ago
index.rst ad76d814a4 Debug name part implementation (#264) 8 years ago
make.bat 6ee4074a4b first commit 8 years ago

README.txt

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 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 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`.

Checking links
==============

The reachibility of external links in the documentation can be checked by
running:

cd docs/
make -f Makefile.sphinx linkcheck