Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 1 | .. _programming: |
| 2 | |
| 3 | Programming Documentation |
| 4 | ========================= |
| 5 | |
Bill Wendling | eef31a5 | 2012-06-20 11:56:24 +0000 | [diff] [blame] | 6 | .. toctree:: |
| 7 | :hidden: |
| 8 | |
| 9 | CodingStandards |
Bill Wendling | 0bd3dee | 2012-08-08 08:21:24 +0000 | [diff] [blame] | 10 | CommandLine |
Bill Wendling | 53960a6 | 2012-10-07 04:34:10 +0000 | [diff] [blame^] | 11 | CompilerWriterInfo |
Sean Silva | 258aeb5 | 2012-09-21 02:46:32 +0000 | [diff] [blame] | 12 | Atomics |
Sean Silva | 36be1ae | 2012-10-05 03:32:01 +0000 | [diff] [blame] | 13 | HowToSetUpLLVMStyleRTTI |
Bill Wendling | eef31a5 | 2012-06-20 11:56:24 +0000 | [diff] [blame] | 14 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 15 | * `LLVM Language Reference Manual <LangRef.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 16 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 17 | Defines the LLVM intermediate representation and the assembly form of the |
| 18 | different nodes. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 19 | |
Sean Silva | 258aeb5 | 2012-09-21 02:46:32 +0000 | [diff] [blame] | 20 | * :ref:`atomics` |
| 21 | |
| 22 | Information about LLVM's concurrency model. |
| 23 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 24 | * `The LLVM Programmers Manual <ProgrammersManual.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 25 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 26 | Introduction to the general layout of the LLVM sourcebase, important classes |
| 27 | and APIs, and some tips & tricks. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 28 | |
Bill Wendling | 0bd3dee | 2012-08-08 08:21:24 +0000 | [diff] [blame] | 29 | * :ref:`commandline` |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 30 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 31 | Provides information on using the command line parsing library. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 32 | |
Bill Wendling | eef31a5 | 2012-06-20 11:56:24 +0000 | [diff] [blame] | 33 | * :ref:`coding_standards` |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 34 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 35 | Details the LLVM coding standards and provides useful information on writing |
| 36 | efficient C++ code. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 37 | |
Sean Silva | 36be1ae | 2012-10-05 03:32:01 +0000 | [diff] [blame] | 38 | * :doc:`HowToSetUpLLVMStyleRTTI` |
| 39 | |
| 40 | How to make ``isa<>``, ``dyn_cast<>``, etc. available for clients of your |
| 41 | class hierarchy. |
| 42 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 43 | * `Extending LLVM <ExtendingLLVM.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 44 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 45 | Look here to see how to add instructions and intrinsics to LLVM. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 46 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 47 | * `Doxygen generated documentation <http://llvm.org/doxygen/>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 48 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 49 | (`classes <http://llvm.org/doxygen/inherits.html>`_) |
| 50 | (`tarball <http://llvm.org/doxygen/doxygen.tar.gz>`_) |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 51 | |
Bill Wendling | af5e2e7 | 2012-06-20 11:55:22 +0000 | [diff] [blame] | 52 | * `ViewVC Repository Browser <http://llvm.org/viewvc/>`_ |
Bill Wendling | 53960a6 | 2012-10-07 04:34:10 +0000 | [diff] [blame^] | 53 | |
| 54 | * :ref:`compiler_writer_info` |
| 55 | |
| 56 | A list of helpful links for compiler writers. |