[ARM] Identity shuffles are legal
[llvm-complete.git] / docs / index.rst
blob17a0706a196bd8ec62a636168397f7000d05e0f0
1 About
2 ========
4 .. warning::
6    If you are using a released version of LLVM, see `the download page
7    <http://llvm.org/releases/>`_ to find your documentation.
9 The LLVM compiler infrastructure supports a wide range of projects, from
10 industrial strength compilers to specialized JIT applications to small
11 research projects.
13 Similarly, documentation is broken down into several high-level groupings
14 targeted at different audiences:
16 LLVM Design & Overview
17 ======================
19 Several introductory papers and presentations.
21 .. toctree::
22    :hidden:
24    FAQ
25    Lexicon
27 `Introduction to the LLVM Compiler`__
28   Presentation providing a users introduction to LLVM.
30   .. __: http://llvm.org/pubs/2008-10-04-ACAT-LLVM-Intro.html
32 `Intro to LLVM`__
33   Book chapter providing a compiler hacker's introduction to LLVM.
35   .. __: http://www.aosabook.org/en/llvm.html
38 `LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation`__
39   Design overview.
41   .. __: http://llvm.org/pubs/2004-01-30-CGO-LLVM.html
43 `LLVM: An Infrastructure for Multi-Stage Optimization`__
44   More details (quite old now).
46   .. __: http://llvm.org/pubs/2002-12-LattnerMSThesis.html
48 Documentation
49 =============
51 Getting Started, How-tos, Developer Guides, and Tutorials.
53 .. toctree::
54    :hidden:
56    UserGuides
57    ProgrammingDocumentation
58    Reference
59    SubsystemDocumentation
61 :doc:`UserGuides`
62   For those new to the LLVM system.
64 :doc:`ProgrammingDocumentation`
65   For developers of applications which use LLVM as a library.
67 :doc:`SubsystemDocumentation`
68   For API clients and LLVM developers.
70 :doc:`Reference`
71   LLVM and API reference documentation.
73 Getting Started/Tutorials
74 -------------------------
76 .. toctree::
77    :hidden:
79    GettingStarted
80    tutorial/index
81    GettingStartedVS
83 :doc:`GettingStarted`
84    Discusses how to get up and running quickly with the LLVM infrastructure.
85    Everything from unpacking and compilation of the distribution to execution
86    of some tools.
88 :doc:`tutorial/index`
89    Tutorials about using LLVM. Includes a tutorial about making a custom
90    language with LLVM.
92 :doc:`GettingStartedVS`
93    An addendum to the main Getting Started guide for those using Visual Studio
94    on Windows.
96 Community
97 =========
99 LLVM welcomes contributions of all kinds. To learn more, see the following articles:
101 .. toctree::
102    :hidden:
104    GettingInvolved
106 * :doc:`GettingInvolved`
107 * :ref:`development-process`
108 * :ref:`mailing-lists`
109 * :ref:`meetups-social-events`
110 * :ref:`community-proposals`
112 Indices and tables
113 ==================
115 * :ref:`genindex`
116 * :ref:`search`