OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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_OBJECTS_H_ | 5 #ifndef V8_WASM_OBJECTS_H_ |
6 #define V8_WASM_OBJECTS_H_ | 6 #define V8_WASM_OBJECTS_H_ |
7 | 7 |
| 8 #include "src/debug/interface-types.h" |
8 #include "src/objects-inl.h" | 9 #include "src/objects-inl.h" |
9 #include "src/trap-handler/trap-handler.h" | 10 #include "src/trap-handler/trap-handler.h" |
10 #include "src/wasm/managed.h" | 11 #include "src/wasm/managed.h" |
11 | 12 |
12 namespace v8 { | 13 namespace v8 { |
13 namespace internal { | 14 namespace internal { |
14 namespace wasm { | 15 namespace wasm { |
15 struct WasmModule; | 16 struct WasmModule; |
16 } | 17 } |
17 | 18 |
(...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
295 // Get the asm.js source position from a byte offset. | 296 // Get the asm.js source position from a byte offset. |
296 // Must only be called if the associated wasm object was created from asm.js. | 297 // Must only be called if the associated wasm object was created from asm.js. |
297 static int GetAsmJsSourcePosition(Handle<WasmCompiledModule> debug_info, | 298 static int GetAsmJsSourcePosition(Handle<WasmCompiledModule> debug_info, |
298 uint32_t func_index, uint32_t byte_offset); | 299 uint32_t func_index, uint32_t byte_offset); |
299 | 300 |
300 // Compute the disassembly of a wasm function. | 301 // Compute the disassembly of a wasm function. |
301 // Returns the disassembly string and a list of <byte_offset, line, column> | 302 // Returns the disassembly string and a list of <byte_offset, line, column> |
302 // entries, mapping wasm byte offsets to line and column in the disassembly. | 303 // entries, mapping wasm byte offsets to line and column in the disassembly. |
303 // The list is guaranteed to be ordered by the byte_offset. | 304 // The list is guaranteed to be ordered by the byte_offset. |
304 // Returns an empty string and empty vector if the function index is invalid. | 305 // Returns an empty string and empty vector if the function index is invalid. |
305 std::pair<std::string, std::vector<std::tuple<uint32_t, int, int>>> | 306 debug::WasmDisassembly DisassembleFunction(int func_index); |
306 DisassembleFunction(int func_index); | |
307 | 307 |
308 private: | 308 private: |
309 void InitId(); | 309 void InitId(); |
310 | 310 |
311 DISALLOW_IMPLICIT_CONSTRUCTORS(WasmCompiledModule); | 311 DISALLOW_IMPLICIT_CONSTRUCTORS(WasmCompiledModule); |
312 }; | 312 }; |
313 | 313 |
314 // TODO(clemensh): Extend this object for breakpoint support, or remove it. | 314 // TODO(clemensh): Extend this object for breakpoint support, or remove it. |
315 class WasmDebugInfo : public FixedArray { | 315 class WasmDebugInfo : public FixedArray { |
316 public: | 316 public: |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
379 }; | 379 }; |
380 }; | 380 }; |
381 | 381 |
382 #undef DECLARE_ACCESSORS | 382 #undef DECLARE_ACCESSORS |
383 #undef DECLARE_OPTIONAL_ACCESSORS | 383 #undef DECLARE_OPTIONAL_ACCESSORS |
384 | 384 |
385 } // namespace internal | 385 } // namespace internal |
386 } // namespace v8 | 386 } // namespace v8 |
387 | 387 |
388 #endif // V8_WASM_OBJECTS_H_ | 388 #endif // V8_WASM_OBJECTS_H_ |
OLD | NEW |