diff options
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h index 0921bf17c4e4..fe04cdddd0f5 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h @@ -68,6 +68,8 @@ public: static const char *GetPluginDescriptionStatic(); + static std::chrono::seconds GetPacketTimeout(); + // Check if a given Process bool CanDebug(lldb::TargetSP target_sp, bool plugin_specified_by_name) override; @@ -163,22 +165,16 @@ public: Status GetWatchpointSupportInfo(uint32_t &num) override; - lldb::user_id_t StartTrace(const TraceOptions &options, - Status &error) override; - - Status StopTrace(lldb::user_id_t uid, lldb::tid_t thread_id) override; + llvm::Expected<TraceSupportedResponse> TraceSupported() override; - Status GetData(lldb::user_id_t uid, lldb::tid_t thread_id, - llvm::MutableArrayRef<uint8_t> &buffer, - size_t offset = 0) override; + llvm::Error TraceStop(const TraceStopRequest &request) override; - Status GetMetaData(lldb::user_id_t uid, lldb::tid_t thread_id, - llvm::MutableArrayRef<uint8_t> &buffer, - size_t offset = 0) override; + llvm::Error TraceStart(const llvm::json::Value &request) override; - llvm::Expected<TraceTypeInfo> GetSupportedTraceType() override; + llvm::Expected<std::string> TraceGetState(llvm::StringRef type) override; - Status GetTraceConfig(lldb::user_id_t uid, TraceOptions &options) override; + llvm::Expected<std::vector<uint8_t>> + TraceGetBinaryData(const TraceGetBinaryDataRequest &request) override; Status GetWatchpointSupportInfo(uint32_t &num, bool &after) override; @@ -239,6 +235,8 @@ protected: friend class GDBRemoteCommunicationClient; friend class GDBRemoteRegisterContext; + bool SupportsMemoryTagging() override; + /// Broadcaster event bits definitions. enum { eBroadcastBitAsyncContinue = (1 << 0), @@ -339,7 +337,7 @@ protected: size_t UpdateThreadPCsFromStopReplyThreadsValue(std::string &value); - size_t UpdateThreadIDsFromStopReplyThreadsValue(std::string &value); + size_t UpdateThreadIDsFromStopReplyThreadsValue(llvm::StringRef value); bool HandleNotifyPacket(StringExtractorGDBRemote &packet); @@ -410,6 +408,12 @@ protected: bool HasErased(FlashRange range); + llvm::Expected<std::vector<uint8_t>> + DoReadMemoryTags(lldb::addr_t addr, size_t len, int32_t type) override; + + Status DoWriteMemoryTags(lldb::addr_t addr, size_t len, int32_t type, + const std::vector<uint8_t> &tags) override; + private: // For ProcessGDBRemote only std::string m_partial_profile_data; |