diff --git a/llvm/docs/CommandGuide/index.rst b/llvm/docs/CommandGuide/index.rst --- a/llvm/docs/CommandGuide/index.rst +++ b/llvm/docs/CommandGuide/index.rst @@ -36,6 +36,7 @@ llvm-otool llvm-profdata llvm-readobj + llvm-reduce llvm-stress llvm-symbolizer opt diff --git a/llvm/docs/CommandGuide/llvm-reduce.rst b/llvm/docs/CommandGuide/llvm-reduce.rst new file mode 100644 --- /dev/null +++ b/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= + + 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= + + A textual description of the pass pipeline, same as what's passed to `opt -passes`. + +.. option:: -j + + Maximum number of threads to use to process chunks. Set to 1 to disable parallelism. + +.. option:: --max-pass-iterations= + + Maximum number of times to run the full set of delta passes (default=5). + +.. option:: --mtriple= + + 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= + + Delta passes to not run, separated by commas. By default, run all delta passes. + +.. option:: --starting-granularity-level= + + 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= + + Name of the interesting-ness test to be run. + +.. option:: --test-arg= + + 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. + +