.. _userguides:

User Guides
===========

.. toctree::
   :hidden:

   CMake
   HowToBuildOnARM
   CommandGuide/index
   DeveloperPolicy
   GettingStarted
   GettingStartedVS
   FAQ
   Lexicon
   Packaging
   HowToAddABuilder
   yaml2obj
   HowToSubmitABug
   SphinxQuickstartTemplate
   Phabricator
   TestingGuide
   tutorial/index
   ReleaseNotes
   Passes
   YamlIO

* :ref:`getting_started`
    
   Discusses how to get up and running quickly with the LLVM infrastructure.
   Everything from unpacking and compilation of the distribution to execution
   of some tools.
    
* :ref:`building-with-cmake`

   An addendum to the main Getting Started guide for those using the `CMake
   build system <http://www.cmake.org>`_.

* :ref:`how_to_build_on_arm`

   Notes on building and testing LLVM/Clang on ARM.

* :doc:`GettingStartedVS`

   An addendum to the main Getting Started guide for those using Visual Studio
   on Windows.
    
* :doc:`tutorial/index`

   A walk through the process of using LLVM for a custom language, and the
   facilities LLVM offers in tutorial form.

* :ref:`developer_policy`

   The LLVM project's policy towards developers and their contributions.

* :ref:`LLVM Command Guide <commands>`

   A reference manual for the LLVM command line utilities ("man" pages for LLVM
   tools).
    
* :doc:`Passes`

   A list of optimizations and analyses implemented in LLVM.

* :ref:`faq`

   A list of common questions and problems and their solutions.
    
* :doc:`Release notes for the current release <ReleaseNotes>`

   This describes new features, known bugs, and other limitations.

* :ref:`how-to-submit-a-bug-report`
    
   Instructions for properly submitting information about any bugs you run into
   in the LLVM system.
* :doc:`SphinxQuickstartTemplate`

  A template + tutorial for writing new Sphinx documentation. It is meant
  to be read in source form.
    
* :doc:`LLVM Testing Infrastructure Guide <TestingGuide>`

   A reference manual for using the LLVM testing infrastructure.
    
* `How to build the C, C++, ObjC, and ObjC++ front end <http://clang.llvm.org/get_started.html>`_

   Instructions for building the clang front-end from source.
    
* :ref:`packaging`

   Advice on packaging LLVM into a distribution.
    
* :ref:`lexicon`

   Definition of acronyms, terms and concepts used in LLVM.

* :ref:`how_to_add_a_builder`

   Instructions for adding new builder to LLVM buildbot master.
    
* :ref:`yamlio`

   A reference guide for using LLVM's YAML I/O library.

* **IRC** -- You can probably find help on the unofficial LLVM IRC.

   We often are on irc.oftc.net in the #llvm channel.  If you are using the
   mozilla browser, and have chatzilla installed, you can `join #llvm on
   irc.oftc.net <irc://irc.oftc.net/llvm>`_.
