4 LLVM and API reference documentation.
\r
14 BlockFrequencyTerminology
\r
15 BranchWeightMetadata
\r
20 DependenceGraphs/index
\r
29 HowToSetUpLLVMStyleRTTI
\r
39 ScudoHardenedAllocator
\r
42 SpeculativeLoadHardening
\r
56 `Doxygen generated documentation <http://llvm.org/doxygen/>`_
\r
57 (`classes <http://llvm.org/doxygen/inherits.html>`_)
\r
59 :doc:`HowToUseAttributes`
\r
60 Answers some questions about the new Attributes infrastructure.
\r
62 `Documentation for Go bindings <http://godoc.org/llvm.org/llvm/bindings/go/llvm>`_
\r
65 Describes the design and implementation of the ORC APIs, including some
\r
66 usage examples, and a guide for users transitioning from ORCv1 to ORCv2.
\r
71 ======================
\r
72 Command Line Utilities
\r
73 ======================
\r
75 :doc:`LLVM Command Guide <CommandGuide/index>`
\r
76 A reference manual for the LLVM command line utilities ("man" pages for LLVM
\r
80 Automatic bug finder and test-case reducer description and usage
\r
84 A command line option for debugging optimization-induced failures.
\r
86 :doc:`The Microsoft PDB File Format <PDB/index>`
\r
87 A detailed description of the Microsoft PDB (Program Database) file format.
\r
93 :doc:`GarbageCollection`
\r
94 The interfaces source-language compilers should use for compiling GC'd
\r
98 This describes a set of experimental extensions for garbage
\r
106 A library for writing in-process guided fuzzers.
\r
109 Information on writing and using Fuzzers to find bugs in LLVM.
\r
115 :doc:`LLVM Language Reference Manual <LangRef>`
\r
116 Defines the LLVM intermediate representation and the assembly form of the
\r
120 Description of the ``inalloca`` argument attribute.
\r
122 :doc:`BitCodeFormat`
\r
123 This describes the file format and encoding used for LLVM "bc" files.
\r
125 :doc:`Machine IR (MIR) Format Reference Manual <MIRLangRef>`
\r
126 A reference manual for the MIR serialization format, which is used to test
\r
127 LLVM's code generation passes.
\r
130 This describes the prototype instruction selection replacement, GlobalISel.
\r
136 :doc:`LLVM Testing Infrastructure Guide <TestingGuide>`
\r
137 A reference manual for using the LLVM testing infrastructure.
\r
139 :doc:`TestSuiteGuide`
\r
140 Describes how to compile and run the test-suite benchmarks.
\r
147 High-level documentation of how to use XRay in LLVM.
\r
150 An example of how to debug an application with XRay.
\r
157 LLVM support for folding control flow into faulting machine instructions.
\r
160 Information about LLVM's concurrency model.
\r
162 :doc:`ExceptionHandling`
\r
163 This document describes the design and implementation of exception handling
\r
167 LLVM-specific extensions to tools and formats LLVM seeks compatibility with.
\r
169 :doc:`HowToSetUpLLVMStyleRTTI`
\r
170 How to make ``isa<>``, ``dyn_cast<>``, etc. available for clients of your
\r
173 :doc:`BlockFrequencyTerminology`
\r
174 Provides information about terminology used in the ``BlockFrequencyInfo``
\r
177 :doc:`BranchWeightMetadata`
\r
178 Provides information about Branch Prediction Information.
\r
180 :doc:`GetElementPtr`
\r
181 Answers to some very frequent questions about LLVM's most frequently
\r
182 misunderstood instruction.
\r
184 :doc:`ScudoHardenedAllocator`
\r
185 A library that implements a security-hardened `malloc()`.
\r
188 A sampled heap memory error detection toolkit designed for production use.
\r
190 :doc:`Dependence Graphs <DependenceGraphs/index>`
\r
191 A description of the design of the various dependence graphs such as
\r
192 the DDG (Data Dependence Graph).
\r
195 A description of the verification tool for Control Flow Integrity.
\r
197 :doc:`SpeculativeLoadHardening`
\r
198 A description of the Speculative Load Hardening mitigation for Spectre v1.
\r
200 :doc:`SegmentedStacks`
\r
201 This document describes segmented stacks and how they are used in LLVM.
\r
203 :doc:`MarkedUpDisassembly`
\r
204 This document describes the optional rich disassembly output syntax.
\r
207 LLVM support for mapping instruction addresses to the location of
\r
208 values and allowing code to be patched.
\r
211 LLVM support for coroutines.
\r
214 A reference guide for using LLVM's YAML I/O library.