[Docs] Adds new Getting Started/Tutorials page
authorDeForest Richards <d4m1887@gmail.com>
Sun, 6 Oct 2019 15:36:37 +0000 (15:36 +0000)
committerDeForest Richards <d4m1887@gmail.com>
Sun, 6 Oct 2019 15:36:37 +0000 (15:36 +0000)
Adds a new page for Getting Started/Tutorials topics. Also updates existing topic categories on the User Guides and Reference pages.

llvm-svn: 373854

llvm/docs/GettingStartedTutorials.rst [new file with mode: 0644]
llvm/docs/ProgrammingDocumentation.rst
llvm/docs/Reference.rst
llvm/docs/SubsystemDocumentation.rst
llvm/docs/UserGuides.rst
llvm/docs/index.rst

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