[libc][docs] Update the fuzzing doc to better reflect the current state.

Reviewed By: lntue

Differential Revision: https://reviews.llvm.org/D123923
This commit is contained in:
Siva Chandra Reddy 2022-04-18 07:29:17 +00:00
parent 7d644e1215
commit e6d56802f8
1 changed files with 15 additions and 12 deletions

View File

@ -1,15 +1,18 @@
Fuzzing for LLVM-libc Fuzzing for LLVM-libc functions
--------------------- ===============================
Fuzzing tests are used to ensure quality and security of LLVM-libc Fuzz tests are used to ensure quality and security of LLVM-libc implementations.
implementations. All fuzz tests live under the directory named ``fuzzing``. Within this
directory, the fuzz test for a libc function lives in the same nested directory
as its implementation in the toplevel ``src`` directory. The build target
``libc-fuzzer`` builds all of the enabled fuzz tests (but does not run them).
Each fuzzing test lives under the fuzzing directory in a subdirectory Types of fuzz tests
corresponding with the src layout. ===================
Currently we use system libc for functions that have yet to be implemented, As of this writing, there are two different kinds of fuzz tests. One kind are
however as they are implemented the fuzzers will be changed to use our the traditional fuzz tests which test one function at a time and only that
implementation to increase coverage for testing. particular function. The other kind of tests are what we call as the
differential fuzz tests. These tests compare the behavior of LLVM libc
Fuzzers will be run on `oss-fuzz <https://github.com/google/oss-fuzz>`_ and the implementations with the behavior of the corresponding functions from the system
check-libc target will ensure that they build correctly. libc.