Index: src/objects-inl.h |
diff --git a/src/objects-inl.h b/src/objects-inl.h |
index 4706d03398d76bbefae18cdf98d5cf51973a8017..bc21f8eef5821477a0a6eb601642ace7decfeab9 100644 |
--- a/src/objects-inl.h |
+++ b/src/objects-inl.h |
@@ -5811,13 +5811,35 @@ void Script::set_origin_options(ScriptOriginOptions origin_options) { |
ACCESSORS(DebugInfo, shared, SharedFunctionInfo, kSharedFunctionInfoIndex) |
-ACCESSORS(DebugInfo, abstract_code, AbstractCode, kAbstractCodeIndex) |
+ACCESSORS(DebugInfo, debug_bytecode_array, Object, kDebugBytecodeArrayIndex) |
ACCESSORS(DebugInfo, break_points, FixedArray, kBreakPointsStateIndex) |
-BytecodeArray* DebugInfo::original_bytecode_array() { |
+bool DebugInfo::HasDebugBytecodeArray() { |
+ return debug_bytecode_array()->IsBytecodeArray(); |
+} |
+ |
+bool DebugInfo::HasDebugCode() { |
+ Code* code = shared()->code(); |
+ bool has = code->kind() == Code::FUNCTION; |
+ DCHECK(!has || code->has_debug_break_slots()); |
+ return has; |
+} |
+ |
+BytecodeArray* DebugInfo::OriginalBytecodeArray() { |
+ DCHECK(HasDebugBytecodeArray()); |
return shared()->bytecode_array(); |
} |
+BytecodeArray* DebugInfo::DebugBytecodeArray() { |
+ DCHECK(HasDebugBytecodeArray()); |
+ return BytecodeArray::cast(debug_bytecode_array()); |
+} |
+ |
+Code* DebugInfo::DebugCode() { |
+ DCHECK(HasDebugCode()); |
+ return shared()->code(); |
+} |
+ |
SMI_ACCESSORS(BreakPointInfo, source_position, kSourcePositionIndex) |
ACCESSORS(BreakPointInfo, break_point_objects, Object, kBreakPointObjectsIndex) |