Skip to content

Commit

Permalink
[Docs] Added llvm-reduce docs in CommandGuide
Browse files Browse the repository at this point in the history
[Docs] Added llvm-reduce docs in CommandGuide

Differential Revision: https://reviews.llvm.org/D146020
  • Loading branch information
aabhinavg committed Mar 14, 2023
1 parent da570ef commit ae2d8de
Show file tree
Hide file tree
Showing 2 changed files with 109 additions and 0 deletions.
1 change: 1 addition & 0 deletions llvm/docs/CommandGuide/index.rst
Expand Up @@ -36,6 +36,7 @@ Basic Commands
llvm-otool
llvm-profdata
llvm-readobj
llvm-reduce
llvm-stress
llvm-symbolizer
opt
Expand Down
108 changes: 108 additions & 0 deletions llvm/docs/CommandGuide/llvm-reduce.rst
@@ -0,0 +1,108 @@
llvm-reduce - LLVM automatic testcase reducer.
==============================================

.. program:: llvm-reduce

SYNOPSIS
--------

:program:`llvm-reduce` [*options*] [*input...*]

DESCRIPTION
-----------

The :program:`llvm-reduce` tool project that can be used for reducing the size of LLVM test cases.
It works by removing redundant or unnecessary code from LLVM test cases while still preserving
their ability to detect bugs.

If ``input`` is "``-``", :program:`llvm-reduce` reads from standard
input. Otherwise, it will read from the specified ``filenames``.

LLVM-Reduce is a useful tool for reducing the size and
complexity of LLVM test cases, making it easier to identify and debug issues in
the LLVM compiler infrastructure.

GENERIC OPTIONS
---------------


.. option:: --help

Display available options (--help-hidden for more).

.. option:: --abort-on-invalid-reduction

Abort if any reduction results in invalid IR

.. option::--delta-passes=<string>

Delta passes to run, separated by commas. By default, run all delta passes.


.. option:: --in-place

WARNING: This option will replace your input file with the reduced version!

.. option:: --ir-passes=<string>

A textual description of the pass pipeline, same as what's passed to `opt -passes`.

.. option:: -j <uint>

Maximum number of threads to use to process chunks. Set to 1 to disable parallelism.

.. option:: --max-pass-iterations=<int>

Maximum number of times to run the full set of delta passes (default=5).

.. option:: --mtriple=<string>

Set the target triple.

.. option:: --preserve-debug-environment

Don't disable features used for crash debugging (crash reports, llvm-symbolizer and core dumps)

.. option:: --print-delta-passes

Print list of delta passes, passable to --delta-passes as a comma separated liste.

.. option:: --skip-delta-passes=<string>

Delta passes to not run, separated by commas. By default, run all delta passes.

.. option:: --starting-granularity-level=<uint>

Number of times to divide chunks prior to first test.

Note : Granularity refers to the level of detail at which the reduction process operates.
A lower granularity means that the reduction process operates at a more coarse-grained level,
while a higher granularity means that it operates at a more fine-grained level.

.. option:: --test=<string>

Name of the interesting-ness test to be run.

.. option:: --test-arg=<string>

Arguments passed onto the interesting-ness test.

.. option:: --verbose

Print extra debugging information.

.. option:: --write-tmp-files-as-bitcode

Always write temporary files as bitcode instead of textual IR.

.. option:: -x={ir|mir}

Input language as ir or mir.

EXIT STATUS
------------

:program:`llvm-reduce` returns 0 under normal operation. It returns a non-zero
exit code if there were any errors.


0 comments on commit ae2d8de

Please sign in to comment.