blob: 9dfab67f42eb3411e2f2f18b9f98d513835721de [file] [log] [blame]
DeForest Richardse3e66242019-09-05 17:30:52 +00001User Guides
2===========
3
4For those new to the LLVM system.
5
6NOTE: If you are a user who is only interested in using an LLVM-based compiler,
7you should look into `Clang <http://clang.llvm.org>`_ instead. The
8documentation here is intended for users who have a need to work with the
9intermediate LLVM representation.
10
11.. toctree::
12 :hidden:
13
14 CMake
15 CMakePrimer
16 AdvancedBuilds
17 HowToBuildOnARM
18 HowToBuildWithPGO
19 HowToCrossCompileBuiltinsOnArm
20 HowToCrossCompileLLVM
DeForest Richardse3e66242019-09-05 17:30:52 +000021 yaml2obj
DeForest Richardse3e66242019-09-05 17:30:52 +000022 MarkdownQuickstartTemplate
23 Phabricator
DeForest Richardse3e66242019-09-05 17:30:52 +000024 Passes
25 YamlIO
26 GetElementPtr
27 Frontend/PerformanceTips
28 MCJITDesignAndImplementation
29 ORCv2
30 CodeOfConduct
31 CompileCudaWithLLVM
32 ReportingGuide
33 Benchmarking
34 Docker
35 BuildingADistribution
36 Remarks
37
DeForest Richardse3e66242019-09-05 17:30:52 +000038:doc:`CMake`
39 An addendum to the main Getting Started guide for those using the `CMake
40 build system <http://www.cmake.org>`_.
41
42:doc:`HowToBuildOnARM`
43 Notes on building and testing LLVM/Clang on ARM.
44
45:doc:`HowToBuildWithPGO`
46 Notes on building LLVM/Clang with PGO.
47
48:doc:`HowToCrossCompileBuiltinsOnArm`
49 Notes on cross-building and testing the compiler-rt builtins for Arm.
50
51:doc:`HowToCrossCompileLLVM`
52 Notes on cross-building and testing LLVM/Clang.
53
DeForest Richardse3e66242019-09-05 17:30:52 +000054:doc:`Passes`
55 A list of optimizations and analyses implemented in LLVM.
56
DeForest Richardse3e66242019-09-05 17:30:52 +000057:doc:`TestSuiteGuide`
58 Describes how to compile and run the test-suite benchmarks.
59
60`How to build the C, C++, ObjC, and ObjC++ front end`__
61 Instructions for building the clang front-end from source.
62
63 .. __: http://clang.llvm.org/get_started.html
64
DeForest Richardse3e66242019-09-05 17:30:52 +000065:doc:`YamlIO`
66 A reference guide for using LLVM's YAML I/O library.
67
68:doc:`GetElementPtr`
69 Answers to some very frequent questions about LLVM's most frequently
70 misunderstood instruction.
71
72:doc:`Frontend/PerformanceTips`
73 A collection of tips for frontend authors on how to generate IR
74 which LLVM is able to effectively optimize.
75
76:doc:`Docker`
77 A reference for using Dockerfiles provided with LLVM.
78
79:doc:`BuildingADistribution`
80 A best-practices guide for using LLVM's CMake build system to package and
81 distribute LLVM-based tools.
82
83:doc:`Remarks`
84 A reference on the implementation of remarks in LLVM.