summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Fuzzer/test/SwitchTest.cpp
diff options
context:
space:
mode:
authorGeorge Karpenkov <ekarpenkov@apple.com>2017-08-21 23:25:12 +0000
committerGeorge Karpenkov <ekarpenkov@apple.com>2017-08-21 23:25:12 +0000
commit748bf121bbd41fb1a8e6758fd0059687757f7535 (patch)
tree601005e1924b9092070583c7fe7e5ca7dbd372d8 /llvm/lib/Fuzzer/test/SwitchTest.cpp
parentf281ae599217703aa54582052db9583b186cf7c1 (diff)
downloadbcm5719-llvm-748bf121bbd41fb1a8e6758fd0059687757f7535.tar.gz
bcm5719-llvm-748bf121bbd41fb1a8e6758fd0059687757f7535.zip
Moving libFuzzer from LLVM to compiler-rt.
This change only removes libFuzzer tests and CMake machinery, the source copy temporarily remains at the old location. Differential Revision: https://reviews.llvm.org/D36980 llvm-svn: 311405
Diffstat (limited to 'llvm/lib/Fuzzer/test/SwitchTest.cpp')
-rw-r--r--llvm/lib/Fuzzer/test/SwitchTest.cpp58
1 files changed, 0 insertions, 58 deletions
diff --git a/llvm/lib/Fuzzer/test/SwitchTest.cpp b/llvm/lib/Fuzzer/test/SwitchTest.cpp
deleted file mode 100644
index 86944cad21c..00000000000
--- a/llvm/lib/Fuzzer/test/SwitchTest.cpp
+++ /dev/null
@@ -1,58 +0,0 @@
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-
-// Simple test for a fuzzer. The fuzzer must find the interesting switch value.
-#include <cstddef>
-#include <cstdint>
-#include <cstdio>
-#include <cstdlib>
-#include <cstring>
-
-static volatile int Sink;
-
-template<class T>
-bool Switch(const uint8_t *Data, size_t Size) {
- T X;
- if (Size < sizeof(X)) return false;
- memcpy(&X, Data, sizeof(X));
- switch (X) {
- case 1: Sink = __LINE__; break;
- case 101: Sink = __LINE__; break;
- case 1001: Sink = __LINE__; break;
- case 10001: Sink = __LINE__; break;
- case 100001: Sink = __LINE__; break;
- case 1000001: Sink = __LINE__; break;
- case 10000001: Sink = __LINE__; break;
- case 100000001: return true;
- }
- return false;
-}
-
-bool ShortSwitch(const uint8_t *Data, size_t Size) {
- short X;
- if (Size < sizeof(short)) return false;
- memcpy(&X, Data, sizeof(short));
- switch(X) {
- case 42: Sink = __LINE__; break;
- case 402: Sink = __LINE__; break;
- case 4002: Sink = __LINE__; break;
- case 5002: Sink = __LINE__; break;
- case 7002: Sink = __LINE__; break;
- case 9002: Sink = __LINE__; break;
- case 14002: Sink = __LINE__; break;
- case 21402: return true;
- }
- return false;
-}
-
-extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
- if (Size >= 4 && Switch<int>(Data, Size) &&
- Size >= 12 && Switch<uint64_t>(Data + 4, Size - 4) &&
- Size >= 14 && ShortSwitch(Data + 12, 2)
- ) {
- fprintf(stderr, "BINGO; Found the target, exiting\n");
- exit(1);
- }
- return 0;
-}
-
OpenPOWER on IntegriCloud