Index: src/compiler.cc |
diff --git a/src/compiler.cc b/src/compiler.cc |
index 997103f18f83c40c314f4cc8fc0abdd7873c8662..0a55d27bd751960dc4a00b2c83b8b688a1289d70 100644 |
--- a/src/compiler.cc |
+++ b/src/compiler.cc |
@@ -31,6 +31,7 @@ |
#include "src/snapshot/code-serializer.h" |
#include "src/typing-asm.h" |
#include "src/vm-state-inl.h" |
+#include "src/wasm/wasm-js.h" |
namespace v8 { |
namespace internal { |
@@ -476,14 +477,11 @@ bool GenerateUnoptimizedCode(CompilationInfo* info) { |
bool success; |
EnsureFeedbackMetadata(info); |
if (FLAG_validate_asm && info->scope()->asm_module()) { |
- AsmTyper typer(info->isolate(), info->zone(), *(info->script()), |
- info->literal()); |
- if (FLAG_enable_simd_asmjs) { |
- typer.set_allow_simd(true); |
- } |
- if (!typer.Validate()) { |
- DCHECK(!info->isolate()->has_pending_exception()); |
- PrintF("Validation of asm.js module failed: %s", typer.error_message()); |
+ Handle<FixedArray> wasm_data; |
+ if (WasmJs::ConvertAsmToWasm(info->parse_info(), true, &wasm_data)) { |
+ info->shared_info()->set_asm_wasm_data(*wasm_data); |
+ info->SetCode(info->isolate()->builtins()->InstantiateAsmJs()); |
+ return true; |
} |
} |
if (FLAG_ignition && UseIgnition(info)) { |