Go to the documentation of this file.
9 #ifndef liblldb_NativeProcessWindows_h_
10 #define liblldb_NativeProcessWindows_h_
21 class NativeProcessWindows;
22 class NativeThreadWindows;
36 llvm::Expected<std::unique_ptr<NativeProcessProtocol>>
40 llvm::Expected<std::unique_ptr<NativeProcessProtocol>>
63 size_t &bytes_read)
override;
66 size_t &bytes_written)
override;
84 bool hardware)
override;
88 llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>>
111 llvm::Expected<llvm::ArrayRef<uint8_t>>
189 #endif // #ifndef liblldb_NativeProcessWindows_h_
void OnCreateThread(const HostThread &thread) override
void OnLoadDll(const ModuleSpec &module_spec, lldb::addr_t module_addr) override
NativeProcessWindows(ProcessLaunchInfo &launch_info, NativeDelegate &delegate, llvm::Error &E)
std::map< lldb_private::FileSpec, lldb::addr_t > m_loaded_modules
void OnUnloadDll(lldb::addr_t module_addr) override
void OnDebugString(const std::string &string) override
bool IsAlive() const override
void OnDebuggerConnected(lldb::addr_t image_base) override
void OnDebuggerError(const Status &error, uint32_t type) override
StopReason
Thread stop reasons.
Status IgnoreSignals(llvm::ArrayRef< int > signals) override
llvm::Expected< std::unique_ptr< NativeProcessProtocol > > Launch(ProcessLaunchInfo &launch_info, NativeDelegate &native_delegate, MainLoop &mainloop) const override
Launch a process for debugging.
void OnExitProcess(uint32_t exit_code) override
Status Interrupt() override
Tells a process to interrupt all operations as if by a Ctrl-C.
static llvm::raw_ostream & error(Stream &strm)
void OnExitThread(lldb::tid_t thread_id, uint32_t exit_code) override
void StopThread(lldb::tid_t thread_id, lldb::StopReason reason, std::string description="")
llvm::Error DeallocateMemory(lldb::addr_t addr) override
Status GetLoadedModuleFileSpec(const char *module_path, FileSpec &file_spec) override
Status ReadMemory(lldb::addr_t addr, void *buf, size_t size, size_t &bytes_read) override
Status GetMemoryRegionInfo(lldb::addr_t load_addr, MemoryRegionInfo &range_info) override
void OnUnloadDll(lldb::addr_t module_addr) override
Status GetFileLoadAddress(const llvm::StringRef &file_name, lldb::addr_t &load_addr) override
llvm::Expected< llvm::ArrayRef< uint8_t > > GetSoftwareBreakpointTrapOpcode(size_t size_hint) override
virtual void OnDebuggerError(const Status &error, uint32_t type)
llvm::ErrorOr< std::unique_ptr< llvm::MemoryBuffer > > GetAuxvData() const override
bool FindSoftwareBreakpoint(lldb::addr_t addr)
void OnExitThread(lldb::tid_t thread_id, uint32_t exit_code) override
string(SUBSTRING ${p} 10 -1 pStripped) if($
llvm::Expected< std::unique_ptr< NativeProcessProtocol > > Attach(lldb::pid_t pid, NativeDelegate &native_delegate, MainLoop &mainloop) const override
Attach to an existing process.
Status SetBreakpoint(lldb::addr_t addr, uint32_t size, bool hardware) override
ExceptionResult OnDebugException(bool first_chance, const ExceptionRecord &record) override
const ArchSpec & GetArchitecture() const override
NativeDebugDelegate(NativeProcessWindows &process)
void SetArchitecture(const ArchSpec &arch_spec)
void OnExitProcess(uint32_t exit_code) override
void SetStopReasonForThread(NativeThreadWindows &thread, lldb::StopReason reason, std::string description="")
Status CacheLoadedModules()
Status Signal(int signo) override
Sends a process a UNIX signal signal.
void OnDebuggerConnected(lldb::addr_t image_base) override
void OnCreateThread(const HostThread &thread) override
size_t UpdateThreads() override
std::shared_ptr< NativeDebugDelegate > NativeDebugDelegateSP
virtual void OnDebugString(const std::string &string)
llvm::Expected< lldb::addr_t > AllocateMemory(size_t size, uint32_t permissions) override
A class that represents a running process on the host machine.
size_t GetSoftwareBreakpointPCOffset() override
Return the offset of the PC relative to the software breakpoint that was hit.
Status RemoveBreakpoint(lldb::addr_t addr, bool hardware=false) override
Status Resume(const ResumeActionList &resume_actions) override
ExceptionResult OnDebugException(bool first_chance, const ExceptionRecord &record) override
lldb::addr_t GetSharedLibraryInfoAddress() override
Status WriteMemory(lldb::addr_t addr, const void *buf, size_t size, size_t &bytes_written) override
NativeProcessWindows & m_process
NativeThreadWindows * GetThreadByID(lldb::tid_t thread_id)
void OnLoadDll(const lldb_private::ModuleSpec &module_spec, lldb::addr_t module_addr) override