Commit 3a473122 authored by Michael Starzinger's avatar Michael Starzinger Committed by Commit Bot

[asm.js] Remove deprecated --fast-validate-asm flag.

R=clemensh@chromium.org
BUG=v8:6127

Change-Id: I104bf807d3da6a9f269e4f729b254bc6a0d2f0df
Reviewed-on: https://chromium-review.googlesource.com/496206Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45098}
parent 1f51f66f
...@@ -165,7 +165,7 @@ MaybeHandle<FixedArray> AsmJs::CompileAsmViaWasm(CompilationInfo* info) { ...@@ -165,7 +165,7 @@ MaybeHandle<FixedArray> AsmJs::CompileAsmViaWasm(CompilationInfo* info) {
asm_wasm_timer.Start(); asm_wasm_timer.Start();
wasm::AsmWasmBuilder builder(info); wasm::AsmWasmBuilder builder(info);
size_t asm_wasm_zone_start = info->zone()->allocation_size(); size_t asm_wasm_zone_start = info->zone()->allocation_size();
if (FLAG_fast_validate_asm) { {
wasm::AsmJsParser parser(info->isolate(), info->zone(), info->script(), wasm::AsmJsParser parser(info->isolate(), info->zone(), info->script(),
info->literal()->start_position(), info->literal()->start_position(),
info->literal()->end_position()); info->literal()->end_position());
...@@ -203,26 +203,6 @@ MaybeHandle<FixedArray> AsmJs::CompileAsmViaWasm(CompilationInfo* info) { ...@@ -203,26 +203,6 @@ MaybeHandle<FixedArray> AsmJs::CompileAsmViaWasm(CompilationInfo* info) {
for (auto i : *parser.stdlib_uses()) { for (auto i : *parser.stdlib_uses()) {
uses_array->set(count++, Smi::FromInt(i)); uses_array->set(count++, Smi::FromInt(i));
} }
} else {
auto asm_wasm_result = builder.Run(&foreign_globals);
if (!asm_wasm_result.success) {
DCHECK(!info->isolate()->has_pending_exception());
if (!FLAG_suppress_asm_messages) {
MessageHandler::ReportMessage(info->isolate(),
builder.typer()->message_location(),
builder.typer()->error_message());
}
return MaybeHandle<FixedArray>();
}
module = asm_wasm_result.module_bytes;
asm_offsets = asm_wasm_result.asm_offset_table;
wasm::AsmTyper::StdlibSet uses = builder.typer()->StdlibUses();
uses_array = info->isolate()->factory()->NewFixedArray(
static_cast<int>(uses.size()));
int count = 0;
for (auto i : uses) {
uses_array->set(count++, Smi::FromInt(i));
}
} }
double asm_wasm_time = asm_wasm_timer.Elapsed().InMillisecondsF(); double asm_wasm_time = asm_wasm_timer.Elapsed().InMillisecondsF();
...@@ -341,37 +321,6 @@ MaybeHandle<Object> AsmJs::InstantiateAsmWasm(Isolate* isolate, ...@@ -341,37 +321,6 @@ MaybeHandle<Object> AsmJs::InstantiateAsmWasm(Isolate* isolate,
DCHECK(!thrower.error()); DCHECK(!thrower.error());
Handle<Object> module_object = maybe_module_object.ToHandleChecked(); Handle<Object> module_object = maybe_module_object.ToHandleChecked();
if (!FLAG_fast_validate_asm) {
Handle<Name> init_name(isolate->factory()->InternalizeUtf8String(
wasm::AsmWasmBuilder::foreign_init_name));
Handle<Object> init =
Object::GetProperty(module_object, init_name).ToHandleChecked();
Handle<Object> undefined(isolate->heap()->undefined_value(), isolate);
Handle<Object>* foreign_args_array =
new Handle<Object>[foreign_globals->length()];
for (int j = 0; j < foreign_globals->length(); j++) {
if (!foreign.is_null()) {
MaybeHandle<Name> name = Object::ToName(
isolate, Handle<Object>(foreign_globals->get(j), isolate));
if (!name.is_null()) {
MaybeHandle<Object> val =
Object::GetProperty(foreign, name.ToHandleChecked());
if (!val.is_null()) {
foreign_args_array[j] = val.ToHandleChecked();
continue;
}
}
}
foreign_args_array[j] = undefined;
}
MaybeHandle<Object> retval =
Execution::Call(isolate, init, undefined, foreign_globals->length(),
foreign_args_array);
delete[] foreign_args_array;
DCHECK(!retval.is_null());
}
Handle<Name> single_function_name(isolate->factory()->InternalizeUtf8String( Handle<Name> single_function_name(isolate->factory()->InternalizeUtf8String(
wasm::AsmWasmBuilder::single_function_name)); wasm::AsmWasmBuilder::single_function_name));
MaybeHandle<Object> single_function = MaybeHandle<Object> single_function =
......
...@@ -555,7 +555,6 @@ DEFINE_BOOL(wasm_break_on_decoder_error, false, ...@@ -555,7 +555,6 @@ DEFINE_BOOL(wasm_break_on_decoder_error, false,
"debug break when wasm decoder encounters an error") "debug break when wasm decoder encounters an error")
DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling") DEFINE_BOOL(validate_asm, false, "validate asm.js modules before compiling")
DEFINE_BOOL(fast_validate_asm, true, "validate asm.js modules before compiling")
DEFINE_BOOL(suppress_asm_messages, false, DEFINE_BOOL(suppress_asm_messages, false,
"don't emit asm.js related messages (for golden file testing)") "don't emit asm.js related messages (for golden file testing)")
DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console") DEFINE_BOOL(trace_asm_time, false, "log asm.js timing info to the console")
......
...@@ -1735,7 +1735,7 @@ class InstantiationHelper { ...@@ -1735,7 +1735,7 @@ class InstantiationHelper {
module_name, import_name); module_name, import_name);
return -1; return -1;
} }
if (module_->is_asm_js() && FLAG_fast_validate_asm) { if (module_->is_asm_js()) {
if (module_->globals[import.index].type == kWasmI32) { if (module_->globals[import.index].type == kWasmI32) {
value = Object::ToInt32(isolate_, value).ToHandleChecked(); value = Object::ToInt32(isolate_, value).ToHandleChecked();
} else { } else {
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
// Violates asm.js because use of {g} in {f} has return type different from {g}. // Violates asm.js because use of {g} in {f} has return type different from {g}.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
// Violates asm.js because {g} has return type different from use of {g} in {f}. // Violates asm.js because {g} has return type different from use of {g} in {f}.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
// Violates asm.js because symbol {f} is defined as module function twice. // Violates asm.js because symbol {f} is defined as module function twice.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
// Violates asm.js because symbol {f} is used as module variable and function. // Violates asm.js because symbol {f} is used as module variable and function.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
// Violates asm.js {funTable} definition doesn't match the use in {f}. // Violates asm.js {funTable} definition doesn't match the use in {f}.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
// Violates asm.js {funTable} use in {f} doesn't match its use in {g}. // Violates asm.js {funTable} use in {f} doesn't match its use in {g}.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages --fast-validate-asm // Flags: --validate-asm --no-stress-opt --no-stress-validate-asm --no-suppress-asm-messages
function Module() { function Module() {
"use asm" "use asm"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --allow-natives-syntax --validate-asm --fast-validate-asm // Flags: --allow-natives-syntax --validate-asm
// This file contains test cases that are particularly interesting because they // This file contains test cases that are particularly interesting because they
// omit the usual call-site coercion of function calls that target well-known // omit the usual call-site coercion of function calls that target well-known
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
// Flags: --allow-natives-syntax --validate-asm --fast-validate-asm // Flags: --allow-natives-syntax --validate-asm
function MODULE_TEMPLATE(stdlib, foreign, buffer) { function MODULE_TEMPLATE(stdlib, foreign, buffer) {
"use asm"; "use asm";
......
...@@ -37,7 +37,6 @@ CONFIGS = dict( ...@@ -37,7 +37,6 @@ CONFIGS = dict(
'--hydrogen-filter=~', '--hydrogen-filter=~',
'--noopt', '--noopt',
'--validate-asm', '--validate-asm',
'--fast-validate-asm',
'--stress-validate-asm', '--stress-validate-asm',
'--suppress-asm-messages', '--suppress-asm-messages',
], ],
......
...@@ -15,7 +15,7 @@ ALL_VARIANT_FLAGS = { ...@@ -15,7 +15,7 @@ ALL_VARIANT_FLAGS = {
# would not force optimization too. It turns into a Nop. Please see # would not force optimization too. It turns into a Nop. Please see
# https://chromium-review.googlesource.com/c/452620/ for more discussion. # https://chromium-review.googlesource.com/c/452620/ for more discussion.
"nooptimization": [["--noopt"]], "nooptimization": [["--noopt"]],
"asm_wasm": [["--validate-asm", "--fast-validate-asm", "--stress-validate-asm", "--suppress-asm-messages"]], "asm_wasm": [["--validate-asm", "--stress-validate-asm", "--suppress-asm-messages"]],
"wasm_traps": [["--wasm_guard_pages", "--wasm_trap_handler", "--invoke-weak-callbacks"]], "wasm_traps": [["--wasm_guard_pages", "--wasm_trap_handler", "--invoke-weak-callbacks"]],
} }
...@@ -31,7 +31,7 @@ FAST_VARIANT_FLAGS = { ...@@ -31,7 +31,7 @@ FAST_VARIANT_FLAGS = {
# would not force optimization too. It turns into a Nop. Please see # would not force optimization too. It turns into a Nop. Please see
# https://chromium-review.googlesource.com/c/452620/ for more discussion. # https://chromium-review.googlesource.com/c/452620/ for more discussion.
"nooptimization": [["--noopt"]], "nooptimization": [["--noopt"]],
"asm_wasm": [["--validate-asm", "--fast-validate-asm", "--stress-validate-asm", "--suppress-asm-messages"]], "asm_wasm": [["--validate-asm", "--stress-validate-asm", "--suppress-asm-messages"]],
"wasm_traps": [["--wasm_guard_pages", "--wasm_trap_handler", "--invoke-weak-callbacks"]], "wasm_traps": [["--wasm_guard_pages", "--wasm_trap_handler", "--invoke-weak-callbacks"]],
} }
......
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