blob: e7e310b3c7f2576cfa23661d180822bed2880d0b [file] [log] [blame]
Matt Morehouse3f6c1622017-10-17 17:43:34 +00001//===--- special-case-list-fuzzer.cpp - Fuzzer for special case lists -----===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#include "llvm/Support/MemoryBuffer.h"
11#include "llvm/Support/SpecialCaseList.h"
12
13#include <cstdlib>
14
15extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
16 std::unique_ptr<llvm::MemoryBuffer> Buf = llvm::MemoryBuffer::getMemBuffer(
17 llvm::StringRef(reinterpret_cast<const char *>(Data), Size), "", false);
18
19 if (!Buf)
20 return 0;
21
22 std::string Error;
23 llvm::SpecialCaseList::create(Buf.get(), Error);
24
25 return 0;
26}