Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 1 | .. _design_and_overview: |
| 2 | |
| 3 | LLVM Design & Overview |
| 4 | ====================== |
| 5 | |
Bill Wendling | 3950e9e | 2012-06-20 21:54:22 +0000 | [diff] [blame] | 6 | .. toctree:: |
| 7 | :hidden: |
| 8 | |
Sean Silva | f722b00 | 2012-12-07 10:36:55 +0000 | [diff] [blame] | 9 | LangRef |
Bill Wendling | 3950e9e | 2012-06-20 21:54:22 +0000 | [diff] [blame] | 10 | GetElementPtr |
| 11 | |
Sean Silva | f722b00 | 2012-12-07 10:36:55 +0000 | [diff] [blame] | 12 | * :doc:`LangRef` |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 13 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 14 | Defines the LLVM intermediate representation. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 15 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 16 | * `Introduction to the LLVM Compiler <http://llvm.org/pubs/2008-10-04-ACAT-LLVM-Intro.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 17 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 18 | Presentation providing a users introduction to LLVM. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 19 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 20 | * `Intro to LLVM <http://www.aosabook.org/en/llvm.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 21 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 22 | Book chapter providing a compiler hacker's introduction to LLVM. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 23 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 24 | * `LLVM: A Compilation Framework forLifelong Program Analysis & Transformation |
| 25 | <http://llvm.org/pubs/2004-01-30-CGO-LLVM.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 26 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 27 | Design overview. |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 28 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 29 | * `LLVM: An Infrastructure for Multi-Stage Optimization |
| 30 | <http://llvm.org/pubs/2002-12-LattnerMSThesis.html>`_ |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 31 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 32 | More details (quite old now). |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 33 | |
Bill Wendling | 3950e9e | 2012-06-20 21:54:22 +0000 | [diff] [blame] | 34 | * :ref:`gep` |
Daniel Dunbar | 21e993c | 2012-04-19 16:31:37 +0000 | [diff] [blame] | 35 | |
Bill Wendling | 19c7541 | 2012-06-20 09:49:06 +0000 | [diff] [blame] | 36 | Answers to some very frequent questions about LLVM's most frequently |
| 37 | misunderstood instruction. |