diff options
author | Igor Laevsky <igmyrj@gmail.com> | 2017-11-10 12:19:08 +0000 |
---|---|---|
committer | Igor Laevsky <igmyrj@gmail.com> | 2017-11-10 12:19:08 +0000 |
commit | 089f886ad928f5b132a09ae4ff4198ba439e3c26 (patch) | |
tree | c90162f4493f0825e45b800c06fd42fd1e219221 /docs | |
parent | d84a31be4444938a6f70008ad265dab672ebbb5b (diff) |
[llvm-opt-fuzzer] Introduce llvm-opt-fuzzer for fuzzing optimization passes
This change adds generic fuzzing tools capable of running libFuzzer tests on
any optimization pass or combination of them.
Differential Revision: https://reviews.llvm.org/D39555
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@317883 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/FuzzingLLVM.rst | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/docs/FuzzingLLVM.rst b/docs/FuzzingLLVM.rst index e6ebeaf80cb..b3cf719f275 100644 --- a/docs/FuzzingLLVM.rst +++ b/docs/FuzzingLLVM.rst @@ -100,6 +100,28 @@ mode, the same example could be run like so: % bin/llvm-isel-fuzzer--aarch64-O0-gisel <corpus-dir> +llvm-opt-fuzzer +--------------- + +A |LLVM IR fuzzer| aimed at finding bugs in optimization passes. + +It receives optimzation pipeline and runs it for each fuzzer input. + +Interface of this fuzzer almost directly mirrors ``llvm-isel-fuzzer``. Both +``mtriple`` and ``passes`` arguments are required. Passes are specified in a +format suitable for the new pass manager. + +.. code-block:: shell + + % bin/llvm-opt-fuzzer <corpus-dir> -ignore_remaining_args=1 -mtriple x86_64 -passes instcombine + +Similarly to the ``llvm-isel-fuzzer`` arguments in some predefined configurations +might be embedded directly into the binary file name: + +.. code-block:: shell + + % bin/llvm-opt-fuzzer--x86_64-instcombine <corpus-dir> + llvm-mc-assemble-fuzzer ----------------------- |