1 Subsystem Documentation
2 =======================
27 * :doc:`WritingAnLLVMPass`
29 Information on how to write LLVM transformations and analyses.
31 * :doc:`WritingAnLLVMBackend`
33 Information on how to write LLVM backends for machine targets.
35 * :doc:`CodeGenerator`
37 The design and implementation of the LLVM code generator. Useful if you are
38 working on retargetting LLVM to a new architecture, designing a new codegen
39 pass, or enhancing existing components.
41 * :doc:`TableGenFundamentals`
43 Describes the TableGen tool, which is used heavily by the LLVM code
46 * :doc:`AliasAnalysis`
48 Information on how to write a new alias analysis implementation or how to
49 use existing analyses.
51 * :doc:`GarbageCollection`
53 The interfaces source-language compilers should use for compiling GC'd
56 * :doc:`Source Level Debugging with LLVM <SourceLevelDebugging>`
58 This document describes the design and philosophy behind the LLVM
59 source-level debugger.
63 This document describes the current status of vectorization in LLVM.
65 * :doc:`ExceptionHandling`
67 This document describes the design and implementation of exception handling
72 Automatic bug finder and test-case reducer description and usage
75 * :doc:`BitCodeFormat`
77 This describes the file format and encoding used for LLVM "bc" files.
79 * :doc:`System Library <SystemLibrary>`
81 This document describes the LLVM System Library (``lib/System``) and
82 how to keep LLVM source code portable
84 * :doc:`LinkTimeOptimization`
86 This document describes the interface between LLVM intermodular optimizer
87 and the linker and its design
91 How to build your programs with link-time optimization on Linux.
93 * :doc:`DebuggingJITedCode`
95 How to debug JITed code with GDB.
97 * :doc:`BranchWeightMetadata`
99 Provides information about Branch Prediction Information.
101 * :doc:`SegmentedStacks`
103 This document describes segmented stacks and how they are used in LLVM.
105 * :doc:`MarkedUpDisassembly`
107 This document describes the optional rich disassembly output syntax.