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_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/assert-scope.h" | 10 #include "src/assert-scope.h" |
(...skipping 4856 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4867 #define NON_IC_KIND_LIST(V) \ | 4867 #define NON_IC_KIND_LIST(V) \ |
4868 V(FUNCTION) \ | 4868 V(FUNCTION) \ |
4869 V(OPTIMIZED_FUNCTION) \ | 4869 V(OPTIMIZED_FUNCTION) \ |
4870 V(BYTECODE_HANDLER) \ | 4870 V(BYTECODE_HANDLER) \ |
4871 V(STUB) \ | 4871 V(STUB) \ |
4872 V(HANDLER) \ | 4872 V(HANDLER) \ |
4873 V(BUILTIN) \ | 4873 V(BUILTIN) \ |
4874 V(REGEXP) \ | 4874 V(REGEXP) \ |
4875 V(WASM_FUNCTION) \ | 4875 V(WASM_FUNCTION) \ |
4876 V(WASM_TO_JS_FUNCTION) \ | 4876 V(WASM_TO_JS_FUNCTION) \ |
4877 V(JS_TO_WASM_FUNCTION) | 4877 V(JS_TO_WASM_FUNCTION) \ |
| 4878 V(WASM_TO_INTERPRETER) |
4878 | 4879 |
4879 #define IC_KIND_LIST(V) \ | 4880 #define IC_KIND_LIST(V) \ |
4880 V(LOAD_IC) \ | 4881 V(LOAD_IC) \ |
4881 V(LOAD_GLOBAL_IC) \ | 4882 V(LOAD_GLOBAL_IC) \ |
4882 V(KEYED_LOAD_IC) \ | 4883 V(KEYED_LOAD_IC) \ |
4883 V(CALL_IC) \ | 4884 V(CALL_IC) \ |
4884 V(STORE_IC) \ | 4885 V(STORE_IC) \ |
4885 V(KEYED_STORE_IC) \ | 4886 V(KEYED_STORE_IC) \ |
4886 V(BINARY_OP_IC) \ | 4887 V(BINARY_OP_IC) \ |
4887 V(COMPARE_IC) \ | 4888 V(COMPARE_IC) \ |
(...skipping 5722 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10610 kConstructorOffset + kPointerSize; | 10611 kConstructorOffset + kPointerSize; |
10611 static const int kSize = kInternalFieldCountOffset + kPointerSize; | 10612 static const int kSize = kInternalFieldCountOffset + kPointerSize; |
10612 }; | 10613 }; |
10613 | 10614 |
10614 | 10615 |
10615 // The DebugInfo class holds additional information for a function being | 10616 // The DebugInfo class holds additional information for a function being |
10616 // debugged. | 10617 // debugged. |
10617 class DebugInfo: public Struct { | 10618 class DebugInfo: public Struct { |
10618 public: | 10619 public: |
10619 // The shared function info for the source being debugged. | 10620 // The shared function info for the source being debugged. |
| 10621 // Some debug info does not have an shared function info, e.g. for wasm, so |
| 10622 // check has_shared() before calling shared(). |
10620 DECL_ACCESSORS(shared, SharedFunctionInfo) | 10623 DECL_ACCESSORS(shared, SharedFunctionInfo) |
10621 // Code object for the patched code. This code object is the code object | 10624 // Code object for the patched code. This code object is the code object |
10622 // currently active for the function. | 10625 // currently active for the function. |
10623 DECL_ACCESSORS(abstract_code, AbstractCode) | 10626 DECL_ACCESSORS(abstract_code, AbstractCode) |
10624 // Fixed array holding status information for each active break point. | 10627 // Fixed array holding status information for each active break point. |
10625 DECL_ACCESSORS(break_points, FixedArray) | 10628 DECL_ACCESSORS(break_points, FixedArray) |
10626 | 10629 |
| 10630 // Check whether a shared function info is available for this debug info. |
| 10631 inline bool has_shared() const; |
10627 // Check if there is a break point at a code offset. | 10632 // Check if there is a break point at a code offset. |
10628 bool HasBreakPoint(int code_offset); | 10633 bool HasBreakPoint(int code_offset); |
10629 // Get the break point info object for a code offset. | 10634 // Get the break point info object for a code offset. |
10630 Object* GetBreakPointInfo(int code_offset); | 10635 Object* GetBreakPointInfo(int code_offset); |
10631 // Clear a break point. | 10636 // Clear a break point. |
10632 static void ClearBreakPoint(Handle<DebugInfo> debug_info, int code_offset, | 10637 static void ClearBreakPoint(Handle<DebugInfo> debug_info, int code_offset, |
10633 Handle<Object> break_point_object); | 10638 Handle<Object> break_point_object); |
10634 // Set a break point. | 10639 // Set a break point. |
10635 static void SetBreakPoint(Handle<DebugInfo> debug_info, int code_offset, | 10640 static void SetBreakPoint(Handle<DebugInfo> debug_info, int code_offset, |
10636 int source_position, int statement_position, | 10641 int source_position, int statement_position, |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10834 } | 10839 } |
10835 return value; | 10840 return value; |
10836 } | 10841 } |
10837 }; | 10842 }; |
10838 | 10843 |
10839 | 10844 |
10840 } // NOLINT, false-positive due to second-order macros. | 10845 } // NOLINT, false-positive due to second-order macros. |
10841 } // NOLINT, false-positive due to second-order macros. | 10846 } // NOLINT, false-positive due to second-order macros. |
10842 | 10847 |
10843 #endif // V8_OBJECTS_H_ | 10848 #endif // V8_OBJECTS_H_ |
OLD | NEW |