Index: docs/TipsAndTricks.rst =================================================================== --- /dev/null +++ docs/TipsAndTricks.rst @@ -0,0 +1,38 @@ +================================================== +Tips and Tricks on using and contributing to Polly +================================================== + +Commiting to polly trunk +------------------------ + - `General reference to git-svn workflow `_ + + +Using bugpoint to track down errors in large files +-------------------------------------------------- + + If you know the ``opt`` invocation and have a large ``.ll`` file that causes + an error, ``bugpoint`` allows one to reduce the size of test cases. + + The general calling pattern is: + + .. code-block:: console + + bugpoint -opt-args + + An example invocation is: + + .. code-block:: console + + bugpoint crash.ll -polly-codegen -opt-args -polly-canonicalize -polly-process-unprofitable + + For more documentation on bugpoint, `Visit the LLVM manual http://llvm.org/docs/Bugpoint.html`_ + + +Understanding which pass makes a particular change +-------------------------------------------------- + + If you know that something like `opt -O3` makes a change, but you wish to + isolate which pass makes a change, the steps are as follows: + + - ``opt -O3 -debug-pass=Arguments`` to get all passes that are run by default. ``-debug-pass=Arguments`` will list all passes that have run. + - Bisect down to the pass that changes it. Index: docs/index.rst =================================================================== --- docs/index.rst +++ docs/index.rst @@ -24,6 +24,7 @@ Architecture UsingPollyWithClang HowToManuallyUseTheIndividualPiecesOfPolly + TipsAndTricks * `A list of Polly passes `_