| Index: test/fuzzer/wasm-section.cc
|
| diff --git a/test/fuzzer/wasm-section.cc b/test/fuzzer/wasm-section.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b6fc603fc0e090e8857aa322ed17201313cdd9eb
|
| --- /dev/null
|
| +++ b/test/fuzzer/wasm-section.cc
|
| @@ -0,0 +1,44 @@
|
| +// Copyright 2016 the V8 project authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "test/fuzzer/wasm-section-fuzzers.h"
|
| +
|
| +using namespace v8::internal;
|
| +
|
| +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
|
| + bool run_all = !(FLAG_wasm_fuzz_types || FLAG_wasm_fuzz_names ||
|
| + FLAG_wasm_fuzz_globals || FLAG_wasm_fuzz_imports ||
|
| + FLAG_wasm_fuzz_function_sigs || FLAG_wasm_fuzz_memory ||
|
| + FLAG_wasm_fuzz_data);
|
| +
|
| + if (run_all || FLAG_wasm_fuzz_types) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::Signatures, data,
|
| + size);
|
| + }
|
| + if (run_all || FLAG_wasm_fuzz_names) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::Names, data, size);
|
| + }
|
| + if (run_all || FLAG_wasm_fuzz_globals) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::Globals, data,
|
| + size);
|
| + }
|
| + if (run_all || FLAG_wasm_fuzz_imports) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::ImportTable, data,
|
| + size);
|
| + }
|
| + if (run_all || FLAG_wasm_fuzz_function_sigs) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::FunctionSignatures,
|
| + data, size);
|
| + }
|
| + if (run_all || FLAG_wasm_fuzz_memory) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::Memory, data,
|
| + size);
|
| + }
|
| + if (run_all || FLAG_wasm_fuzz_data) {
|
| + fuzz_wasm_section(v8::internal::wasm::WasmSection::Code::DataSegments, data,
|
| + size);
|
| + }
|
| +
|
| + return 0;
|
| +}
|
|
|