forked from OSchip/llvm-project
[Docs] Adds new Getting Started/Tutorials page
Adds a new page for Getting Started/Tutorials topics. Also updates existing topic categories on the User Guides and Reference pages. llvm-svn: 373854
This commit is contained in:
parent
f643fabb52
commit
6d19651410
|
@ -0,0 +1,29 @@
|
|||
Getting Started/Tutorials
|
||||
=========================
|
||||
|
||||
For those new to the LLVM system.
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
GettingStarted
|
||||
GettingStartedVS
|
||||
Frontend/PerformanceTips
|
||||
tutorial/index
|
||||
|
||||
:doc:`GettingStarted`
|
||||
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.
|
||||
|
||||
:doc:`tutorial/index`
|
||||
Tutorials about using LLVM. Includes a tutorial about making a custom
|
||||
language with LLVM.
|
||||
|
||||
:doc:`GettingStartedVS`
|
||||
An addendum to the main Getting Started guide for those using Visual Studio
|
||||
on Windows.
|
||||
|
||||
:doc:`Frontend/PerformanceTips`
|
||||
A collection of tips for frontend authors on how to generate IR
|
||||
which LLVM is able to effectively optimize.
|
|
@ -8,13 +8,10 @@ For developers of applications which use LLVM as a library.
|
|||
|
||||
Atomics
|
||||
CommandLine
|
||||
CommandGuide/index
|
||||
ExtendingLLVM
|
||||
HowToSetUpLLVMStyleRTTI
|
||||
ProgrammersManual
|
||||
Extensions
|
||||
LibFuzzer
|
||||
FuzzingLLVM
|
||||
ScudoHardenedAllocator
|
||||
OptBisect
|
||||
GwpAsan
|
||||
|
@ -42,26 +39,8 @@ For developers of applications which use LLVM as a library.
|
|||
:doc:`GwpAsan`
|
||||
A sampled heap memory error detection toolkit designed for production use.
|
||||
|
||||
============
|
||||
Command Line
|
||||
============
|
||||
|
||||
:doc:`CommandLine`
|
||||
Provides information on using the command line parsing library.
|
||||
|
||||
:doc:`OptBisect`
|
||||
A command line option for debugging optimization-induced failures.
|
||||
|
||||
:doc:`LLVM Command Guide <CommandGuide/index>`
|
||||
A reference manual for the LLVM command line utilities ("man" pages for LLVM
|
||||
tools).
|
||||
|
||||
=========
|
||||
LibFuzzer
|
||||
=========
|
||||
|
||||
:doc:`LibFuzzer`
|
||||
A library for writing in-process guided fuzzers.
|
||||
|
||||
:doc:`FuzzingLLVM`
|
||||
Information on writing and using Fuzzers to find bugs in LLVM.
|
||||
A command line option for debugging optimization-induced failures.
|
|
@ -3,27 +3,41 @@ Reference
|
|||
|
||||
LLVM and API reference documentation.
|
||||
|
||||
.. contents::
|
||||
:local:
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
LangRef
|
||||
TestingGuide
|
||||
Bugpoint
|
||||
CommandGuide/index
|
||||
CompilerWriterInfo
|
||||
FuzzingLLVM
|
||||
GarbageCollection
|
||||
GetElementPtr
|
||||
LangRef
|
||||
LibFuzzer
|
||||
MIRLangRef
|
||||
NVPTXUsage
|
||||
AMDGPUUsage
|
||||
PDB/index
|
||||
Statepoints
|
||||
TestingGuide
|
||||
YamlIO
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
`Doxygen generated documentation <http://llvm.org/doxygen/>`_
|
||||
(`classes <http://llvm.org/doxygen/inherits.html>`_)
|
||||
|
||||
`Documentation for Go bindings <http://godoc.org/llvm.org/llvm/bindings/go/llvm>`_
|
||||
|
||||
==============
|
||||
LLVM Reference
|
||||
==============
|
||||
--------------
|
||||
|
||||
:doc:`LLVM Language Reference Manual <LangRef>`
|
||||
Defines the LLVM intermediate representation and the assembly form of the
|
||||
different nodes.
|
||||
|
||||
:doc:`LLVM Testing Infrastructure Guide <TestingGuide>`
|
||||
A reference manual for using the LLVM testing infrastructure.
|
||||
|
||||
:doc:`CompilerWriterInfo`
|
||||
A list of helpful links for compiler writers.
|
||||
|
||||
|
@ -31,17 +45,56 @@ LLVM Reference
|
|||
A reference manual for the MIR serialization format, which is used to test
|
||||
LLVM's code generation passes.
|
||||
|
||||
:doc:`NVPTXUsage`
|
||||
This document describes using the NVPTX backend to compile GPU kernels.
|
||||
:doc:`YamlIO`
|
||||
A reference guide for using LLVM's YAML I/O library.
|
||||
|
||||
:doc:`AMDGPUUsage`
|
||||
This document describes using the AMDGPU backend to compile GPU kernels.
|
||||
:doc:`GetElementPtr`
|
||||
Answers to some very frequent questions about LLVM's most frequently
|
||||
misunderstood instruction.
|
||||
|
||||
=============
|
||||
API Reference
|
||||
=============
|
||||
======================
|
||||
Command Line Utilities
|
||||
======================
|
||||
|
||||
`Doxygen generated documentation <http://llvm.org/doxygen/>`_
|
||||
(`classes <http://llvm.org/doxygen/inherits.html>`_)
|
||||
:doc:`LLVM Command Guide <CommandGuide/index>`
|
||||
A reference manual for the LLVM command line utilities ("man" pages for LLVM
|
||||
tools).
|
||||
|
||||
`Documentation for Go bindings <http://godoc.org/llvm.org/llvm/bindings/go/llvm>`_
|
||||
:doc:`Bugpoint`
|
||||
Automatic bug finder and test-case reducer description and usage
|
||||
information.
|
||||
|
||||
:doc:`The Microsoft PDB File Format <PDB/index>`
|
||||
A detailed description of the Microsoft PDB (Program Database) file format.
|
||||
|
||||
==================
|
||||
Garbage Collection
|
||||
==================
|
||||
|
||||
:doc:`GarbageCollection`
|
||||
The interfaces source-language compilers should use for compiling GC'd
|
||||
programs.
|
||||
|
||||
:doc:`Statepoints`
|
||||
This describes a set of experimental extensions for garbage
|
||||
collection support.
|
||||
|
||||
=========
|
||||
LibFuzzer
|
||||
=========
|
||||
|
||||
:doc:`LibFuzzer`
|
||||
A library for writing in-process guided fuzzers.
|
||||
|
||||
:doc:`FuzzingLLVM`
|
||||
Information on writing and using Fuzzers to find bugs in LLVM.
|
||||
|
||||
=======
|
||||
Testing
|
||||
=======
|
||||
|
||||
:doc:`LLVM Testing Infrastructure Guide <TestingGuide>`
|
||||
A reference manual for using the LLVM testing infrastructure.
|
||||
|
||||
:doc:`TestSuiteGuide`
|
||||
Describes how to compile and run the test-suite benchmarks.
|
|
@ -13,14 +13,12 @@ For API clients and LLVM developers.
|
|||
BitCodeFormat
|
||||
BlockFrequencyTerminology
|
||||
BranchWeightMetadata
|
||||
Bugpoint
|
||||
CodeGenerator
|
||||
ExceptionHandling
|
||||
AddingConstrainedIntrinsics
|
||||
LinkTimeOptimization
|
||||
SegmentedStacks
|
||||
TableGenFundamentals
|
||||
TableGen/index
|
||||
DebuggingJITedCode
|
||||
GoldPlugin
|
||||
MarkedUpDisassembly
|
||||
|
@ -28,15 +26,11 @@ For API clients and LLVM developers.
|
|||
SupportLibrary
|
||||
SourceLevelDebugging
|
||||
Vectorizers
|
||||
WritingAnLLVMBackend
|
||||
GarbageCollection
|
||||
WritingAnLLVMPass
|
||||
HowToUseAttributes
|
||||
StackMaps
|
||||
InAlloca
|
||||
BigEndianNEON
|
||||
CoverageMappingFormat
|
||||
Statepoints
|
||||
MergeFunctions
|
||||
TypeMetadata
|
||||
TransformMetadata
|
||||
|
@ -46,28 +40,12 @@ For API clients and LLVM developers.
|
|||
XRay
|
||||
XRayExample
|
||||
XRayFDRFormat
|
||||
PDB/index
|
||||
CFIVerify
|
||||
SpeculativeLoadHardening
|
||||
StackSafetyAnalysis
|
||||
LoopTerminology
|
||||
DependenceGraphs/index
|
||||
|
||||
:doc:`WritingAnLLVMPass`
|
||||
Information on how to write LLVM transformations and analyses.
|
||||
|
||||
:doc:`WritingAnLLVMBackend`
|
||||
Information on how to write LLVM backends for machine targets.
|
||||
|
||||
:doc:`CodeGenerator`
|
||||
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.
|
||||
|
||||
:doc:`TableGen <TableGen/index>`
|
||||
Describes the TableGen tool, which is used heavily by the LLVM code
|
||||
generator.
|
||||
|
||||
:doc:`AliasAnalysis`
|
||||
Information on how to write a new alias analysis implementation or how to
|
||||
use existing analyses.
|
||||
|
@ -90,10 +68,6 @@ For API clients and LLVM developers.
|
|||
Gives the steps necessary when adding a new constrained math intrinsic
|
||||
to LLVM.
|
||||
|
||||
:doc:`Bugpoint`
|
||||
Automatic bug finder and test-case reducer description and usage
|
||||
information.
|
||||
|
||||
:doc:`BitCodeFormat`
|
||||
This describes the file format and encoding used for LLVM "bc" files.
|
||||
|
||||
|
@ -169,9 +143,6 @@ For API clients and LLVM developers.
|
|||
:doc:`XRayExample`
|
||||
An example of how to debug an application with XRay.
|
||||
|
||||
:doc:`The Microsoft PDB File Format <PDB/index>`
|
||||
A detailed description of the Microsoft PDB (Program Database) file format.
|
||||
|
||||
:doc:`CFIVerify`
|
||||
A description of the verification tool for Control Flow Integrity.
|
||||
|
||||
|
@ -182,21 +153,6 @@ For API clients and LLVM developers.
|
|||
This document describes the design of the stack safety analysis of local
|
||||
variables.
|
||||
|
||||
:doc:`LoopTerminology`
|
||||
A document describing Loops and associated terms as used in LLVM.
|
||||
|
||||
:doc:`Dependence Graphs <DependenceGraphs/index>`
|
||||
A description of the design of the various dependence graphs such as
|
||||
the DDG (Data Dependence Graph).
|
||||
|
||||
==================
|
||||
Garbage Collection
|
||||
==================
|
||||
|
||||
:doc:`GarbageCollection`
|
||||
The interfaces source-language compilers should use for compiling GC'd
|
||||
programs.
|
||||
|
||||
:doc:`Statepoints`
|
||||
This describes a set of experimental extensions for garbage
|
||||
collection support.
|
||||
the DDG (Data Dependence Graph).
|
|
@ -1,13 +1,14 @@
|
|||
User Guides
|
||||
===========
|
||||
|
||||
For those new to the LLVM system.
|
||||
|
||||
NOTE: If you are a user who is only interested in using an LLVM-based compiler,
|
||||
you should look into `Clang <http://clang.llvm.org>`_ instead. The
|
||||
documentation here is intended for users who have a need to work with the
|
||||
intermediate LLVM representation.
|
||||
|
||||
.. contents::
|
||||
:local:
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
|
@ -22,9 +23,6 @@ intermediate LLVM representation.
|
|||
MarkdownQuickstartTemplate
|
||||
Phabricator
|
||||
Passes
|
||||
YamlIO
|
||||
GetElementPtr
|
||||
Frontend/PerformanceTips
|
||||
MCJITDesignAndImplementation
|
||||
ORCv2
|
||||
CodeOfConduct
|
||||
|
@ -34,27 +32,14 @@ intermediate LLVM representation.
|
|||
Docker
|
||||
BuildingADistribution
|
||||
Remarks
|
||||
WritingAnLLVMPass
|
||||
WritingAnLLVMBackend
|
||||
TableGen/index
|
||||
NVPTXUsage
|
||||
AMDGPUUsage
|
||||
|
||||
Building, Packaging, and Distributing LLVM
|
||||
------------------------------------------
|
||||
|
||||
How to build, package, and distribute LLVM.
|
||||
|
||||
=====
|
||||
CMake
|
||||
=====
|
||||
|
||||
:doc:`BuildingADistribution`
|
||||
A best-practices guide for using LLVM's CMake build system to package and
|
||||
distribute LLVM-based tools.
|
||||
|
||||
:doc:`CMake`
|
||||
An addendum to the main Getting Started guide for those using the `CMake
|
||||
build system <http://www.cmake.org>`_.
|
||||
|
||||
=====
|
||||
Clang
|
||||
=====
|
||||
-----
|
||||
|
||||
:doc:`HowToBuildOnARM`
|
||||
Notes on building and testing LLVM/Clang on ARM.
|
||||
|
@ -70,36 +55,58 @@ Clang
|
|||
|
||||
.. __: http://clang.llvm.org/get_started.html
|
||||
|
||||
======
|
||||
Docker
|
||||
======
|
||||
LLVM Builds and Distributions
|
||||
-----------------------------
|
||||
|
||||
:doc:`BuildingADistribution`
|
||||
A best-practices guide for using LLVM's CMake build system to package and
|
||||
distribute LLVM-based tools.
|
||||
|
||||
:doc:`CMake`
|
||||
An addendum to the main Getting Started guide for those using the `CMake
|
||||
build system <http://www.cmake.org>`_.
|
||||
|
||||
:doc:`Docker`
|
||||
A reference for using Dockerfiles provided with LLVM.
|
||||
|
||||
=================
|
||||
Additional Topics
|
||||
=================
|
||||
Optimizations
|
||||
-------------
|
||||
|
||||
:doc:`HowToCrossCompileBuiltinsOnArm`
|
||||
Notes on cross-building and testing the compiler-rt builtins for Arm.
|
||||
:doc:`WritingAnLLVMPass`
|
||||
Information on how to write LLVM transformations and analyses.
|
||||
|
||||
:doc:`Passes`
|
||||
A list of optimizations and analyses implemented in LLVM.
|
||||
|
||||
:doc:`TestSuiteGuide`
|
||||
Describes how to compile and run the test-suite benchmarks.
|
||||
|
||||
:doc:`YamlIO`
|
||||
A reference guide for using LLVM's YAML I/O library.
|
||||
|
||||
:doc:`GetElementPtr`
|
||||
Answers to some very frequent questions about LLVM's most frequently
|
||||
misunderstood instruction.
|
||||
|
||||
:doc:`Frontend/PerformanceTips`
|
||||
A collection of tips for frontend authors on how to generate IR
|
||||
which LLVM is able to effectively optimize.
|
||||
:doc:`LoopTerminology`
|
||||
A document describing Loops and associated terms as used in LLVM.
|
||||
|
||||
:doc:`Remarks`
|
||||
A reference on the implementation of remarks in LLVM.
|
||||
A reference on the implementation of remarks in LLVM.
|
||||
|
||||
Code Generation
|
||||
---------------
|
||||
|
||||
:doc:`WritingAnLLVMBackend`
|
||||
Information on how to write LLVM backends for machine targets.
|
||||
|
||||
:doc:`CodeGenerator`
|
||||
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.
|
||||
|
||||
:doc:`TableGen <TableGen/index>`
|
||||
Describes the TableGen tool, which is used heavily by the LLVM code
|
||||
generator.
|
||||
|
||||
Additional Topics
|
||||
-----------------
|
||||
|
||||
:doc:`HowToCrossCompileBuiltinsOnArm`
|
||||
Notes on cross-building and testing the compiler-rt builtins for Arm.
|
||||
|
||||
:doc:`NVPTXUsage`
|
||||
This document describes using the NVPTX backend to compile GPU kernels.
|
||||
|
||||
:doc:`AMDGPUUsage`
|
||||
This document describes using the AMDGPU backend to compile GPU kernels.
|
|
@ -53,13 +53,17 @@ Getting Started, How-tos, Developer Guides, and Tutorials.
|
|||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
UserGuides
|
||||
GettingStartedTutorials
|
||||
ProgrammingDocumentation
|
||||
Reference
|
||||
SubsystemDocumentation
|
||||
UserGuides
|
||||
|
||||
:doc:`GettingStartedTutorials`
|
||||
For those new to the LLVM system.
|
||||
|
||||
:doc:`UserGuides`
|
||||
For those new to the LLVM system.
|
||||
User guides and How-tos.
|
||||
|
||||
:doc:`ProgrammingDocumentation`
|
||||
For developers of applications which use LLVM as a library.
|
||||
|
@ -70,29 +74,6 @@ Getting Started, How-tos, Developer Guides, and Tutorials.
|
|||
:doc:`Reference`
|
||||
LLVM and API reference documentation.
|
||||
|
||||
Getting Started/Tutorials
|
||||
-------------------------
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
||||
GettingStarted
|
||||
tutorial/index
|
||||
GettingStartedVS
|
||||
|
||||
:doc:`GettingStarted`
|
||||
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.
|
||||
|
||||
:doc:`tutorial/index`
|
||||
Tutorials about using LLVM. Includes a tutorial about making a custom
|
||||
language with LLVM.
|
||||
|
||||
:doc:`GettingStartedVS`
|
||||
An addendum to the main Getting Started guide for those using Visual Studio
|
||||
on Windows.
|
||||
|
||||
Community
|
||||
=========
|
||||
|
||||
|
|
Loading…
Reference in New Issue