diff --git a/llvm/docs/Contributing.rst b/llvm/docs/Contributing.rst --- a/llvm/docs/Contributing.rst +++ b/llvm/docs/Contributing.rst @@ -45,7 +45,6 @@ the `LLVM Developer's mailing list`_, so that we know the project is being worked on. - How to Submit a Patch ===================== Once you have a patch ready, it is time to submit it. The patch should: @@ -55,6 +54,35 @@ * not contain any unrelated changes * be an isolated change. Independent changes should be submitted as separate patches as this makes reviewing easier. +.. _format patches: + +Before sending a patch for review, please also try to ensure it is +formatted properly. We use ``clang-format`` for this, which has git integration +through the ``git-clang-format`` script. On some systems, it may already be +installed (or be installable via your package manager). If so, you can simply +run it -- the following command will format only the code changed in the most +recent commit: + +.. code-block:: console + + % git clang-format HEAD~1 + +Note that this modifies the files, but doesn't commit them -- you'll likely want +to run + +.. code-block:: console + + % git commit --amend -a + +in order to update the last commit with all pending changes. + +.. note:: + If you don't already have ``clang-format`` or ``git clang-format`` installed + on your system, the ``clang-format`` binary will be built alongside clang, and + the git integration can be run from + ``clang/tools/clang-format/git-clang-format``. + + To get a patch accepted, it has to be reviewed by the LLVM community. This can be done using `LLVM's Phabricator`_ or the llvm-commits mailing list. Please follow :ref:`Phabricator#requesting-a-review-via-the-web-interface ` diff --git a/llvm/docs/Phabricator.rst b/llvm/docs/Phabricator.rst --- a/llvm/docs/Phabricator.rst +++ b/llvm/docs/Phabricator.rst @@ -62,6 +62,9 @@ * ``git format-patch -U999999 @{u}`` * ``svn diff --diff-cmd=diff -x -U999999`` +Before uploading your patch, please make sure it is formatted properly, as +described in :ref:`How to Submit a Patch `. + To upload a new patch: * Click *Differential*.