5#ifndef V8_OBJECTS_DEBUG_OBJECTS_H_
6#define V8_OBJECTS_DEBUG_OBJECTS_H_
14#include "torque-generated/bit-fields.h"
24class StructBodyDescriptor;
26#include "torque-generated/src/objects/debug-objects-tq.inc"
30class DebugInfo :
public TorqueGeneratedDebugInfo<DebugInfo, Struct> {
33 DEFINE_TORQUE_GENERATED_DEBUG_INFO_FLAGS()
127 DEFINE_TORQUE_GENERATED_DEBUGGER_HINTS()
181 :
public TorqueGeneratedCoverageInfo<CoverageInfo, HeapObject> {
183 void InitializeSlot(
int slot_index,
int start_pos,
int end_pos);
184 void ResetBlockCount(
int slot_index);
192 void CoverageInfoPrint(std::ostream& os,
193 std::unique_ptr<
char[]> function_name =
nullptr);
195 class BodyDescriptor;
198 using Slot = TorqueGeneratedCoverageInfoSlotOffsets;
204class BreakPoint :
public TorqueGeneratedBreakPoint<BreakPoint, Struct> {
212 :
public TorqueGeneratedStackFrameInfo<StackFrameInfo, Struct> {
231 DEFINE_TORQUE_GENERATED_STACK_FRAME_INFO_FLAGS()
262 inline bool HasFormattedStack()
const;
264 inline
bool HasCallSiteInfos() const;
277#include "src/objects/object-macros-undef.h"
int GetStatementPosition(Handle< DebugInfo > debug_info)
TorqueGeneratedCoverageInfoSlotOffsets Slot
static int SizeFor(int slot_count)
static const int kEstimatedNofBreakPointsInFunction
bool HasBreakPoint(Isolate *isolate, int source_position)
bool HasInstrumentedBytecodeArray()
bool HasCoverageInfo() const
V8_EXPORT_PRIVATE void ClearBreakInfo(Isolate *isolate)
static bool ClearBreakPoint(Isolate *isolate, DirectHandle< DebugInfo > debug_info, DirectHandle< BreakPoint > break_point)
static DirectHandle< Object > FindBreakPointInfo(Isolate *isolate, DirectHandle< DebugInfo > debug_info, DirectHandle< BreakPoint > break_point)
void SetDebugExecutionMode(ExecutionMode value)
DirectHandle< Object > GetBreakPoints(Isolate *isolate, int source_position)
bool BreakAtEntry() const
bool HasBreakInfo() const
void ClearCoverageInfo(Isolate *isolate)
Tagged< Object > GetBreakPointInfo(Isolate *isolate, int source_position)
NEVER_READ_ONLY_SPACE bool IsEmpty() const
SideEffectState GetSideEffectState(Isolate *isolate)
Tagged< BytecodeArray > OriginalBytecodeArray(Isolate *isolate)
bool CanBreakAtEntry() const
ExecutionMode DebugExecutionMode() const
static const int kNoDebuggingId
static void SetBreakPoint(Isolate *isolate, DirectHandle< DebugInfo > debug_info, int source_position, DirectHandle< BreakPoint > break_point)
Tagged< BytecodeArray > DebugBytecodeArray(Isolate *isolate)
int GetBreakPointCount(Isolate *isolate)
#define OBJECT_POINTER_ALIGN(value)
DebugInfo::DebugIsBlackboxedBit debugging_id
#define DECL_ACCESSORS(name,...)
#define DECL_GETTER(name,...)
#define DECL_TRUSTED_POINTER_ACCESSORS(name, type)
#define DECL_VERIFIER(Name)
#define DECL_BOOLEAN_ACCESSORS(name)
#define NEVER_READ_ONLY_SPACE
#define DECL_INT_ACCESSORS(name)
#define TQ_OBJECT_CONSTRUCTORS(Type)
#define V8_EXPORT_PRIVATE