mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-24 18:48:01 +02:00
Initial checkin
This commit is contained in:
parent
c74712dad9
commit
078564ac9e
3242 changed files with 1616395 additions and 0 deletions
64
IDEHelper/MiniDumpDebugger.h
Normal file
64
IDEHelper/MiniDumpDebugger.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
#pragma once
|
||||
|
||||
#include "WinDebugger.h"
|
||||
#include "DbgMiniDump.h"
|
||||
|
||||
NS_BF_DBG_BEGIN
|
||||
|
||||
class MiniDumpMemoryRegion
|
||||
{
|
||||
public:
|
||||
addr_target mAddress;
|
||||
intptr_target mAddressLength;
|
||||
void* mData;
|
||||
MiniDumpMemoryRegion* mNext;
|
||||
};
|
||||
|
||||
class MiniDumpDebugger : public WinDebugger
|
||||
{
|
||||
public:
|
||||
DbgMiniDump* mMiniDump;
|
||||
Array<MappedFile*> mMappedFiles;
|
||||
DbgRadixMap<MiniDumpMemoryRegion*> mMemMap;
|
||||
BumpAllocator mAlloc;
|
||||
|
||||
WdThreadInfo* mExceptionThread;
|
||||
uintptr mExceptionContextRVA;
|
||||
|
||||
public:
|
||||
|
||||
MiniDumpDebugger(DebugManager* debugManager, DbgMiniDump* miniDump);
|
||||
~MiniDumpDebugger();
|
||||
|
||||
void MapMemory(addr_target addr, void* data, intptr_target size);
|
||||
MappedFile* MapModule(COFF* dbgModule, const StringImpl& fileName);
|
||||
|
||||
virtual bool PopulateRegisters(CPURegisters* registers) override;
|
||||
using WinDebugger::PopulateRegisters;
|
||||
|
||||
virtual bool ReadMemory(intptr address, uint64 length, void* dest, bool isLocal) override;
|
||||
virtual bool WriteMemory(intptr address, void* src, uint64 length) override;
|
||||
|
||||
virtual bool IsOnDemandDebugger() override { return true; }
|
||||
virtual bool IsMiniDumpDebugger() override { return true; }
|
||||
|
||||
virtual void ContinueDebugEvent() { }
|
||||
virtual Breakpoint* CreateBreakpoint(const StringImpl& fileName, int lineNum, int wantColumn, int instrOffset) { return NULL; }
|
||||
virtual Breakpoint* CreateMemoryBreakpoint(intptr addr, int byteCount, const StringImpl& addrType) { return NULL; }
|
||||
virtual Breakpoint* CreateSymbolBreakpoint(const StringImpl& symbolName) { return NULL; }
|
||||
virtual Breakpoint* CreateAddressBreakpoint(intptr address) { return NULL; }
|
||||
virtual void BreakAll() override {};
|
||||
virtual bool TryRunContinue() override { return false; }
|
||||
virtual void StepInto(bool inAssembly) override { }
|
||||
virtual void StepIntoSpecific(intptr addr) override { }
|
||||
virtual void StepOver(bool inAssembly) override { }
|
||||
virtual void StepOut(bool inAssembly) override { }
|
||||
virtual void SetNextStatement(bool inAssembly, const StringImpl& fileName, int64 lineNumOrAsmAddr, int wantColumn) { }
|
||||
|
||||
virtual Profiler* StartProfiling() { return NULL; }
|
||||
virtual Profiler* PopProfiler() { return NULL; }
|
||||
};
|
||||
|
||||
NS_BF_DBG_END
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue