[lib/Fuzzer] extend the fuzzer interface to allow user-supplied mutators

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238059 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Kostya Serebryany
2015-05-22 22:35:31 +00:00
parent d8319655f2
commit ebada2c2bc
12 changed files with 258 additions and 67 deletions

View File

@@ -204,6 +204,11 @@ int ApplyTokens(const Fuzzer &F, const char *InputFilePath) {
}
int FuzzerDriver(int argc, char **argv, UserCallback Callback) {
SimpleUserSuppliedFuzzer SUSF(Callback);
return FuzzerDriver(argc, argv, SUSF);
}
int FuzzerDriver(int argc, char **argv, UserSuppliedFuzzer &USF) {
using namespace fuzzer;
ProgName = argv[0];
@@ -244,7 +249,7 @@ int FuzzerDriver(int argc, char **argv, UserCallback Callback) {
if (Flags.sync_command)
Options.SyncCommand = Flags.sync_command;
Options.SyncTimeout = Flags.sync_timeout;
Fuzzer F(Callback, Options);
Fuzzer F(USF, Options);
unsigned seed = Flags.seed;
// Initialize seed.