| Programming Documentation | |
| ========================= | |
| For developers of applications which use LLVM as a library. | |
| .. toctree:: | |
| :hidden: | |
| Atomics | |
| CommandLine | |
| CommandGuide/index | |
| ExtendingLLVM | |
| HowToSetUpLLVMStyleRTTI | |
| ProgrammersManual | |
| Extensions | |
| LibFuzzer | |
| FuzzingLLVM | |
| ScudoHardenedAllocator | |
| OptBisect | |
| GwpAsan | |
| :doc:`Atomics` | |
| Information about LLVM's concurrency model. | |
| :doc:`ProgrammersManual` | |
| Introduction to the general layout of the LLVM sourcebase, important classes | |
| and APIs, and some tips & tricks. | |
| :doc:`Extensions` | |
| LLVM-specific extensions to tools and formats LLVM seeks compatibility with. | |
| :doc:`HowToSetUpLLVMStyleRTTI` | |
| How to make ``isa<>``, ``dyn_cast<>``, etc. available for clients of your | |
| class hierarchy. | |
| :doc:`ExtendingLLVM` | |
| Look here to see how to add instructions and intrinsics to LLVM. | |
| :doc:`ScudoHardenedAllocator` | |
| A library that implements a security-hardened `malloc()`. | |
| :doc:`GwpAsan` | |
| A sampled heap memory error detection toolkit designed for production use. | |
| ============ | |
| Command Line | |
| ============ | |
| :doc:`CommandLine` | |
| Provides information on using the command line parsing library. | |
| :doc:`OptBisect` | |
| A command line option for debugging optimization-induced failures. | |
| :doc:`LLVM Command Guide <CommandGuide/index>` | |
| A reference manual for the LLVM command line utilities ("man" pages for LLVM | |
| tools). | |
| ========= | |
| LibFuzzer | |
| ========= | |
| :doc:`LibFuzzer` | |
| A library for writing in-process guided fuzzers. | |
| :doc:`FuzzingLLVM` | |
| Information on writing and using Fuzzers to find bugs in LLVM. |