mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
49204878d7
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236683 91177308-0d34-0410-b5e6-96231b3b80d8
25 lines
648 B
C++
25 lines
648 B
C++
// Simple test for a fuzzer. The fuzzer must find a sequence of C++ tokens.
|
|
#include <cstdint>
|
|
#include <cstdlib>
|
|
#include <cstddef>
|
|
#include <cstring>
|
|
#include <iostream>
|
|
|
|
static void Found() {
|
|
std::cout << "BINGO; Found the target, exiting\n";
|
|
exit(1);
|
|
}
|
|
|
|
extern "C" void LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
|
|
// looking for "thread_local unsigned A;"
|
|
if (Size < 24) return;
|
|
if (0 == memcmp(&Data[0], "thread_local", 12))
|
|
if (Data[12] == ' ')
|
|
if (0 == memcmp(&Data[13], "unsigned", 8))
|
|
if (Data[21] == ' ')
|
|
if (Data[22] == 'A')
|
|
if (Data[23] == ';')
|
|
Found();
|
|
}
|
|
|