blob: 6aefc86b10ad5bc905f80bf00d6cbf9d924aebd7 [file] [log] [blame]
Daniel Dunbar21e993c2012-04-19 16:31:37 +00001Overview
2========
3
4.. warning::
5
6 If you are using a released version of LLVM, see `the download page
7 <http://llvm.org/releases/>`_ to find your documentation.
8
9The LLVM compiler infrastructure supports a wide range of projects, from
10industrial strength compilers to specialized JIT applications to small
11research projects.
12
13Similarly, documentation is broken down into several high-level groupings
Benjamin Kramerd9b0b022012-06-02 10:20:22 +000014targeted at different audiences:
Daniel Dunbar21e993c2012-04-19 16:31:37 +000015
Sean Silva74a19f02012-09-28 21:18:37 +000016* **Design & Overview**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000017
Sean Silva74a19f02012-09-28 21:18:37 +000018 Several introductory papers and presentations are available at
Sean Silvaa7aec402013-01-11 02:28:08 +000019 :doc:`design_and_overview`.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000020
Sean Silva74a19f02012-09-28 21:18:37 +000021* **Publications**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000022
Sean Silva74a19f02012-09-28 21:18:37 +000023 The list of `publications <http://llvm.org/pubs>`_ based on LLVM.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000024
Sean Silva74a19f02012-09-28 21:18:37 +000025* **User Guides**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000026
Sean Silvaa7aec402013-01-11 02:28:08 +000027 Those new to the LLVM system should first visit the :doc:`userguides`.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000028
Sean Silva74a19f02012-09-28 21:18:37 +000029 NOTE: If you are a user who is only interested in using LLVM-based
30 compilers, you should look into `Clang <http://clang.llvm.org>`_ or
31 `DragonEgg <http://dragonegg.llvm.org>`_ instead. The documentation here is
32 intended for users who have a need to work with the intermediate LLVM
33 representation.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000034
Sean Silva74a19f02012-09-28 21:18:37 +000035* **API Clients**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000036
Sean Silva74a19f02012-09-28 21:18:37 +000037 Developers of applications which use LLVM as a library should visit the
Sean Silvaa7aec402013-01-11 02:28:08 +000038 :doc:`programming`.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000039
Sean Silva74a19f02012-09-28 21:18:37 +000040* **Subsystems**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000041
Sean Silva74a19f02012-09-28 21:18:37 +000042 API clients and LLVM developers may be interested in the
Sean Silvaa7aec402013-01-11 02:28:08 +000043 :doc:`subsystems` documentation.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000044
Sean Silva74a19f02012-09-28 21:18:37 +000045* **Development Process**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000046
Sean Silva74a19f02012-09-28 21:18:37 +000047 Additional documentation on the LLVM project can be found at
Sean Silvaa7aec402013-01-11 02:28:08 +000048 :doc:`development_process`.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000049
Sean Silva74a19f02012-09-28 21:18:37 +000050* **Mailing Lists**
Daniel Dunbar21e993c2012-04-19 16:31:37 +000051
Sean Silvaa7aec402013-01-11 02:28:08 +000052 For more information, consider consulting the LLVM :doc:`mailing_lists`.
Daniel Dunbar21e993c2012-04-19 16:31:37 +000053
54.. toctree::
55 :maxdepth: 2
56
57 design_and_overview
58 userguides
59 programming
60 subsystems
61 development_process
62 mailing_lists
63
64Indices and tables
65==================
66
67* :ref:`genindex`
68* :ref:`search`