HomePhabricator

Add FuzzedDataProvider helper class / single header library.

Description

Add FuzzedDataProvider helper class / single header library.

Summary:
This class is useful for writing fuzz target that have multiple inputs.

Current CL imports the existing FuzzedDataProvider from Chromium
without any modifications. Feel free to review it thoroughly, if you're
interested, but I'd prefer changing the class in a follow up CL.

The CL also introduces an exhaustive test for the library, as the behavior
of FuzzedDataProvider must not change over time.

In follow up CLs I'm planning on changing some implementation details
(I can share a doc with some comments to be addressed). After that, we
will document how FuzzedDataProvider should be used.

I have tested this on Linux, Windows and Mac platforms.

Reviewers: morehouse, metzman, kcc

Reviewed By: morehouse

Subscribers: metzman, thakis, rnk, mgorny, ormris, delcypher, #sanitizers, llvm-commits

Tags: #llvm, #sanitizers

Differential Revision: https://reviews.llvm.org/D62733

Details

Committed
Dor1sJun 11 2019, 7:30 AM
Reviewer
morehouse
Differential Revision
D62733: Add FuzzedDataProvider helper class / single header library.
Parents
rL363070: [NFC][PowerPC] Header-dependent test requires "native"
Branches
Unknown
Tags
Unknown