| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_WASM_MODULE_H_ | 5 #ifndef V8_WASM_MODULE_H_ |
| 6 #define V8_WASM_MODULE_H_ | 6 #define V8_WASM_MODULE_H_ |
| 7 | 7 |
| 8 #include <memory> | 8 #include <memory> |
| 9 | 9 |
| 10 #include "src/api.h" | 10 #include "src/api.h" |
| (...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 521 WasmCompiledModule* GetCompiledModule(Object* wasm_instance); | 521 WasmCompiledModule* GetCompiledModule(Object* wasm_instance); |
| 522 | 522 |
| 523 // Check whether the wasm module was generated from asm.js code. | 523 // Check whether the wasm module was generated from asm.js code. |
| 524 bool WasmIsAsmJs(Object* instance, Isolate* isolate); | 524 bool WasmIsAsmJs(Object* instance, Isolate* isolate); |
| 525 | 525 |
| 526 // Get the script of the wasm module. If the origin of the module is asm.js, the | 526 // Get the script of the wasm module. If the origin of the module is asm.js, the |
| 527 // returned Script will be a JavaScript Script of Script::TYPE_NORMAL, otherwise | 527 // returned Script will be a JavaScript Script of Script::TYPE_NORMAL, otherwise |
| 528 // it's of type TYPE_WASM. | 528 // it's of type TYPE_WASM. |
| 529 Handle<Script> GetScript(Handle<JSObject> instance); | 529 Handle<Script> GetScript(Handle<JSObject> instance); |
| 530 | 530 |
| 531 // Compute the disassembly of a wasm function. |
| 532 // Returns the disassembly string, and a table mapping byte offsets to line and |
| 533 // column in the disassembly. |
| 534 std::pair<std::string, std::vector<std::tuple<uint32_t, int, int>>> |
| 535 DisassembleFunction(Handle<WasmCompiledModule> compiled_module, int func_index); |
| 536 |
| 531 // Get the asm.js source position for the given byte offset in the given | 537 // Get the asm.js source position for the given byte offset in the given |
| 532 // function. | 538 // function. |
| 533 int GetAsmWasmSourcePosition(Handle<JSObject> instance, int func_index, | 539 int GetAsmWasmSourcePosition(Handle<JSObject> instance, int func_index, |
| 534 int byte_offset); | 540 int byte_offset); |
| 535 | 541 |
| 536 // Constructs a single function table as a FixedArray of double size, | 542 // Constructs a single function table as a FixedArray of double size, |
| 537 // populating it with function signature indices and function indices. | 543 // populating it with function signature indices and function indices. |
| 538 Handle<FixedArray> BuildFunctionTable(Isolate* isolate, uint32_t index, | 544 Handle<FixedArray> BuildFunctionTable(Isolate* isolate, uint32_t index, |
| 539 const WasmModule* module); | 545 const WasmModule* module); |
| 540 | 546 |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 588 int instance_count); | 594 int instance_count); |
| 589 void ValidateModuleState(Isolate* isolate, Handle<JSObject> wasm_module); | 595 void ValidateModuleState(Isolate* isolate, Handle<JSObject> wasm_module); |
| 590 void ValidateOrphanedInstance(Isolate* isolate, Handle<JSObject> instance); | 596 void ValidateOrphanedInstance(Isolate* isolate, Handle<JSObject> instance); |
| 591 | 597 |
| 592 } // namespace testing | 598 } // namespace testing |
| 593 } // namespace wasm | 599 } // namespace wasm |
| 594 } // namespace internal | 600 } // namespace internal |
| 595 } // namespace v8 | 601 } // namespace v8 |
| 596 | 602 |
| 597 #endif // V8_WASM_MODULE_H_ | 603 #endif // V8_WASM_MODULE_H_ |
| OLD | NEW |