brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.3 KiB · 212aefa Raw
257 lines · plain
1Reference2=========3 4LLVM and API reference documentation.5 6.. contents::7   :local:8 9.. toctree::10   :hidden:11 12   Atomics13   BitCodeFormat14   BlockFrequencyTerminology15   BranchWeightMetadata16   Bugpoint17   CalleeTypeMetadata18   CallGraphSection19   CIBestPractices20   CommandGuide/index21   ContentAddressableStorage22   ConvergenceAndUniformity23   ConvergentOperations24   Coroutines25   DependenceGraphs/index26   ExceptionHandling27   Extensions28   FaultMaps29   FuzzingLLVM30   GarbageCollection31   GetElementPtr32   GlobalISel/index33   GwpAsan34   HowToSetUpLLVMStyleRTTI35   HowToUseAttributes36   InAlloca37   InterfaceExportAnnotations38   LangRef39   LibFuzzer40   MarkedUpDisassembly41   MIRLangRef42   OptBisect43   PCSectionsMetadata44   PDB/index45   PointerAuth46   MLGO47   ScudoHardenedAllocator48   MemoryModelRelaxationAnnotations49   MemTagSanitizer50   QualGroup51   Security52   SecurityTransparencyReports53   SegmentedStacks54   StackMaps55   SpeculativeLoadHardening56   Statepoints57   SymbolizerMarkupFormat58   SystemLibrary59   TestingGuide60   TransformMetadata61   TypeMetadata62   UndefinedBehavior63   XRay64   XRayExample65   XRayFDRFormat66   YamlIO67 68API Reference69-------------70 71`Doxygen generated documentation <https://llvm.org/doxygen/>`_72  (`classes <https://llvm.org/doxygen/inherits.html>`_)73 74:doc:`HowToUseAttributes`75  Answers some questions about the new Attributes infrastructure.76 77LLVM Reference78--------------79 80======================81Command Line Utilities82======================83 84:doc:`LLVM Command Guide <CommandGuide/index>`85   A reference manual for the LLVM command line utilities ("man" pages for LLVM86   tools).87 88:doc:`Bugpoint`89   Automatic bug finder and test-case reducer description and usage90   information.91 92:doc:`OptBisect`93  A command line option for debugging optimization-induced failures.94 95:doc:`SymbolizerMarkupFormat`96  A reference for the log symbolizer markup accepted by ``llvm-symbolizer``.97 98:doc:`The Microsoft PDB File Format <PDB/index>`99  A detailed description of the Microsoft PDB (Program Database) file format.100 101==================102Garbage Collection103==================104 105:doc:`GarbageCollection`106   The interfaces source-language compilers should use for compiling GC'd107   programs.108 109:doc:`Statepoints`110  This describes a set of experimental extensions for garbage111  collection support.112 113=========114LibFuzzer115=========116 117:doc:`LibFuzzer`118  A library for writing in-process guided fuzzers.119 120:doc:`FuzzingLLVM`121  Information on writing and using Fuzzers to find bugs in LLVM.122 123========124LLVM IR125========126 127:doc:`LLVM Language Reference Manual <LangRef>`128  Defines the LLVM intermediate representation and the assembly form of the129  different nodes.130 131:doc:`Undefined Behavior (UB) <UndefinedBehavior>`132  A guide on what UB/undef/poison are and when to use each one.133 134:doc:`InAlloca`135  Description of the ``inalloca`` argument attribute.136 137:doc:`BitCodeFormat`138   This describes the file format and encoding used for LLVM "bc" files.139 140:doc:`Machine IR (MIR) Format Reference Manual <MIRLangRef>`141   A reference manual for the MIR serialization format, which is used to test142   LLVM's code generation passes.143 144:doc:`GlobalISel/index`145  This describes the prototype instruction selection replacement, GlobalISel.146 147:doc:`ConvergentOperations`148  Description of ``convergent`` operation semantics and related intrinsics.149 150=====================151Testing and Debugging152=====================153 154:doc:`LLVM Testing Infrastructure Guide <TestingGuide>`155   A reference manual for using the LLVM testing infrastructure.156 157:doc:`TestSuiteGuide`158  Describes how to compile and run the test-suite benchmarks.159 160 161:doc:`GwpAsan`162  A sampled heap memory error detection toolkit designed for production use.163 164====165XRay166====167 168:doc:`XRay`169  High-level documentation of how to use XRay in LLVM.170 171:doc:`XRayExample`172  An example of how to debug an application with XRay.173 174=================175Additional Topics176=================177 178:doc:`FaultMaps`179  LLVM support for folding control flow into faulting machine instructions.180 181:doc:`Atomics`182  Information about LLVM's concurrency model.183 184:doc:`ExceptionHandling`185   This document describes the design and implementation of exception handling186   in LLVM.187 188:doc:`Extensions`189  LLVM-specific extensions to tools and formats LLVM seeks compatibility with.190 191:doc:`HowToSetUpLLVMStyleRTTI`192  How to make ``isa<>``, ``dyn_cast<>``, etc. available for clients of your193  class hierarchy.194 195:doc:`BlockFrequencyTerminology`196   Provides information about terminology used in the ``BlockFrequencyInfo``197   analysis pass.198 199:doc:`BranchWeightMetadata`200   Provides information about Branch Prediction Information.201 202:doc:`GetElementPtr`203  Answers to some very frequent questions about LLVM's most frequently204  misunderstood instruction.205 206:doc:`ScudoHardenedAllocator`207  A library that implements a security-hardened `malloc()`.208 209:doc:`MemoryModelRelaxationAnnotations`210  Target-defined relaxation to LLVM's concurrency model.211 212:doc:`MemTagSanitizer`213  Security hardening for production code aiming to mitigate memory214  related vulnerabilities. Based on the Armv8.5-A Memory Tagging Extension.215 216:doc:`Dependence Graphs <DependenceGraphs/index>`217  A description of the design of the various dependence graphs such as218  the DDG (Data Dependence Graph).219 220:doc:`SpeculativeLoadHardening`221  A description of the Speculative Load Hardening mitigation for Spectre v1.222 223:doc:`SegmentedStacks`224   This document describes segmented stacks and how they are used in LLVM.225 226:doc:`MarkedUpDisassembly`227   This document describes the optional rich disassembly output syntax.228 229:doc:`StackMaps`230  LLVM support for mapping instruction addresses to the location of231  values and allowing code to be patched.232 233:doc:`Coroutines`234  LLVM support for coroutines.235 236:doc:`PointerAuth`237  A description of pointer authentication, its LLVM IR representation, and its238  support in the backend.239 240:doc:`YamlIO`241   A reference guide for using LLVM's YAML I/O library.242 243:doc:`ConvergenceAndUniformity`244   A description of uniformity analysis in the presence of irreducible245   control flow, and its implementation.246 247:doc:`MLGO`248   Facilities for ML-Guided Optimization, such as collecting IR corpora from a249   build, interfacing with ML models, an exposing features for training.250 251:doc:`ContentAddressableStorage`252   A reference guide for using LLVM's CAS library.253 254:doc:`CIBestPractices`255   A list of guidelines and best practices to use when working on LLVM's256   CI systems.257