From 1737f71322e3d440dcee74ef06640ad01945f3b9 Mon Sep 17 00:00:00 2001 From: Jordan Rupprecht Date: Wed, 14 Aug 2019 22:18:01 +0000 Subject: [PATCH] [docs] Fix sphinx doc generation errors Summary: Errors fixed: - GettingStarted: Duplicate explicit target name: "cmake" - GlobalISel: Unexpected indentation - LoopTerminology: Explicit markup ends without a blank line; unexpected unindent - ORCv2: Definition list ends without a blank line; unexpected unindent - Misc: document isn't included in any toctree Verified that a clean docs build (`rm -rf docs/ && ninja docs-llvm-html`) passes with no errors. Spot checked the individual pages to make sure they look OK. Reviewers: thakis, dsanders Reviewed By: dsanders Subscribers: arphaman, llvm-commits, lhames, rovka, dsanders, reames Tags: #llvm Differential Revision: https://reviews.llvm.org/D66183 llvm-svn: 368932 --- llvm/docs/GettingStarted.rst | 4 ++-- llvm/docs/GlobalISel.rst | 5 ++++- llvm/docs/LoopTerminology.rst | 1 + llvm/docs/ORCv2.rst | 27 ++++++++++++--------------- llvm/docs/index.rst | 8 ++++++++ llvm/docs/tutorial/index.rst | 7 ++++--- 6 files changed, 31 insertions(+), 21 deletions(-) diff --git a/llvm/docs/GettingStarted.rst b/llvm/docs/GettingStarted.rst index a874b49..479beca 100644 --- a/llvm/docs/GettingStarted.rst +++ b/llvm/docs/GettingStarted.rst @@ -95,7 +95,7 @@ Here's the short story for getting up and running quickly with LLVM: ``make -j NNN`` (with an appropriate value of NNN, e.g. number of CPUs you have.) - * For more information see `CMake `_ + * For more information see `CMake `__ * If you get an "internal compiler error (ICE)" or test failures, see `below`_. @@ -169,7 +169,7 @@ uses the package and provides other details. =========================================================== ============ ========================================== Package Version Notes =========================================================== ============ ========================================== -`CMake `_ >=3.4.3 Makefile/workspace generator +`CMake `__ >=3.4.3 Makefile/workspace generator `GCC `_ >=5.1.0 C/C++ compiler\ :sup:`1` `python `_ >=2.7 Automated test suite\ :sup:`2` `zlib `_ >=1.2.3.4 Compression library\ :sup:`3` diff --git a/llvm/docs/GlobalISel.rst b/llvm/docs/GlobalISel.rst index e83e371..723d79d 100644 --- a/llvm/docs/GlobalISel.rst +++ b/llvm/docs/GlobalISel.rst @@ -573,11 +573,13 @@ connect operations with different type sizes. They are usually trivial to suppor since G_ANYEXT doesn't define the value of the additional bits and G_TRUNC is discarding bits. The other conversions can be lowered into G_ANYEXT/G_TRUNC with some additional operations that are subject to further legalization. For -example, G_SEXT can lower to: +example, G_SEXT can lower to:: + %1 = G_ANYEXT %0 %2 = G_CONSTANT ... %3 = G_SHL %1, %2 %4 = G_ASHR %3, %2 + and the G_CONSTANT/G_SHL/G_ASHR can further lower to other operations or target instructions. Similarly, G_FPEXT has no legality requirement since it can lower to a G_ANYEXT followed by a target instruction. @@ -622,6 +624,7 @@ The rules for G_ANYEXT, G_MERGE_VALUES, G_BITCAST, G_BUILD_VECTOR, G_BUILD_VECTOR_TRUNC, G_CONCAT_VECTORS, G_UNMERGE_VALUES, G_PTRTOINT, and G_INTTOPTR have already been noted above. In addition to those, the following operations have requirements: + * At least one G_IMPLICIT_DEF must be legal. This is usually trivial as it requires no code to be selected. * G_PHI must be legal for all types in the producer and consumer typesets. This diff --git a/llvm/docs/LoopTerminology.rst b/llvm/docs/LoopTerminology.rst index e901720..991282e 100644 --- a/llvm/docs/LoopTerminology.rst +++ b/llvm/docs/LoopTerminology.rst @@ -1,4 +1,5 @@ .. _loop-terminology: + =========================================== LLVM Loop Terminology (and Canonical Forms) =========================================== diff --git a/llvm/docs/ORCv2.rst b/llvm/docs/ORCv2.rst index d39fcd1..ba4534e 100644 --- a/llvm/docs/ORCv2.rst +++ b/llvm/docs/ORCv2.rst @@ -476,24 +476,21 @@ or creating any Modules attached to it. E.g. .. code-block:: c++ + ThreadSafeContext TSCtx(llvm::make_unique()); - ThreadSafeContext TSCtx(llvm::make_unique()); - - ThreadPool TP(NumThreads); - JITStack J; - - for (auto &ModulePath : ModulePaths) { - TP.async( - [&]() { - auto Lock = TSCtx.getLock(); - - auto M = loadModuleOnContext(ModulePath, TSCtx.getContext()); + ThreadPool TP(NumThreads); + JITStack J; - J.addModule(ThreadSafeModule(std::move(M), TSCtx)); - }); - } + for (auto &ModulePath : ModulePaths) { + TP.async( + [&]() { + auto Lock = TSCtx.getLock(); + auto M = loadModuleOnContext(ModulePath, TSCtx.getContext()); + J.addModule(ThreadSafeModule(std::move(M), TSCtx)); + }); + } - TP.wait(); + TP.wait(); To make exclusive access to Modules easier to manage the ThreadSafeModule class provides a convenince function, ``withModuleDo``, that implicitly (1) locks the diff --git a/llvm/docs/index.rst b/llvm/docs/index.rst index cf14767..e0db996 100644 --- a/llvm/docs/index.rst +++ b/llvm/docs/index.rst @@ -274,6 +274,7 @@ For API clients and LLVM developers. BlockFrequencyTerminology BranchWeightMetadata Bugpoint + BugpointRedesign CodeGenerator ExceptionHandling AddingConstrainedIntrinsics @@ -313,6 +314,7 @@ For API clients and LLVM developers. CFIVerify SpeculativeLoadHardening StackSafetyAnalysis + LoopTerminology :doc:`WritingAnLLVMPass` Information on how to write LLVM transformations and analyses. @@ -363,6 +365,9 @@ For API clients and LLVM developers. Automatic bug finder and test-case reducer description and usage information. +:doc:`BugpointRedesign` + Design doc for a redesign of the Bugpoint tool. + :doc:`BitCodeFormat` This describes the file format and encoding used for LLVM "bc" files. @@ -461,6 +466,9 @@ 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. + Development Process Documentation ================================= diff --git a/llvm/docs/tutorial/index.rst b/llvm/docs/tutorial/index.rst index 6fae00a..1a5277d 100644 --- a/llvm/docs/tutorial/index.rst +++ b/llvm/docs/tutorial/index.rst @@ -10,9 +10,10 @@ Kaleidoscope: Implementing a Language with LLVM :glob: :numbered: -#. `My First Language Frontend with LLVM Tutorial `_ - This is the "Kaleidoscope" Language tutorial, showing how to implement - a simple language using LLVM components in C++. + MyFirstLanguageFrontend/index + +This is the "Kaleidoscope" Language tutorial, showing how to implement a simple +language using LLVM components in C++. Kaleidoscope: Implementing a Language with LLVM in Objective Caml ================================================================= -- 2.7.4