Commit 6828887b authored by Andreas Haas's avatar Andreas Haas Committed by Commit Bot

[wasm] Remove the wasm-asmjs fuzzer

The fuzzer has already been removed from chromium. In addition I removed
code which was only used by this fuzzer.

BUG=chromium:734550
R=clemensh@chromium.org
CC=mstarzinger@chromium.org

Change-Id: I2ff4614e4d64131412ead759318e5c38e38f5d3d
Reviewed-on: https://chromium-review.googlesource.com/542816
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46078}
parent 811643b4
...@@ -49,8 +49,6 @@ ...@@ -49,8 +49,6 @@
/test/benchmarks/data /test/benchmarks/data
/test/fuzzer/wasm_corpus /test/fuzzer/wasm_corpus
/test/fuzzer/wasm_corpus.tar.gz /test/fuzzer/wasm_corpus.tar.gz
/test/fuzzer/wasm_asmjs_corpus
/test/fuzzer/wasm_asmjs_corpus.tar.gz
/test/mozilla/data /test/mozilla/data
/test/promises-aplus/promises-tests /test/promises-aplus/promises-tests
/test/promises-aplus/promises-tests.tar.gz /test/promises-aplus/promises-tests.tar.gz
......
...@@ -2782,7 +2782,6 @@ group("v8_fuzzers") { ...@@ -2782,7 +2782,6 @@ group("v8_fuzzers") {
":v8_simple_json_fuzzer", ":v8_simple_json_fuzzer",
":v8_simple_parser_fuzzer", ":v8_simple_parser_fuzzer",
":v8_simple_regexp_fuzzer", ":v8_simple_regexp_fuzzer",
":v8_simple_wasm_asmjs_fuzzer",
":v8_simple_wasm_async_fuzzer", ":v8_simple_wasm_async_fuzzer",
":v8_simple_wasm_call_fuzzer", ":v8_simple_wasm_call_fuzzer",
":v8_simple_wasm_code_fuzzer", ":v8_simple_wasm_code_fuzzer",
...@@ -3115,26 +3114,6 @@ v8_source_set("wasm_fuzzer") { ...@@ -3115,26 +3114,6 @@ v8_source_set("wasm_fuzzer") {
v8_fuzzer("wasm_fuzzer") { v8_fuzzer("wasm_fuzzer") {
} }
v8_source_set("wasm_asmjs_fuzzer") {
sources = [
"test/fuzzer/wasm-asmjs.cc",
]
deps = [
":fuzzer_support",
":lib_wasm_fuzzer_common",
":wasm_module_runner",
]
configs = [
":external_config",
":internal_config_base",
]
}
v8_fuzzer("wasm_asmjs_fuzzer") {
}
v8_source_set("wasm_async_fuzzer") { v8_source_set("wasm_async_fuzzer") {
sources = [ sources = [
"test/fuzzer/wasm-async.cc", "test/fuzzer/wasm-async.cc",
......
...@@ -128,7 +128,6 @@ v8_isolate_run("fuzzer") { ...@@ -128,7 +128,6 @@ v8_isolate_run("fuzzer") {
"..:v8_simple_json_fuzzer", "..:v8_simple_json_fuzzer",
"..:v8_simple_parser_fuzzer", "..:v8_simple_parser_fuzzer",
"..:v8_simple_regexp_fuzzer", "..:v8_simple_regexp_fuzzer",
"..:v8_simple_wasm_asmjs_fuzzer",
"..:v8_simple_wasm_fuzzer", "..:v8_simple_wasm_fuzzer",
] ]
......
...@@ -287,8 +287,7 @@ class WasmSerializationTest { ...@@ -287,8 +287,7 @@ class WasmSerializationTest {
Handle<Object> params[1] = { Handle<Object> params[1] = {
Handle<Object>(Smi::FromInt(41), current_isolate())}; Handle<Object>(Smi::FromInt(41), current_isolate())};
int32_t result = testing::CallWasmFunctionForTesting( int32_t result = testing::CallWasmFunctionForTesting(
current_isolate(), instance, &thrower, kFunctionName, 1, params, current_isolate(), instance, &thrower, kFunctionName, 1, params);
ModuleOrigin::kWasmOrigin);
CHECK(result == 42); CHECK(result == 42);
} }
...@@ -707,8 +706,7 @@ TEST(TestInterruptLoop) { ...@@ -707,8 +706,7 @@ TEST(TestInterruptLoop) {
InterruptThread thread(isolate, memory_array); InterruptThread thread(isolate, memory_array);
thread.Start(); thread.Start();
testing::RunWasmModuleForTesting(isolate, instance, 0, nullptr, testing::RunWasmModuleForTesting(isolate, instance, 0, nullptr);
ModuleOrigin::kWasmOrigin);
int32_t val = memory_array[InterruptThread::interrupt_location_]; int32_t val = memory_array[InterruptThread::interrupt_location_];
CHECK_EQ(InterruptThread::interrupt_value_, CHECK_EQ(InterruptThread::interrupt_value_,
ReadLittleEndianValue<int32_t>(&val)); ReadLittleEndianValue<int32_t>(&val));
...@@ -790,15 +788,14 @@ TEST(Run_WasmModule_GrowMemOobFixedIndex) { ...@@ -790,15 +788,14 @@ TEST(Run_WasmModule_GrowMemOobFixedIndex) {
for (uint32_t i = 1; i < 5; i++) { for (uint32_t i = 1; i < 5; i++) {
Handle<Object> params[1] = {Handle<Object>(Smi::FromInt(i), isolate)}; Handle<Object> params[1] = {Handle<Object>(Smi::FromInt(i), isolate)};
v8::TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); v8::TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate));
testing::RunWasmModuleForTesting(isolate, instance, 1, params, testing::RunWasmModuleForTesting(isolate, instance, 1, params);
ModuleOrigin::kWasmOrigin);
CHECK(try_catch.HasCaught()); CHECK(try_catch.HasCaught());
isolate->clear_pending_exception(); isolate->clear_pending_exception();
} }
Handle<Object> params[1] = {Handle<Object>(Smi::FromInt(1), isolate)}; Handle<Object> params[1] = {Handle<Object>(Smi::FromInt(1), isolate)};
int32_t result = testing::RunWasmModuleForTesting( int32_t result =
isolate, instance, 1, params, ModuleOrigin::kWasmOrigin); testing::RunWasmModuleForTesting(isolate, instance, 1, params);
CHECK(result == 0xaced); CHECK(result == 0xaced);
} }
Cleanup(); Cleanup();
...@@ -840,8 +837,7 @@ TEST(Run_WasmModule_GrowMemOobVariableIndex) { ...@@ -840,8 +837,7 @@ TEST(Run_WasmModule_GrowMemOobVariableIndex) {
Handle<Object> params[1] = { Handle<Object> params[1] = {
Handle<Object>(Smi::FromInt((16 + i) * kPageSize - 3), isolate)}; Handle<Object>(Smi::FromInt((16 + i) * kPageSize - 3), isolate)};
v8::TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); v8::TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate));
testing::RunWasmModuleForTesting(isolate, instance, 1, params, testing::RunWasmModuleForTesting(isolate, instance, 1, params);
ModuleOrigin::kWasmOrigin);
CHECK(try_catch.HasCaught()); CHECK(try_catch.HasCaught());
isolate->clear_pending_exception(); isolate->clear_pending_exception();
} }
...@@ -849,16 +845,15 @@ TEST(Run_WasmModule_GrowMemOobVariableIndex) { ...@@ -849,16 +845,15 @@ TEST(Run_WasmModule_GrowMemOobVariableIndex) {
for (int i = 1; i < 5; i++) { for (int i = 1; i < 5; i++) {
Handle<Object> params[1] = { Handle<Object> params[1] = {
Handle<Object>(Smi::FromInt((20 + i) * kPageSize - 4), isolate)}; Handle<Object>(Smi::FromInt((20 + i) * kPageSize - 4), isolate)};
int32_t result = testing::RunWasmModuleForTesting( int32_t result =
isolate, instance, 1, params, ModuleOrigin::kWasmOrigin); testing::RunWasmModuleForTesting(isolate, instance, 1, params);
CHECK(result == 0xaced); CHECK(result == 0xaced);
} }
v8::TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate)); v8::TryCatch try_catch(reinterpret_cast<v8::Isolate*>(isolate));
Handle<Object> params[1] = { Handle<Object> params[1] = {
Handle<Object>(Smi::FromInt(25 * kPageSize), isolate)}; Handle<Object>(Smi::FromInt(25 * kPageSize), isolate)};
testing::RunWasmModuleForTesting(isolate, instance, 1, params, testing::RunWasmModuleForTesting(isolate, instance, 1, params);
ModuleOrigin::kWasmOrigin);
CHECK(try_catch.HasCaught()); CHECK(try_catch.HasCaught());
isolate->clear_pending_exception(); isolate->clear_pending_exception();
} }
...@@ -1119,8 +1114,7 @@ TEST(Run_WasmModule_Buffer_Externalized_GrowMem) { ...@@ -1119,8 +1114,7 @@ TEST(Run_WasmModule_Buffer_Externalized_GrowMem) {
// Externalize should make no difference without the JS API as in this case // Externalize should make no difference without the JS API as in this case
// the buffer is not detached. // the buffer is not detached.
v8::Utils::ToLocal(memory)->Externalize(); v8::Utils::ToLocal(memory)->Externalize();
result = testing::RunWasmModuleForTesting(isolate, instance, 0, nullptr, result = testing::RunWasmModuleForTesting(isolate, instance, 0, nullptr);
ModuleOrigin::kWasmOrigin);
CHECK_EQ(kExpectedValue, result); CHECK_EQ(kExpectedValue, result);
// Free the buffer as the tracker does not know about it. // Free the buffer as the tracker does not know about it.
const v8::ArrayBuffer::Allocator::AllocationMode allocation_mode = const v8::ArrayBuffer::Allocator::AllocationMode allocation_mode =
......
...@@ -43,12 +43,10 @@ std::unique_ptr<WasmModule> DecodeWasmModuleForTesting( ...@@ -43,12 +43,10 @@ std::unique_ptr<WasmModule> DecodeWasmModuleForTesting(
} }
int32_t RunWasmModuleForTesting(Isolate* isolate, Handle<JSObject> instance, int32_t RunWasmModuleForTesting(Isolate* isolate, Handle<JSObject> instance,
int argc, Handle<Object> argv[], int argc, Handle<Object> argv[]) {
ModuleOrigin origin) {
ErrorThrower thrower(isolate, "RunWasmModule"); ErrorThrower thrower(isolate, "RunWasmModule");
const char* f_name = origin == ModuleOrigin::kAsmJsOrigin ? "caller" : "main"; return CallWasmFunctionForTesting(isolate, instance, &thrower, "main", argc,
return CallWasmFunctionForTesting(isolate, instance, &thrower, f_name, argc, argv);
argv, origin);
} }
int32_t CompileAndRunWasmModule(Isolate* isolate, const byte* module_start, int32_t CompileAndRunWasmModule(Isolate* isolate, const byte* module_start,
...@@ -61,7 +59,7 @@ int32_t CompileAndRunWasmModule(Isolate* isolate, const byte* module_start, ...@@ -61,7 +59,7 @@ int32_t CompileAndRunWasmModule(Isolate* isolate, const byte* module_start,
return -1; return -1;
} }
return RunWasmModuleForTesting(isolate, instance.ToHandleChecked(), 0, return RunWasmModuleForTesting(isolate, instance.ToHandleChecked(), 0,
nullptr, kWasmOrigin); nullptr);
} }
int32_t CompileAndRunAsmWasmModule(Isolate* isolate, const byte* module_start, int32_t CompileAndRunAsmWasmModule(Isolate* isolate, const byte* module_start,
...@@ -81,7 +79,7 @@ int32_t CompileAndRunAsmWasmModule(Isolate* isolate, const byte* module_start, ...@@ -81,7 +79,7 @@ int32_t CompileAndRunAsmWasmModule(Isolate* isolate, const byte* module_start,
if (instance.is_null()) return -1; if (instance.is_null()) return -1;
return RunWasmModuleForTesting(isolate, instance.ToHandleChecked(), 0, return RunWasmModuleForTesting(isolate, instance.ToHandleChecked(), 0,
nullptr, kAsmJsOrigin); nullptr);
} }
int32_t InterpretWasmModule(Isolate* isolate, int32_t InterpretWasmModule(Isolate* isolate,
Handle<WasmInstanceObject> instance, Handle<WasmInstanceObject> instance,
...@@ -115,16 +113,12 @@ int32_t InterpretWasmModule(Isolate* isolate, ...@@ -115,16 +113,12 @@ int32_t InterpretWasmModule(Isolate* isolate,
int32_t CallWasmFunctionForTesting(Isolate* isolate, Handle<JSObject> instance, int32_t CallWasmFunctionForTesting(Isolate* isolate, Handle<JSObject> instance,
ErrorThrower* thrower, const char* name, ErrorThrower* thrower, const char* name,
int argc, Handle<Object> argv[], int argc, Handle<Object> argv[]) {
ModuleOrigin origin) {
Handle<JSObject> exports_object; Handle<JSObject> exports_object;
if (origin == ModuleOrigin::kAsmJsOrigin) { Handle<Name> exports = isolate->factory()->InternalizeUtf8String("exports");
exports_object = instance; exports_object = Handle<JSObject>::cast(
} else { JSObject::GetProperty(instance, exports).ToHandleChecked());
Handle<Name> exports = isolate->factory()->InternalizeUtf8String("exports");
exports_object = Handle<JSObject>::cast(
JSObject::GetProperty(instance, exports).ToHandleChecked());
}
Handle<Name> main_name = isolate->factory()->NewStringFromAsciiChecked(name); Handle<Name> main_name = isolate->factory()->NewStringFromAsciiChecked(name);
PropertyDescriptor desc; PropertyDescriptor desc;
Maybe<bool> property_found = JSReceiver::GetOwnPropertyDescriptor( Maybe<bool> property_found = JSReceiver::GetOwnPropertyDescriptor(
......
...@@ -29,19 +29,13 @@ std::unique_ptr<WasmModule> DecodeWasmModuleForTesting( ...@@ -29,19 +29,13 @@ std::unique_ptr<WasmModule> DecodeWasmModuleForTesting(
int32_t CallWasmFunctionForTesting(Isolate* isolate, Handle<JSObject> instance, int32_t CallWasmFunctionForTesting(Isolate* isolate, Handle<JSObject> instance,
ErrorThrower* thrower, const char* name, ErrorThrower* thrower, const char* name,
int argc, Handle<Object> argv[], int argc, Handle<Object> argv[]);
ModuleOrigin origin);
// Decode, verify, and run the function labeled "main" in the // Decode, verify, and run the function labeled "main" in the
// given encoded module. The module should have no imports. // given encoded module. The module should have no imports.
int32_t CompileAndRunWasmModule(Isolate* isolate, const byte* module_start, int32_t CompileAndRunWasmModule(Isolate* isolate, const byte* module_start,
const byte* module_end); const byte* module_end);
// Decode, verify, and run the function labeled "main" in the given encoded
// module, originating from asm.js. The module should have no imports.
int32_t CompileAndRunAsmWasmModule(Isolate* isolate, const byte* module_start,
const byte* module_end);
// Interprets the given module, starting at the function specified by // Interprets the given module, starting at the function specified by
// {function_index}. The return type of the function has to be int32. The module // {function_index}. The return type of the function has to be int32. The module
// should not have any imports or exports // should not have any imports or exports
...@@ -52,8 +46,7 @@ int32_t InterpretWasmModule(Isolate* isolate, ...@@ -52,8 +46,7 @@ int32_t InterpretWasmModule(Isolate* isolate,
// Runs the module instance with arguments. // Runs the module instance with arguments.
int32_t RunWasmModuleForTesting(Isolate* isolate, Handle<JSObject> instance, int32_t RunWasmModuleForTesting(Isolate* isolate, Handle<JSObject> instance,
int argc, Handle<Object> argv[], int argc, Handle<Object> argv[]);
ModuleOrigin origin);
// Install function map, module symbol for testing // Install function map, module symbol for testing
void SetupIsolateForWasmModule(Isolate* isolate); void SetupIsolateForWasmModule(Isolate* isolate);
......
...@@ -118,35 +118,6 @@ ...@@ -118,35 +118,6 @@
'../common/wasm/wasm-module-runner.h', '../common/wasm/wasm-module-runner.h',
], ],
}, },
{
'target_name': 'v8_simple_wasm_asmjs_fuzzer',
'type': 'executable',
'dependencies': [
'wasm_asmjs_fuzzer_lib',
],
'include_dirs': [
'../..',
],
'sources': [
'fuzzer.cc',
],
},
{
'target_name': 'wasm_asmjs_fuzzer_lib',
'type': 'static_library',
'dependencies': [
'../../src/v8.gyp:v8_libplatform',
'fuzzer_support',
],
'include_dirs': [
'../..',
],
'sources': [ ### gcmole(all) ###
'wasm-asmjs.cc',
'../common/wasm/wasm-module-runner.cc',
'../common/wasm/wasm-module-runner.h',
],
},
{ {
'target_name': 'v8_simple_wasm_async_fuzzer', 'target_name': 'v8_simple_wasm_async_fuzzer',
'type': 'executable', 'type': 'executable',
...@@ -525,7 +496,6 @@ ...@@ -525,7 +496,6 @@
'v8_simple_parser_fuzzer', 'v8_simple_parser_fuzzer',
'v8_simple_regexp_fuzzer', 'v8_simple_regexp_fuzzer',
'v8_simple_wasm_fuzzer', 'v8_simple_wasm_fuzzer',
'v8_simple_wasm_asmjs_fuzzer',
], ],
'includes': [ 'includes': [
'../../gypfiles/isolate.gypi', '../../gypfiles/isolate.gypi',
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
'<(PRODUCT_DIR)/v8_simple_parser_fuzzer<(EXECUTABLE_SUFFIX)', '<(PRODUCT_DIR)/v8_simple_parser_fuzzer<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/v8_simple_regexp_fuzzer<(EXECUTABLE_SUFFIX)', '<(PRODUCT_DIR)/v8_simple_regexp_fuzzer<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/v8_simple_wasm_fuzzer<(EXECUTABLE_SUFFIX)', '<(PRODUCT_DIR)/v8_simple_wasm_fuzzer<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/v8_simple_wasm_asmjs_fuzzer<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/v8_simple_wasm_async_fuzzer<(EXECUTABLE_SUFFIX)', '<(PRODUCT_DIR)/v8_simple_wasm_async_fuzzer<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/v8_simple_wasm_call_fuzzer<(EXECUTABLE_SUFFIX)', '<(PRODUCT_DIR)/v8_simple_wasm_call_fuzzer<(EXECUTABLE_SUFFIX)',
'<(PRODUCT_DIR)/v8_simple_wasm_code_fuzzer<(EXECUTABLE_SUFFIX)', '<(PRODUCT_DIR)/v8_simple_wasm_code_fuzzer<(EXECUTABLE_SUFFIX)',
...@@ -27,7 +26,6 @@ ...@@ -27,7 +26,6 @@
'./parser/', './parser/',
'./regexp/', './regexp/',
'./wasm/', './wasm/',
'./wasm_asmjs/',
'./wasm_async/', './wasm_async/',
'./wasm_call/', './wasm_call/',
'./wasm_code/', './wasm_code/',
......
...@@ -18,7 +18,7 @@ class FuzzerVariantGenerator(testsuite.VariantGenerator): ...@@ -18,7 +18,7 @@ class FuzzerVariantGenerator(testsuite.VariantGenerator):
class FuzzerTestSuite(testsuite.TestSuite): class FuzzerTestSuite(testsuite.TestSuite):
SUB_TESTS = ( 'json', 'parser', 'regexp', 'wasm', 'wasm_asmjs', 'wasm_async', SUB_TESTS = ( 'json', 'parser', 'regexp', 'wasm', 'wasm_async',
'wasm_call', 'wasm_code', 'wasm_compile', 'wasm_data_section', 'wasm_call', 'wasm_code', 'wasm_compile', 'wasm_data_section',
'wasm_function_sigs_section', 'wasm_globals_section', 'wasm_function_sigs_section', 'wasm_globals_section',
'wasm_imports_section', 'wasm_memory_section', 'wasm_names_section', 'wasm_imports_section', 'wasm_memory_section', 'wasm_names_section',
......
// 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 <limits.h>
#include <stddef.h>
#include <stdint.h>
#include "include/v8.h"
#include "src/factory.h"
#include "src/isolate-inl.h"
#include "src/isolate.h"
#include "src/objects-inl.h"
#include "src/objects.h"
#include "src/wasm/wasm-module.h"
#include "test/common/wasm/flag-utils.h"
#include "test/common/wasm/wasm-module-runner.h"
#include "test/fuzzer/fuzzer-support.h"
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
v8::internal::FlagScope<uint32_t> max_mem_flag_scope(
&v8::internal::FLAG_wasm_max_mem_pages, 32);
v8::internal::FlagScope<uint32_t> max_table_size_scope(
&v8::internal::FLAG_wasm_max_table_size, 100);
v8_fuzzer::FuzzerSupport* support = v8_fuzzer::FuzzerSupport::Get();
v8::Isolate* isolate = support->GetIsolate();
v8::internal::Isolate* i_isolate =
reinterpret_cast<v8::internal::Isolate*>(isolate);
// Clear any pending exceptions from a prior run.
if (i_isolate->has_pending_exception()) {
i_isolate->clear_pending_exception();
}
v8::Isolate::Scope isolate_scope(isolate);
v8::HandleScope handle_scope(isolate);
v8::Context::Scope context_scope(support->GetContext());
v8::TryCatch try_catch(isolate);
v8::internal::wasm::testing::SetupIsolateForWasmModule(i_isolate);
v8::internal::wasm::testing::CompileAndRunAsmWasmModule(i_isolate, data,
data + size);
return 0;
}
...@@ -71,7 +71,7 @@ void InstantiateCallback(const v8::FunctionCallbackInfo<v8::Value>& args) { ...@@ -71,7 +71,7 @@ void InstantiateCallback(const v8::FunctionCallbackInfo<v8::Value>& args) {
if (!maybe_instance.ToHandle(&instance)) { if (!maybe_instance.ToHandle(&instance)) {
return; return;
} }
RunWasmModuleForTesting(i_isolate, instance, 0, nullptr, kWasmOrigin); RunWasmModuleForTesting(i_isolate, instance, 0, nullptr);
} }
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
......
...@@ -172,7 +172,7 @@ int WasmExecutionFuzzer::FuzzWasmModule( ...@@ -172,7 +172,7 @@ int WasmExecutionFuzzer::FuzzWasmModule(
DCHECK(!compiler_thrower.error()); DCHECK(!compiler_thrower.error());
result_compiled = testing::CallWasmFunctionForTesting( result_compiled = testing::CallWasmFunctionForTesting(
i_isolate, compiled_instance.ToHandleChecked(), &compiler_thrower, i_isolate, compiled_instance.ToHandleChecked(), &compiler_thrower,
"main", num_args, compiler_args.get(), ModuleOrigin::kWasmOrigin); "main", num_args, compiler_args.get());
} }
// The WebAssembly spec allows the sign bit of NaN to be non-deterministic. // The WebAssembly spec allows the sign bit of NaN to be non-deterministic.
......
cf1777646f8d4557504442e9bd59e908519ffec8
\ No newline at end of file
...@@ -10,20 +10,11 @@ TOOLS_WASM_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" ...@@ -10,20 +10,11 @@ TOOLS_WASM_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd ${TOOLS_WASM_DIR}/../.. cd ${TOOLS_WASM_DIR}/../..
rm -rf test/fuzzer/wasm_corpus rm -rf test/fuzzer/wasm_corpus
rm -rf test/fuzzer/wasm_asmjs_corpus
tools/dev/gm.py x64.release all tools/dev/gm.py x64.release all
mkdir -p test/fuzzer/wasm_corpus mkdir -p test/fuzzer/wasm_corpus
mkdir -p test/fuzzer/wasm_asmjs_corpus
# asm.js
./tools/run-tests.py -j8 --variants=default --timeout=10 --arch=x64 \
--mode=release --no-presubmit --extra-flags="--dump-wasm-module \
--dump-wasm-module-path=./test/fuzzer/wasm_asmjs_corpus/" mjsunit/wasm/asm*
./tools/run-tests.py -j8 --variants=default --timeout=10 --arch=x64 \
--mode=release --no-presubmit --extra-flags="--dump-wasm-module \
--dump-wasm-module-path=./test/fuzzer/wasm_asmjs_corpus/" mjsunit/asm/*
# wasm # wasm
./tools/run-tests.py -j8 --variants=default --timeout=10 --arch=x64 \ ./tools/run-tests.py -j8 --variants=default --timeout=10 --arch=x64 \
--mode=release --no-presubmit --extra-flags="--dump-wasm-module \ --mode=release --no-presubmit --extra-flags="--dump-wasm-module \
...@@ -45,12 +36,7 @@ for x in $(find ./test/fuzzer/wasm_corpus/ -type f -size +20k) ...@@ -45,12 +36,7 @@ for x in $(find ./test/fuzzer/wasm_corpus/ -type f -size +20k)
do do
rm $x rm $x
done done
for x in $(find ./test/fuzzer/wasm_asmjs_corpus/ -type f -size +20k)
do
rm $x
done
# Upload changes. # Upload changes.
cd test/fuzzer cd test/fuzzer
upload_to_google_storage.py -a -b v8-wasm-fuzzer wasm_corpus upload_to_google_storage.py -a -b v8-wasm-fuzzer wasm_corpus
upload_to_google_storage.py -a -b v8-wasm-asmjs-fuzzer wasm_asmjs_corpus
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment