| Index: src/compiler/wasm-compiler.cc
|
| diff --git a/src/compiler/wasm-compiler.cc b/src/compiler/wasm-compiler.cc
|
| index bd039d3f9504b9b22ad7ea5437540f5c36c8c921..13c6622c6bf5ce65164eaf5ef7eece0874176770 100644
|
| --- a/src/compiler/wasm-compiler.cc
|
| +++ b/src/compiler/wasm-compiler.cc
|
| @@ -341,10 +341,12 @@ class WasmTrapHelper : public ZoneObject {
|
| };
|
|
|
| WasmGraphBuilder::WasmGraphBuilder(
|
| - Zone* zone, JSGraph* jsgraph, wasm::FunctionSig* sig,
|
| + wasm::ModuleEnv* module_env, Zone* zone, JSGraph* jsgraph,
|
| + wasm::FunctionSig* sig,
|
| compiler::SourcePositionTable* source_position_table)
|
| : zone_(zone),
|
| jsgraph_(jsgraph),
|
| + module_(module_env),
|
| function_tables_(zone),
|
| function_table_sizes_(zone),
|
| cur_buffer_(def_buffer_),
|
| @@ -3342,10 +3344,9 @@ Handle<Code> CompileJSToWasmWrapper(Isolate* isolate,
|
| Node* effect = nullptr;
|
|
|
| wasm::ModuleEnv module_env(module, nullptr);
|
| - WasmGraphBuilder builder(&zone, &jsgraph, func->sig);
|
| + WasmGraphBuilder builder(&module_env, &zone, &jsgraph, func->sig);
|
| builder.set_control_ptr(&control);
|
| builder.set_effect_ptr(&effect);
|
| - builder.set_module(&module_env);
|
| builder.BuildJSToWasmWrapper(wasm_code, func->sig);
|
|
|
| //----------------------------------------------------------------------------
|
| @@ -3422,7 +3423,8 @@ Handle<Code> CompileWasmToJSWrapper(Isolate* isolate, Handle<JSReceiver> target,
|
| origin == wasm::kAsmJsOrigin ? new (&zone) SourcePositionTable(&graph)
|
| : nullptr;
|
|
|
| - WasmGraphBuilder builder(&zone, &jsgraph, sig, source_position_table);
|
| + WasmGraphBuilder builder(nullptr, &zone, &jsgraph, sig,
|
| + source_position_table);
|
| builder.set_control_ptr(&control);
|
| builder.set_effect_ptr(&effect);
|
| builder.BuildWasmToJSWrapper(target, sig);
|
| @@ -3500,10 +3502,10 @@ SourcePositionTable* WasmCompilationUnit::BuildGraphForWasmFunction(
|
| MachineOperatorBuilder* machine = jsgraph_->machine();
|
| SourcePositionTable* source_position_table =
|
| new (jsgraph_->zone()) SourcePositionTable(graph);
|
| - WasmGraphBuilder builder(jsgraph_->zone(), jsgraph_, function_->sig,
|
| - source_position_table);
|
| + WasmGraphBuilder builder(module_env_, jsgraph_->zone(), jsgraph_,
|
| + function_->sig, source_position_table);
|
| const byte* module_start = module_env_->module_bytes.start();
|
| - wasm::FunctionBody body = {module_env_, function_->sig, module_start,
|
| + wasm::FunctionBody body = {function_->sig, module_start,
|
| module_start + function_->code_start_offset,
|
| module_start + function_->code_end_offset};
|
| graph_construction_result_ =
|
| @@ -3531,7 +3533,8 @@ SourcePositionTable* WasmCompilationUnit::BuildGraphForWasmFunction(
|
|
|
| if (index >= FLAG_trace_wasm_ast_start && index < FLAG_trace_wasm_ast_end) {
|
| OFStream os(stdout);
|
| - PrintWasmCode(isolate_->allocator(), body, os, nullptr);
|
| + PrintWasmCode(isolate_->allocator(), body, module_env_->module, os,
|
| + nullptr);
|
| }
|
| if (index >= FLAG_trace_wasm_text_start && index < FLAG_trace_wasm_text_end) {
|
| OFStream os(stdout);
|
|
|