| Index: src/isolate.cc
|
| diff --git a/src/isolate.cc b/src/isolate.cc
|
| index 74d533c88ee452910212298c9ad0a3df4e9edc78..174913ffb8b8571153b1016c3d9a570212535877 100644
|
| --- a/src/isolate.cc
|
| +++ b/src/isolate.cc
|
| @@ -512,19 +512,15 @@ Handle<Object> Isolate::CaptureSimpleStackTrace(Handle<JSReceiver> error_object,
|
|
|
| case StackFrame::WASM: {
|
| WasmFrame* wasm_frame = WasmFrame::cast(frame);
|
| - Handle<Object> instance(wasm_frame->wasm_instance(), this);
|
| + Handle<WasmInstanceObject> instance(wasm_frame->wasm_instance(), this);
|
| const int wasm_function_index = wasm_frame->function_index();
|
| Code* code = wasm_frame->unchecked_code();
|
| Handle<AbstractCode> abstract_code(AbstractCode::cast(code), this);
|
| const int offset =
|
| static_cast<int>(wasm_frame->pc() - code->instruction_start());
|
|
|
| - // TODO(wasm): The wasm object returned by the WasmFrame should always
|
| - // be a wasm object.
|
| - DCHECK(wasm::IsWasmInstance(*instance) || instance->IsUndefined(this));
|
| -
|
| int flags = 0;
|
| - if (wasm::WasmIsAsmJs(*instance, this)) {
|
| + if (instance->get_compiled_module()->is_asm_js()) {
|
| flags |= FrameArray::kIsAsmJsWasmFrame;
|
| if (wasm_frame->at_to_number_conversion()) {
|
| flags |= FrameArray::kAsmJsAtNumberConversion;
|
| @@ -708,9 +704,10 @@ class CaptureStackTraceHelper {
|
| factory()->NewJSObject(isolate_->object_function());
|
|
|
| if (!function_key_.is_null()) {
|
| - Handle<String> name = wasm::GetWasmFunctionName(
|
| - isolate_, handle(frame->wasm_instance(), isolate_),
|
| - frame->function_index());
|
| + Handle<WasmCompiledModule> compiled_module(
|
| + frame->wasm_instance()->get_compiled_module(), isolate_);
|
| + Handle<String> name = WasmCompiledModule::GetFunctionName(
|
| + isolate_, compiled_module, frame->function_index());
|
| JSObject::AddProperty(stack_frame, function_key_, name, NONE);
|
| }
|
| // Encode the function index as line number (1-based).
|
|
|