1 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
2 // See https://llvm.org/LICENSE.txt for license information.
3 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5 // Simple test for a fuzzer.
6 // Try to find the target using the indirect caller-callee pairs.
17 std::cerr
<< "BINGO\n";
20 void f23() { t
[(unsigned)'d'] = f34
;}
21 void f12() { t
[(unsigned)'c'] = f23
;}
22 void f01() { t
[(unsigned)'b'] = f12
;}
26 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
27 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
28 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
29 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
30 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
31 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
32 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
33 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
34 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
35 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
36 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
37 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
38 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
39 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
40 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
41 f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
, f00
,
44 extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data
, size_t Size
) {
45 if (Size
< 4) return 0;
46 // Spoof the counters.
47 for (int i
= 0; i
< 200; i
++) {
52 memcpy(t
, t0
, sizeof(t
));
53 t
[(unsigned)'a'] = f01
;